Chuyển đến nội dung

Máy tính khoa học: Lũy thừa, căn, logarit và lượng giác

Máy tính khoa học trực tuyến hỗ trợ lũy thừa, căn, logarit và ln, sin, cos, tan theo độ hoặc radian, cùng giai thừa, phần trăm và bộ nhớ.

Scientific Calculator

Evaluates a typed or tapped expression with the usual order of operations, including powers, roots, logarithms, trigonometry and factorials.

Use + - * / for arithmetic, ^ for powers, ! for factorial and % for percent.

Type an expression or use the keypad to see a result.

Keypad

How this calculator reads an expression

Percent divides by 100 wherever it appears, so 100+10% is 100.1, not 110. Powers group from the right: 2^3^2 is 2^9, which is 512. A minus sign in front of a power is applied last, so -2^2 is -4. Two things written side by side are multiplied, and that multiplication ranks with division, so both are read left to right: 1/2pi means (1/2) times pi, and 6/2(1+2) is 9. Some scientific calculators read 1/2pi the other way, as 1/(2 times pi), so use brackets when the meaning matters. In Degrees mode the tangent is refused at 90 degrees and every odd multiple of it, because it has no value there.

History

No calculations yet. Press = to add one.

Máy tính tải...
📚

Tài liệu hướng dẫn

Máy tính khoa học

Máy tính khoa học tính giá trị của một biểu thức toán học được viết ra. Máy tính này đọc lũy thừa, căn, logarit, lượng giác, giai thừa và phần trăm, áp dụng thứ tự thực hiện phép tính tiêu chuẩn và đưa ra một đáp án.

Chức năng của máy tính

Một biểu thức được nhập vào ô Biểu thức hoặc tạo bằng bàn phím. Máy tính đọc biểu thức ngay khi biểu thức thay đổi, vì vậy không cần phím dấu bằng để xem đáp án. Phím = thay vào đó sẽ thêm phép tính vào danh sách lịch sử.

Máy tính chấp nhận:

  • các chữ số, dấu thập phân và các số ở dạng số mũ, chẳng hạn như 1.5e-3;
  • các toán tử +, -, *, /^ (lũy thừa), cùng với dấu ngoặc;
  • các hằng số pie;
  • các hàm sin, cos, tan, asin, acos, atan, log, ln, sqrtcbrt;
  • các dấu hậu tố ! (giai thừa) và % (phần trăm).

Các ký hiệu trên bàn phím được chuyển thành dạng tương đương thông thường, nên ×, ÷, π có nghĩa giống như *, /, -pi.

log là logarit cơ số 10 và ln là logarit tự nhiên, cơ số e. Đó là cách ghi nhãn được dùng trên các máy tính khoa học TI và Casio, cũng như cách đặt tên trong Thư viện số NIST về các hàm toán học, mục 4,2.

Thứ tự thực hiện phép tính

Quy tắc quyết định ý nghĩa của một biểu thức là thứ tự thực hiện phép tính. Máy tính này sử dụng ngữ pháp dưới đây. Mỗi dòng gọi dòng bên dưới nó, vì vậy cách lồng nhau tạo thành bảng thứ tự ưu tiên: dòng cuối cùng liên kết chặt nhất và được tính trước.

1expression := term (('+' | '-') term)*
2term       := unary (('*' | '/' | juxtaposition) unary)*
3unary      := ('-' | '+') unary | power
4power      := postfix ('^' unary)?
5postfix    := primary ('!' | '%')*
6primary    := number | constant | name '(' expression ')' | '(' expression ')'
7

Viết thành danh sách, theo thứ tự từ được tính trước đến được tính sau:

  1. mọi thứ bên trong dấu ngoặc và một hàm áp dụng cho dấu ngoặc;
  2. !%;
  3. ^;
  4. dấu - hoặc + ở đầu;
  5. *, / và hai thành phần được viết liền nhau;
  6. +-.

Các quy ước tạo ra thứ tự này phù hợp với ISO 80000-2:2019 và bài viết “Thứ tự thực hiện phép tính” trên Wikipedia:

Được viếtĐược hiểu làGiá trị
2^3^22^(3^2)512
-2^2-(2^2)-4
2^-22^(-2)0,25
2^3!2^(3!)64
100+10%100 + (10/100)100,1
1/2pi(1/2) * pi1,57079632679
6/2(1+2)(6/2) * (1+2)9

