Pengantar:
The sinus dari x
diberikan oleh rumus:
sin(x) = x - x^3/3! + x^5/5! - x^7/7! + x^9/9! - x^11/11! // and more follows...
The cosinus dari x
diberikan oleh rumus:
cos(x) = 1 - x^2/2! + x^4/4! - x^6/6! + x^8/8! - x^10/10! // and more follows...
Tugas:
Diberi nilai x
dan n
, tulis sebuah program (tidak ada fungsi, dll.) Untuk menampilkan nilai sin(x)
dan cos(x)
memperbaiki n
ketentuan rumus di atas. Anggap itu x
dalam radian.
Memasukkan:
x n
Angka desimal x
(dengan hingga 3 tempat desimal) dan bilangan bulat n
. Masukan harus di stdin atau kotak dialog prompt (jika bahasa Anda tidak mendukung stdin)
Keluaran:
[sin(x)]
[cos(x)]
Nilai keduanya sin(x)
dan cos(x)
harus dibulatkan ke 6 tempat desimal. Jika sin(x)
ini 0.5588558855
(10 digit desimal), itu harus dibulatkan ke 0.558856
(6 digit desimal). Pembulatan harus dilakukan ke yang terdekat, seperti yang dijelaskan dalam kolom kelima, "Bulatkan ke yang terdekat", dari tabel di artikel Wiki ini .
Kendala:
1 <= x <= 20
1 <= n <= 20
Sampel:
----
5 3
10.208333
14.541667
----
8.555 13
0.765431
-0.641092
----
9.26 10
-3.154677
-8.404354
----
6.54 12
0.253986
0.967147
----
5 1
5.000000
1.000000
----
20 20
-5364.411846
-10898.499385
----
Catatan:
- Celah standar dilarang.
- Fungsi matematika bawaan dan operator trigonometri (sin, cos, tan, dll.), Faktorial, dan eksponensial tidak dapat digunakan. Anda bebas menggunakan fungsi pembulatan bawaan untuk memperkirakan hasil komputasi
sin(x)
dancos(x)
ke angka desimal ke-6. - Tidak perlu menangani input yang salah.
- Hanya karakter ASCII yang dapat digunakan dalam program, bukan karakter Unicode Cina yang memungkinkan kompresi kode.
- Program Anda harus menghentikan, dan menampilkan output, dalam 3 detik input.
- Jawaban Anda harus menyertai kode yang tidak disatukan, bersama dengan penjelasan kode (wajib jika kode tidak segera jelas bagi programmer-tidak-akrab-dengan-bahasa Anda, terutama GolfScript, J, dll).
- Harap sertakan tautan ke kompiler online tempat program Anda dapat diuji.
Mencetak:
Jawaban dengan panjang kode terendah dalam karakter, termasuk spasi, tab, dll. Menang! Pemenang akan diumumkan pada 21 Mei 2014.
EDIT : 21/05/14 Pemenang adalah aditsu menggunakan bahasa CJam . Runner up mengikuti jpjacobs dengan bahasa J , dan runner up kedua primo dengan bahasa Perl . Selamat semua!
mod 2pi
untuk membuat input bertemu lebih cepat akan lebih bermanfaat - ini adalah salah satu dari banyak perbaikan yang digunakan dunia nyata ketika berhadapan dengan fungsi-fungsi ini. (Sebenarnya mod pi dan tanda kesadaran).