这个科学计算器除四则运算外,还支持三角函数和反三角函数、常用对数与自然对数、开平方、乘方、阶乘、百分号、绝对值以及常数 π 和 e,全部在同一个算式输入框里完成。 不必一个个按数字和运算符,而是像 2*(3+sin(30))^2 这样写出整条算式再按 Enter,计算顺序一目了然,写错了也能直接修改。 适合数学物理作业、工程上的快速核对、复利计算和角度换算验证。键盘下方会保留最近 5 次计算,最新结果还可以复制到剪贴板。
功能一览
- 三角函数:sin、cos、tan 及其反函数(sin⁻¹、cos⁻¹、tan⁻¹ 按钮会在输入框中插入 asin(、acos(、atan()。右上角按钮用于切换 DEG(角度)与 RAD(弧度)。
- 对数:log 以 10 为底,ln 以 e 为底。参数必须大于 0。
- 乘方与开方:x² 按钮、∛ 按钮(插入 ^(1/3))和 √ 按钮。任意次方 xy 请用键盘输入
^,例如2^10。 - 其他:n!(仅限 0 及以上的整数)、%(把前面的数除以 100)、abs(绝对值)、π、e、括号,以及调用上一次结果的 Ans。
运算顺序与输入规则
算式按下面的优先级解析,越靠上的越先计算。
| 优先级 | 运算 | 示例与结果 |
|---|---|---|
| 1 | 括号、函数参数 | (2+3)*4 = 20 |
| 2 | ! 和 %(后缀) | 3! = 6,50% = 0.5 |
| 3 | 乘方 ^(从右向左) | 2^3^2 = 2^9 = 512 |
| 4 | 负号 | −2^2 = −4(先算乘方) |
| 5 | 乘 *、除 / | 8/2*3 = 12(从左向右) |
| 6 | 加 +、减 − | 1+2*3 = 7 |
省略的乘号不会被识别,所以 2π 要写成 2*π,3(4+1) 要写成 3*(4+1)。函数名后面必须跟括号:sin(30) 可以,sin30 不行。 字母 e 始终表示自然常数(2.718…),因此不能用 2e3 这样的科学计数法,请写成 2*10^3。
DEG 与 RAD,以及常用角度的值
180° = π 弧度,弧度 = 角度 × π ÷ 180。同样的 sin(30),DEG 模式下是 0.5,RAD 模式下约为 −0.988,所以先确认模式是最重要的习惯。 下表是按与计算器相同的规则(保留 12 位有效数字,绝对值小于 1e−10 视为 0)在构建时算出的常用角度值。
| 角度(DEG) | sin | cos | tan |
|---|---|---|---|
| 0° | 0 | 1 | 0 |
| 30° | 0.5 | 0.866025403784 | 0.57735026919 |
| 45° | 0.707106781187 | 0.707106781187 | 1 |
| 60° | 0.866025403784 | 0.5 | 1.73205080757 |
| 90° | 1 | 0 | 无定义 |
| 180° | 0 | -1 | 0 |
反三角函数在 DEG 模式下返回角度,在 RAD 模式下返回弧度:asin(0.5) 在 DEG 下是 30,在 RAD 下约为 0.5236。asin 和 acos 的参数只能在 −1 到 1 之间。
阶乘参考表
n! 是 1 到 n 所有整数的乘积,规定 0! = 1。它增长得非常快,20! 约为 2.4×10¹⁸;本计算器能算的最大阶乘是 170!,因为 171! 超过了双精度数能表示的最大值(约 1.8×10³⁰⁸)。
| n | n! |
|---|---|
| 0 | 1 |
| 1 | 1 |
| 2 | 2 |
| 3 | 6 |
| 4 | 24 |
| 5 | 120 |
| 6 | 720 |
| 7 | 5,040 |
| 8 | 40,320 |
| 9 | 362,880 |
| 10 | 3,628,800 |
| 12 | 479,001,600 |
| 15 | 1,307,674,368,000 |
| 20 | 2,432,902,008,176,640,000 |
表中是精确整数,而计算器会把结果舍入到 12 位有效数字,所以 20! 显示为 2432902008180000000,而不是 2432902008176640000。
经过验算的计算示例
- 复利。1,000 元按年利率 5% 增长 10 年:
1000*1.05^10= 1628.89462678,约 1,628.89 元;按月复利则1000*(1+0.05/12)^120= 1647.00949769。利率是假设值,实际产品以各自条款和费用为准。 - 直角三角形斜边。两条直角边为 3 和 4 时,
sqrt(3^2+4^2)= 5。 - 由数值求角度。DEG 模式下
asin(0.5)= 30,atan(1)= 45。 - 对数。
log(1000)= 3,ln(e^2)= 2,log(2)≈ 0.301029995664;换底也可以直接算,如ln(8)/ln(2)= 3。 - 恒等式检验。DEG 模式下
sin(45)^2+cos(45)^2= 1。如果结果不是 1,多半是停在了 RAD 模式。 - 手算组合数。
5!/(2!*3!)= 10,即从 5 个中选 2 个的组合数。
算式是如何求值的
计算器没有使用 JavaScript 的 eval 这类捷径,而是把输入拆成数字、名称和运算符,再交给一个只认识上述函数的小型解析器求值。未知的单词或多余的符号都会被拒绝并给出错误提示。 所有计算都在浏览器本地完成,输入的算式不会发送到服务器。
精度与局限
- 浮点数。计算机用 IEEE 754 双精度保存数字,有效位数约 15 到 17 位。未经处理时
0.1+0.2是 0.30000000000000004;本计算器把结果舍入到 12 位有效数字,所以显示 0.3,绝对值小于 1e−10 的结果显示为 0,因此sin(180)显示 0 而不是 1.2e−16。处理极小的数时,这种整理可能掩盖真实结果。 - 大整数。超过 253(约 9.007×10¹⁵)的整数并不能都被精确表示,再加上 12 位舍入,
2^53+1会显示为 9007199254740000。它不适合做精确的大整数运算。 - 无定义的运算。除以 0、tan(90°)、负数的平方根与对数(以及 0 的 log、ln)、−1 到 1 之外的 asin 和 acos 都会提示错误。不支持复数,所以虽然 −8 有实数立方根,
(-8)^(1/3)仍会提示“无法计算”。 - 百分号。% 只是把前面的数除以 100。
200+10%是 200.1,不是 210。要增加 10%,请输入200*(1+10%)或200*1.1。 - RAD 模式下的 tan。π/2 这类值无法被精确保存,
tan(π/2)会得到一个极大的数,而其真实值是无定义的。 - 不包含的功能。没有绘图、矩阵、微积分和统计函数。求平均数和标准差请用统计计算器。
常见错误
- 没看 DEG/RAD 按钮就直接算 sin、cos。
- 输入
-2^2却期待得到 4。乘方先算,所以结果是 −4;想得到 4 要写(-2)^2。 - 括号或常数前省略乘号。
- 把舍入后显示的结果当成精确值。
常见问题
DEG 和 RAD 有什么区别?
DEG(角度)把一圈看作 360 度,RAD(弧度)把一圈看作 2π,是数学和工程公式默认使用的单位。sin、cos、tan 及其反函数在两种模式下结果不同,计算前请务必确认顶部的按钮。
可以用键盘直接输入算式吗?
可以。点击输入框,输入算式后按 Enter 即可。函数要带括号,如 sin( 或 log(,乘方用 ^ 符号。
结果显示“错误”是什么原因?
算式不合法或没有定义,比如括号不匹配、函数后面没有括号、省略了乘号、除以 0 等。输入框上方一行会显示具体原因,改正后重新计算即可。
log 和 ln 有什么不同?
log 是以 10 为底的常用对数,ln 是以 e(约 2.71828)为底的自然对数。log(1000) = 3,ln(e) = 1。换底时,以 b 为底 x 的对数等于 ln(x) ÷ ln(b)。
很大的数怎么显示?
1e+21 这样的科学计数法无法再次输入,所以输入框里会展开成完整数字。结果超过约 1.8×10³⁰⁸ 时会提示无法表示;阶乘最大可算到 170!。