Hai số hoặc tên được viết liền nhau được nhân với nhau; đó là điều khiến 2pi, 2(3+4)3sin(30) hoạt động. Phép nhân ẩn này có cùng thứ tự ưu tiên với */, nên phép ghép liền và phép chia được đọc từ trái sang phải. Nhiều máy tính khoa học cầm tay xếp phép ghép liền có thứ tự ưu tiên cao hơn phép chia và đọc 1/2pi1/(2*pi), cho một đáp án khác. Wikipedia mô tả sự khác biệt này trong bài “Các phương thức nhập của máy tính”. Dấu ngoặc giải quyết mọi trường hợp mà sự khác biệt đó có ý nghĩa.

% chia cho 100 tại bất kỳ vị trí nào nó xuất hiện. Vì vậy 20% là 0,2 và 200*15% là 30. Đây không phải là phím “tính phần trăm của tổng đang chạy” trên máy tính tiền cửa hàng, cũng không phải toán tử lấy phần dư.

Ví dụ minh họa

Biểu thức sin(30)+2^3*ln(4) ở chế độ Độ được tính theo thứ tự sau:

  1. sin(30) là 0,5, vì 30 độ bằng nửa góc vuông và sin của nó bằng một phần hai.
  2. 2^3 là 8. Lũy thừa được tính trước phép nhân.
  3. ln(4) là 1,38629436112.
  4. 8 * 1.38629436112 là 11,090354889.
  5. 0.5 + 11.090354889 là 11,590354889.

Máy tính hiển thị 11,590354889.

Ví dụ thứ hai cho thấy quy tắc từ trái sang phải. Trong 6/2(1+2), dấu ngoặc được tính trước, cho 6/2*3. Phép chia và phép nhân ẩn có cùng thứ tự ưu tiên, nên phép chia được thực hiện trước: 6/2 là 3 và 3*3 là 9.

Độ và radian

Cài đặt đơn vị Góc quyết định cách sin, costan đọc giá trị đầu vào, cũng như đơn vị mà asin, acosatan trả về. Ở chế độ Độ, một vòng quay đầy đủ là 360. Ở chế độ Radian, một vòng quay đầy đủ là 2pi, xấp xỉ 6,28318530718. Cùng một biểu thức có thể cho các đáp án rất khác nhau ở hai chế độ: sin(30) là 0,5 ở chế độ Độ và -0,988031624093 ở chế độ Radian.

Cách lưu trữ và hiển thị số

Mọi giá trị đều là số thực double binary64 IEEE 754, kiểu số được mô tả trong ECMA-262, Đặc tả ngôn ngữ ECMAScript, mục 6.1.6.1. Một số double chứa khoảng từ 15 đến 17 chữ số thập phân. Đáp án được làm tròn một lần, chỉ để hiển thị trên màn hình, còn 12 chữ số có nghĩa. Các giá trị nhỏ hơn 0,000001 hoặc lớn hơn hay bằng 1.000.000.000.000 được hiển thị ở dạng số mũ, nên 0.0000001 được đọc là 1E-7.

Số được lưu giữ đầy đủ độ chính xác. Bộ nhớ lưu kết quả chính xác, không phải 12 chữ số trên màn hình, và MR dán lại chuỗi văn bản ngắn nhất biểu diễn cùng số đó. Giá trị âm trong bộ nhớ được dán trong dấu ngoặc, nên khi gọi lại sau một 2, nó được hiểu là phép nhân chứ không phải phép trừ.

Việc làm tròn không bao giờ được dùng để quyết định bất kỳ điều gì. Một phần dư rất nhỏ từ phép tính trước vẫn là một số thực và được xử lý như vậy. 0.1*3-0.3 không bằng không trong hệ nhị phân; nó xấp xỉ 5,55111512313E-17, vì vậy 5/(0.1*3-0.3) cho 9,00719925474E16 thay vì thông báo chia cho không.

Vì cùng lý do đó, sin(180) ở chế độ Độ hiển thị 1,22464679915E-16 chứ không phải 0. Sai số ở đây khoảng một phần trên mười triệu triệu, và vẫn nhỏ ở mức đó. Hàm tang là ngoại lệ, được xử lý bên dưới.

Những gì máy tính từ chối

