Kalkulator Saintifik: Kuasa, Punca, Log dan Trig
Kalkulator saintifik dalam talian dengan kuasa, punca, log dan ln, sinus, kosinus dan tangen dalam darjah atau radian, faktorial, peratus 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 Saintifik
Kalkulator saintifik mengira nilai ungkapan matematik yang ditulis. Kalkulator ini membaca kuasa, punca, logaritma, trigonometri, faktorial dan peratus, menggunakan tertib operasi piawai, lalu memaparkan satu jawapan.
Fungsi kalkulator
Ungkapan ditaip dalam kotak Ungkapan atau dibina menggunakan pad kekunci. Kalkulator membacanya sebaik sahaja ungkapan berubah, jadi kekunci sama dengan tidak diperlukan untuk melihat jawapan. Kekunci = sebaliknya menambahkan pengiraan itu pada senarai sejarah.
Ia menerima:
- digit, titik perpuluhan dan nombor dalam bentuk eksponen seperti
1.5e-3; - operator
+,-,*,/dan^(kuasa), serta kurungan; - pemalar
pidane; - fungsi
sin,cos,tan,asin,acos,atan,log,ln,sqrtdancbrt; - tanda pascafiks
!(faktorial) dan%(peratus).
Glif pad kekunci diterjemahkan kepada padanan teks biasa, jadi ×, ÷, − dan π bermaksud perkara yang sama seperti *, /, - dan pi.
log ialah logaritma asas 10 dan ln ialah logaritma asli, berasaskan e. Itulah pelabelan yang digunakan pada kalkulator saintifik TI dan Casio, serta penamaan dalam NIST Digital Library of Mathematical Functions, seksyen 4.2.
Tertib operasi
Peraturan yang menentukan maksud sesuatu ungkapan ialah tertib operasi. Kalkulator ini menggunakan tatabahasa di bawah. Setiap baris memanggil baris di bawahnya, jadi struktur bersarangnya ialah jadual keutamaan: baris terakhir mempunyai ikatan paling kuat dan dikira terlebih dahulu.
1expression := term (('+' | '-') term)*
2term := unary (('*' | '/' | juxtaposition) unary)*
3unary := ('-' | '+') unary | power
4power := postfix ('^' unary)?
5postfix := primary ('!' | '%')*
6primary := number | constant | name '(' expression ')' | '(' expression ')'
7Ditulis sebagai senarai, daripada yang dikira dahulu hingga yang terakhir:
- apa-apa yang berada dalam kurungan, serta fungsi yang digunakan pada kurungan;
!dan%;^;- tanda
-atau+di hadapan; *,/dan dua perkara yang ditulis bersebelahan;+dan-.
Konvensyen yang terhasil sepadan dengan ISO 80000-2:2019 dan rencana "Order of operations" di Wikipedia:
| Ditulis | 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 nombor atau nama yang ditulis bersebelahan didarabkan, yang membolehkan 2pi, 2(3+4) dan 3sin(30) berfungsi. Pendaraban tersirat itu mempunyai keutamaan yang sama dengan * dan /, jadi ungkapan berdampingan dan pembahagian dibaca dari kiri ke kanan. Banyak kalkulator saintifik mudah alih memberikan keutamaan lebih tinggi kepada penjajaran berbanding pembahagian dan membaca 1/2pi sebagai 1/(2*pi), yang menghasilkan jawapan berbeza. Wikipedia menerangkan perbezaan ini dalam "Calculator input methods". Kurungan menyelesaikan sebarang keadaan yang melibatkan perbezaan tersebut.
% membahagi dengan 100 di mana-mana sahaja ia berada. Jadi 20% ialah 0.2 dan 200*15% ialah 30. Ia bukan kekunci "peratus daripada jumlah semasa" pada mesin daftar tunai kedai dan bukan juga operator baki.
Contoh yang diselesaikan
Ungkapan sin(30)+2^3*ln(4) dalam mod Darjah dikira mengikut turutan ini:
sin(30)ialah 0.5 kerana 30 darjah ialah separuh sudut tegak dan sinusnya ialah satu perdua.2^3ialah 8. Kuasa dikira sebelum pendaraban.ln(4)ialah 1.38629436112.8 * 1.38629436112ialah 11.090354889.0.5 + 11.090354889ialah 11.590354889.
Kalkulator memaparkan 11.590354889.
Contoh kedua menunjukkan peraturan kiri ke kanan. Dalam 6/2(1+2), ungkapan dalam kurungan dikira dahulu, lalu menghasilkan 6/2*3. Pembahagian dan pendaraban tersirat mempunyai keutamaan yang sama, jadi pembahagian dilakukan dahulu: 6/2 ialah 3, dan 3*3 ialah 9.
Darjah dan radian
Tetapan unit Sudut menentukan cara sin, cos dan tan membaca inputnya, serta unit yang dipulangkan oleh asin, acos dan atan. Dalam mod Darjah, satu putaran penuh ialah 360. Dalam mod Radian, satu putaran penuh ialah 2pi, kira-kira 6.28318530718. Ungkapan yang sama boleh menghasilkan jawapan yang sangat berbeza dalam kedua-dua mod: sin(30) ialah 0.5 dalam mod Darjah dan -0.988031624093 dalam mod Radian.
Cara nombor disimpan dan dipaparkan
Setiap nilai ialah nombor titik apungan berganda IEEE 754 binary64, iaitu jenis nombor yang diterangkan dalam ECMA-262, ECMAScript Language Specification, seksyen 6.1.6.1. Jenis nombor ini mempunyai kira-kira 15 hingga 17 digit perpuluhan. Jawapan dibundarkan sekali, untuk skrin sahaja, kepada 12 digit bererti. Nilai di bawah 0.000001 atau pada atau melebihi 1,000,000,000,000 dipaparkan dalam bentuk eksponen, jadi 0.0000001 dibaca sebagai 1E-7.
Nombor yang disimpan mengekalkan ketepatan penuh. Memori menyimpan hasil tepat, bukan 12 digit pada skrin, dan MR menampal teks terpendek yang dibaca sebagai nombor yang sama. Nilai memori negatif ditampal dalam kurungan, jadi apabila dipanggil semula selepas 2, ia dibaca sebagai pendaraban, bukan penolakan.
Pembundaran tidak pernah digunakan untuk membuat keputusan. Baki kecil daripada pengiraan terdahulu ialah nombor sebenar dan dilayan sedemikian. 0.1*3-0.3 bukan sifar dalam binari; nilainya kira-kira 5.55111512313E-17, jadi 5/(0.1*3-0.3) menghasilkan 9.00719925474E16, bukannya mesej bahagi dengan sifar.
Atas sebab yang sama, sin(180) dalam mod Darjah memaparkan 1.22464679915E-16 dan bukannya 0. Ralat itu kira-kira satu bahagian dalam sepuluh ribu juta juta, dan kekal sekecil itu. Tangen ialah pengecualian, dan ia dikendalikan di bawah.
Perkara yang ditolak oleh kalkulator
Kalkulator memaparkan mesej dan bukannya jawapan apabila:
- penyebut betul-betul sifar, termasuk nombor bertulis yang terlalu kecil untuk nombor berganda, seperti
1e-400, yang sudah menjadi sifar apabila dibaca; sqrtdiberikan nombor negatif;logataulndiberikan nombor yang tidak lebih besar daripada sifar;asinatauacosdiberikan nombor di luar julat -1 hingga 1, iaitu domain yang diberikan dalam seksyen 4.14 NIST DLMF;tandigunakan pada 90 darjah, atau sebarang gandaan ganjilnya, yang tidak mempunyai nilai;- faktorial diminta untuk sesuatu selain nombor bulat daripada 0 hingga 170;
- nombor mengandungi titik perpuluhan kedua, seperti
1.2.3; - ungkapan lebih panjang daripada 512 aksara.
Had 170 ialah sifat jenis nombor, bukan pilihan: faktorial 170 kira-kira 7.25741561531E306, yang masih muat dalam nombor berganda, manakala faktorial 171 tidak muat. Had 512 aksara diperiksa dalam kod kerana panjang ungkapan menentukan jumlah kerja yang perlu dilakukan oleh kalkulator.
Pemeriksaan tangen membundarkan sudut kepada 9 tempat perpuluhan sebelum mengujinya. Ini mengembalikan hanyutan daripada pengiraan terdahulu kepada asimptot tepat, dengan kos julat penolakan kira-kira 5e-10 darjah pada setiap sisi. tan(89.9999999994) menghasilkan 95,493,592,025, manakala tan(89.9999999995) ditolak. Mod Radian tidak melakukan pemeriksaan sedemikian kerana nilai radian yang ditaip berhampiran separuh pi hanyalah nombor lain tanpa status istimewa.
Soalan lazim
Apakah fungsi kekunci % di sini?
Ia membahagi dengan 100 di mana-mana sahaja ia muncul. 100+10% ialah 100.1 kerana maksudnya ialah 100 tambah 0.1. Ia tidak mengira peratus daripada apa-apa yang mendahuluinya.
Adakah 2^3^2 sama dengan 64 atau 512?
512. Kuasa dikumpulkan dari kanan, jadi maksudnya ialah 2^(3^2), iaitu 2^9. Ini mengikut ISO 80000-2:2019.
Mengapakah 6/2(1+2) ialah 9 dan bukannya 1?
Pendaraban tersirat mempunyai keutamaan yang sama dengan pembahagian, dan keutamaan yang sama dibaca dari kiri ke kanan. Kalkulator yang memberikan keutamaan lebih tinggi kepada penjajaran menghasilkan 1. Kurungan menghapuskan keraguan.
Mengapakah sin(180) tidak memaparkan 0?
Kerana 180 darjah ditukar kepada radian terlebih dahulu, dan pi tidak boleh ditulis dengan tepat dalam binari. Jawapannya kira-kira 1.2e-16, iaitu nilai sebenar sinus bagi nombor yang sebenarnya digunakan oleh mesin.
Apakah perbezaan antara log dengan ln?
log berasaskan 10, jadi log(1000) ialah 3. ln berasaskan e, jadi ln(e) ialah 1. Label pad kekunci mengikut konvensyen yang sama seperti kalkulator saintifik TI dan Casio.
Mengapakah faktorial melebihi 170 ditolak? Faktorial 171 lebih besar daripada mana-mana nombor yang boleh disimpan oleh nombor berganda, jadi jawapannya akan menjadi infiniti, bukan suatu nombor. Kalkulator menyatakan perkara itu dan bukannya memaparkan hasil yang tidak bermakna.
Sumber
- IEEE 754-2019, Piawaian IEEE bagi Aritmetik Titik Apungan.
- ECMA-262, ECMAScript Language Specification, seksyen 6.1.6.1, "The Number Type".
- ISO 80000-2:2019, Quantities and units, Bahagian 2: Mathematical signs and symbols.
- NIST Digital Library of Mathematical Functions, seksyen 4.2 dan 4.14.
- Wikipedia, "Order of operations".
- Wikipedia, "Kaedah input kalkulator".