Kalkulator ilmiah: Pangkat, Akar, Log, dan Trigonometri
Kalkulator ilmiah online dengan pangkat, akar, log dan ln, sinus, cosinus, dan tangen dalam derajat atau radian, faktorial, persen, dan memori.
Scientific Calculator
Evaluates a typed or tapped expression with the usual order of operations, including powers, roots, logarithms, trigonometry and factorials.
Keypad
How this calculator reads an expression
History
No calculations yet. Press = to add one.
Dokumentasi
Kalkulator ilmiah
Kalkulator ilmiah menghitung nilai suatu ekspresi matematika tertulis. Kalkulator ini membaca perpangkatan, akar, logaritma, trigonometri, faktorial, dan persentase, menerapkan urutan operasi standar, lalu memberikan satu jawaban.
Fungsi kalkulator
Ekspresi diketik ke dalam kotak Expression atau dibuat dengan papan tombol. Kalkulator membacanya segera setelah ekspresi berubah, sehingga tombol sama dengan tidak diperlukan untuk melihat jawaban. Tombol = justru menambahkan perhitungan ke daftar riwayat.
Kalkulator ini menerima:
- digit, titik desimal, dan angka dalam bentuk eksponen seperti
1.5e-3; - operator
+,-,*,/, dan^(pangkat), serta tanda kurung; - konstanta
pidane; - fungsi
sin,cos,tan,asin,acos,atan,log,ln,sqrt, dancbrt; - tanda postfix
!(faktorial) dan%(persen).
Simbol pada papan tombol diterjemahkan ke padanan sederhananya, sehingga Ć, Ć·, ā, dan Ļ memiliki arti yang sama dengan *, /, -, dan pi.
log adalah logaritma berbasis 10, sedangkan ln adalah logaritma natural berbasis e. Inilah pelabelan yang digunakan pada kalkulator ilmiah TI dan Casio, serta penamaan dalam NIST Digital Library of Mathematical Functions, bagian 4,2.
Urutan operasi
Aturan yang menentukan arti suatu ekspresi disebut urutan operasi. Kalkulator ini menggunakan tata bahasa di bawah. Setiap baris memanggil baris di bawahnya, sehingga susunannya menjadi tabel prioritas: baris terakhir memiliki ikatan paling kuat dan dihitung lebih dahulu.
1expression := term (('+' | '-') term)*
2term := unary (('*' | '/' | juxtaposition) unary)*
3unary := ('-' | '+') unary | power
4power := postfix ('^' unary)?
5postfix := primary ('!' | '%')*
6primary := number | constant | name '(' expression ')' | '(' expression ')'
7Jika ditulis sebagai daftar, dari yang dihitung lebih dahulu hingga yang terakhir:
- apa pun yang berada di dalam tanda kurung, serta fungsi yang diterapkan pada tanda kurung;
!dan%;^;- tanda
-atau+di awal; *,/, dan dua hal yang ditulis berdampingan;+dan-.
Konvensi yang dihasilkan sesuai dengan ISO 80000-2:2019 dan artikel Wikipedia āOrder of operationsā:
| Bentuk tertulis | Dibaca sebagai | Nilai |
|---|---|---|
2^3^2 | 2^(3^2) | 512 |
-2^2 | -(2^2) | -4 |
2^-2 | 2^(-2) | 0,25 |
2^3! | 2^(3!) | 64 |
100+10% | 100 + (10/100) | 100,1 |
1/2pi | (1/2) * pi | 1,57079632679 |
6/2(1+2) | (6/2) * (1+2) | 9 |
Dua angka atau nama yang ditulis berdampingan dikalikan, sehingga 2pi, 2(3+4), dan 3sin(30) dapat digunakan. Perkalian tersembunyi ini memiliki tingkat yang sama dengan * dan /, sehingga perkalian berdampingan dan pembagian dibaca dari kiri ke kanan. Banyak kalkulator ilmiah genggam mengikat penjajaran lebih kuat daripada pembagian dan membaca 1/2pi sebagai 1/(2*pi), yang menghasilkan jawaban berbeda. Wikipedia menjelaskan perbedaan ini dalam āCalculator input methodsā. Tanda kurung menyelesaikan kasus apa pun yang perbedaannya penting.
% membagi dengan 100 di mana pun tanda itu berada. Jadi, 20% adalah 0,2 dan 200*15% adalah 30. Tanda ini bukan tombol āpersen dari total berjalanā pada mesin kasir, dan bukan operator sisa pembagian.
Contoh perhitungan
Ekspresi sin(30)+2^3*ln(4), dalam mode Degrees, dihitung dengan urutan berikut:
sin(30)adalah 0,5, karena 30 derajat adalah setengah sudut siku-siku dan sinusnya adalah setengah.2^3adalah 8. Perpangkatan dilakukan sebelum perkalian.ln(4)adalah 1,38629436112.8 * 1.38629436112adalah 11,090354889.0.5 + 11.090354889adalah 11,590354889.
Kalkulator menampilkan 11,590354889.
Contoh kedua menunjukkan aturan kiri ke kanan. Dalam 6/2(1+2), isi tanda kurung dihitung lebih dahulu, menghasilkan 6/2*3. Pembagian dan perkalian tersembunyi memiliki tingkat yang sama, sehingga pembagian dilakukan lebih dahulu: 6/2 adalah 3, dan 3*3 adalah 9.
Derajat dan radian
Pengaturan satuan sudut menentukan cara sin, cos, dan tan membaca masukan, serta satuan yang dikembalikan oleh asin, acos, dan atan. Dalam mode Degrees, satu putaran penuh adalah 360. Dalam mode Radians, satu putaran penuh adalah 2pi, kira-kira 6,28318530718. Ekspresi yang sama dapat menghasilkan jawaban yang sangat berbeda dalam kedua mode: sin(30) adalah 0,5 dalam mode Degrees dan -0,988031624093 dalam mode Radians.
Cara angka disimpan dan ditampilkan
Setiap nilai adalah bilangan double binary64 IEEE 754, yaitu jenis angka yang dijelaskan dalam ECMA-262, ECMAScript Language Specification, bagian 6,1.6,1. Sebuah double menyimpan sekitar 15 hingga 17 digit desimal. Jawaban dibulatkan sekali, hanya untuk layar, menjadi 12 digit signifikan. Nilai di bawah 0,000001 atau sama dengan atau di atas 1.000.000.000.000 ditampilkan dalam bentuk eksponen, sehingga 0.0000001 terbaca sebagai 1E-7.
Angka yang disimpan mempertahankan presisi penuh. Memori menyimpan hasil tepat, bukan 12 digit yang terlihat di layar, dan MR menempelkan kembali teks terpendek yang dibaca sebagai angka yang sama. Nilai memori negatif ditempelkan dalam tanda kurung, sehingga saat dipanggil setelah 2, nilainya dibaca sebagai perkalian, bukan pengurangan.
Pembulatan tidak pernah digunakan untuk menentukan apa pun. Sisa yang sangat kecil dari aritmetika sebelumnya adalah bilangan nyata dan diperlakukan demikian. 0.1*3-0.3 bukan nol dalam biner; nilainya sekitar 5,55111512313E-17, sehingga 5/(0.1*3-0.3) menghasilkan 9,00719925474E16, bukan pesan pembagian dengan nol.
Karena alasan yang sama, sin(180) dalam mode Degrees menampilkan 1,22464679915E-16, bukan 0. Kesalahannya sekitar satu bagian dalam sepuluh ribu juta juta, dan tetap sekecil itu. Tangen merupakan pengecualian dan ditangani di bawah.
Hal yang ditolak kalkulator
Kalkulator menampilkan pesan, bukan jawaban, ketika:
- penyebut tepat nol, termasuk angka tertulis yang terlalu kecil untuk sebuah double, seperti
1e-400, yang sudah menjadi nol saat dibaca; sqrtdiberi angka negatif;logataulndiberi angka yang tidak lebih besar dari nol;asinatauacosdiberi angka di luar rentang -1 hingga 1, yaitu domain yang diberikan dalam NIST DLMF bagian 4,14;tandigunakan pada 90 derajat, atau kelipatan ganjilnya, karena pada titik itu nilainya tidak ada;- faktorial diminta untuk sesuatu selain bilangan bulat dari 0 hingga 170;
- sebuah angka memuat titik desimal kedua, seperti pada
1.2.3; - ekspresinya lebih panjang daripada 512 karakter.
Batas 170 merupakan sifat jenis angka, bukan pilihan: faktorial 170 kira-kira 7,25741561531E306, yang masih dapat ditampung oleh sebuah double, sedangkan faktorial 171 tidak. Batas 512 karakter diperiksa dalam kode karena panjang ekspresi menentukan banyaknya pekerjaan yang dilakukan kalkulator.
Pemeriksaan tangen membulatkan sudut hingga 9 tempat desimal sebelum mengujinya. Hal ini mengembalikan penyimpangan dari perhitungan sebelumnya ke asimtot eksak, dengan konsekuensi adanya jendela penolakan selebar sekitar 5e-10 derajat di setiap sisi. tan(89.9999999994) menghasilkan 95.493.592.025, sedangkan tan(89.9999999995) ditolak. Mode Radians tidak melakukan pemeriksaan semacam itu karena nilai radian yang diketik dekat setengah pi hanyalah angka biasa tanpa status khusus.
Pertanyaan yang sering diajukan
Apa fungsi tombol % di sini?
Tombol itu membagi dengan 100 di mana pun muncul. 100+10% adalah 100,1 karena berarti 100 ditambah 0,1. Tombol ini tidak menghitung persentase dari apa pun yang mendahuluinya.
Apakah 2^3^2 bernilai 64 atau 512?
512. Pangkat dikelompokkan dari kanan, sehingga ekspresi itu berarti 2^(3^2), yang sama dengan 2^9. Hal ini mengikuti ISO 80000-2:2019.
Mengapa 6/2(1+2) bernilai 9, bukan 1?
Perkalian tersembunyi memiliki tingkat yang sama dengan pembagian, dan operasi dengan tingkat yang sama dibaca dari kiri ke kanan. Kalkulator yang memprioritaskan perkalian berdampingan menghasilkan 1. Tanda kurung menghilangkan keraguan.
Mengapa sin(180) tidak menampilkan 0?
Karena 180 derajat dikonversi menjadi radian terlebih dahulu, dan pi tidak dapat ditulis secara tepat dalam biner. Hasilnya sekitar 1.2e-16, yaitu nilai sebenarnya dari sinus angka yang digunakan mesin.
Apa perbedaan antara log dan ln?
log berbasis 10, sehingga log(1000) adalah 3. ln berbasis e, sehingga ln(e) adalah 1. Label pada papan tombol mengikuti konvensi yang sama dengan kalkulator ilmiah TI dan Casio.
Mengapa faktorial di atas 170 ditolak? Faktorial 171 lebih besar daripada angka apa pun yang dapat ditampung oleh sebuah double, sehingga jawabannya akan berupa tak terhingga, bukan angka. Kalkulator menyatakan hal itu alih-alih menampilkan hasil yang tidak bermakna.
Sumber
- IEEE 754-2019, Standar IEEE untuk Aritmetika Titik Mengambang.
- ECMA-262, ECMAScript Language Specification, bagian 6.1.6.1, āThe Number Typeā.
- ISO 80000-2:2019, Quantities and units, Bagian 2: Mathematical signs and symbols.
- NIST Digital Library of Mathematical Functions, bagian 4,2 dan 4,14.
- Wikipedia, āOrder of operationsā.
- Wikipedia, āCalculator input methodsā.