Máy tính hiển thị thông báo thay vì đáp án khi:

  • mẫu số bằng đúng không, kể cả một số được viết quá nhỏ đối với kiểu double, chẳng hạn 1e-400, vốn đã trở thành không khi được đọc;
  • sqrt nhận một số âm;
  • log hoặc ln nhận một số không lớn hơn không;
  • asin hoặc acos nhận một số nằm ngoài khoảng từ -1 đến 1, là miền xác định được nêu trong mục 4,14 của NIST DLMF;
  • tan được dùng tại 90 độ hoặc bất kỳ bội lẻ nào của giá trị đó, nơi hàm không có giá trị;
  • yêu cầu tính giai thừa của một giá trị không phải số nguyên từ 0 đến 170;
  • một số có dấu thập phân thứ hai, như trong 1.2.3;
  • biểu thức dài hơn 512 ký tự.

Giới hạn 170 là thuộc tính của kiểu số, không phải lựa chọn tùy ý: giai thừa của 170 xấp xỉ 7,25741561531E306, vẫn vừa với kiểu double, còn giai thừa của 171 thì không. Giới hạn 512 ký tự được kiểm tra trong mã, vì độ dài của biểu thức quyết định lượng công việc mà máy tính phải thực hiện.

Việc kiểm tra hàm tang làm tròn góc đến 9 chữ số sau dấu thập phân trước khi kiểm tra. Cách này đưa sai lệch do các phép tính trước đó trở lại đúng tiệm cận, với cái giá là một khoảng từ chối rộng khoảng 5e-10 độ ở mỗi phía. tan(89.9999999994) trả về 95.493.592.025, còn tan(89.9999999995) bị từ chối. Chế độ Radian không thực hiện kiểm tra như vậy, vì một giá trị radian được nhập gần một nửa pi chỉ là một số thông thường, không có trạng thái đặc biệt.

Các câu hỏi thường gặp

Phím % ở đây thực hiện việc gì? Nó chia cho 100 tại bất kỳ vị trí nào nó xuất hiện. 100+10% là 100,1, vì nó có nghĩa là 100 cộng với 0,1. Nó không tính phần trăm của bất kỳ giá trị nào đứng trước nó.

2^3^2 là 64 hay 512? 512. Lũy thừa được nhóm từ phải sang trái, nên biểu thức có nghĩa là 2^(3^2), bằng 2^9. Điều này phù hợp với ISO 80000-2:2019.

Tại sao 6/2(1+2) là 9 chứ không phải 1? Phép nhân ẩn có cùng thứ tự ưu tiên với phép chia, và các phép có cùng thứ tự ưu tiên được đọc từ trái sang phải. Các máy tính xếp phép ghép liền có thứ tự ưu tiên cao hơn sẽ cho đáp án 1. Dấu ngoặc loại bỏ sự không chắc chắn.

Tại sao sin(180) không hiển thị 0? Vì 180 độ được chuyển sang radian trước, còn pi không thể được biểu diễn chính xác trong hệ nhị phân. Đáp án xấp xỉ 1.2e-16, là giá trị thực của sin của số mà máy thực sự đã sử dụng.

Sự khác biệt giữa log và ln là gì? log có cơ số 10, nên log(1000) bằng 3. ln có cơ số e, nên ln(e) bằng 1. Nhãn trên bàn phím tuân theo cùng quy ước như trên các máy tính khoa học TI và Casio.

Tại sao giai thừa lớn hơn 170 bị từ chối? Giai thừa của 171 lớn hơn mọi số mà kiểu double có thể chứa, nên đáp án sẽ là vô cực chứ không phải một số. Máy tính hiển thị thông báo thay vì đưa ra một kết quả vô nghĩa.

Nguồn

  • IEEE 754-2019, Tiêu chuẩn IEEE về số học dấu phẩy động.
  • ECMA-262, Đặc tả ngôn ngữ ECMAScript, mục 6.1.6.1, “Kiểu số”.
  • ISO 80000-2:2019, Đại lượng và đơn vị, Phần 2: Dấu và ký hiệu toán học.
  • Thư viện số NIST về các hàm toán học, các mục 4,2 và 4,14.
  • Wikipedia, “Thứ tự thực hiện phép tính”.
  • Wikipedia, “Các phương thức nhập của máy tính”.