跳到主要内容
CalcMax

科学计算器

结果

32.500000

结果

加满括号的读法
(sin(30) + ((2 ^ 3) * sqrt(16)))

科学计算器算得对不对,全看它按什么顺序读你的式子,所以这一页把两半一起给你:值,以及把每一个括号都摊开的读法。2 + 3 * 4 得 14,因为乘法先算;而 (2 + 3) * 4 得 20。乘方是右结合的,2^3^2 读作 2^(3^2) = 512;乘方又比前面的负号紧,所以 -2^2 是 -4。三角函数按你选的角度制读入:同一串 sin(30),在度数制下是 0.5,在弧度制下是 -0.988032。

sin(30) + 2^3 * sqrt(16) 的逐步求值

步算的是度数制弧度制
1sin(30)0.5-0.988032
22 ^ 388
3sqrt(16)44
42 ^ 3 * sqrt(16)3232
5sin(30) + 2 ^ 3 * sqrt(16)32.531.011968

这是计算器实际的运算顺序:最里层、最左边的先算,所以三个函数与那个乘方都在两个运算符之前就求完了。把第二列从上往下读,读的也正是优先级规则——sin(30),然后 2 ^ 3,然后 sqrt(16),然后是后两者的乘积,最后是那个和。右边两列是两种角度制并排:只有含三角函数的那几行在两者之间不同,而这就是角度制做的全部事情。第 2、3 行两列相同正是这个原因,第 4 行相同则是因为它由前两行构成。表里全是数字,十个语言下读到的都一样。

公式

优先级由松到紧: + - → * / → 负号与 √ → ^(右结合) 三角函数按所选角度制读入,asin、acos、atan 也按同一种角度制把答案还给你

^
乘方,也是结合得最紧的一个:2^3 * 4 先算 2 的三次方,得 8 * 4 = 32。它还是唯一右结合的运算符,所以 2^3^2 是 2^(3^2) 而不是 (2^3)^2——512,不是 64。
√
平方根,写 √16 或 sqrt(16) 都认,回显一律印成 sqrt(16)。立方根 cbrt 是唯一接受负数的一个:cbrt(-27) 得 -3,而 sqrt(-4) 在实数里没有答案。
sin cos tan
三个三角函数。它们的自变量是一个角,按你选的角度制读入——同样一串 sin(30),度数制下是 0.5,弧度制下是 -0.988032。asin、acos、atan 反过来走,把答案按同一种角度制还给你。
deg / rad
角度制。它只改三角函数,别的一概不动:其余运算符、以及任何不含三角函数的式子,两种制式下得数一模一样。它也是「看起来完全正确的算式算出错答案」最常见的那一个原因。
( )
括号,能盖过上面那套优先级。它也是唯一能让你看见结合方式的东西:第二个输出把整个式子重写一遍,每一次运算都加上括号,于是 (2 + (3 * 4)) 与 ((2 + 3) * 4) 一眼就能对比。

当你要算的是本站别的计算器之间那些零碎算式时用它:一个乘方与开方混在一起的计算、某个特定角度制下的三角函数值,或者一条你本来得拆成好几步、还要自己盯住运算顺序的复合算式。那个加满括号的读法是留给你觉得答案不对劲的那一刻的——十次里有九次错的不是算术,是结合方式。

算例

  1. sin(30) + 2^3 * sqrt(16),度数制

    1. 先看优先级:整条式子是一个和,和的右边是一项乘积
    2. 角度制为度数时,sin(30) 是 0.5
    3. 2^3 = 8——乘方先于它所在的那次乘法
    4. sqrt(16) = 4
    5. 8 * 4 = 32
    6. 0.5 + 32 = 32.5

    第一眼该看的是那个加满括号的读法:(sin(30) + ((2 ^ 3) * sqrt(16)))。它说明加法最后才算,而乘法同时管着它右边那两块。把角度制换成弧度,除了第一步以外什么都不变——sin(30) 变成 -0.988032,答案变成 31.011968。

  2. (2 + 3) * 4,括号就是全部意义所在

    1. 括号先算:2 + 3 = 5
    2. 再算乘法:5 * 4 = 20
    3. 不加括号的话,读法是 (2 + (3 * 4)) = 14

    两个字符让答案差了六。这一对值得并排输进去比: (2 + 3) * 4 的括号读法是 ((2 + 3) * 4),而 2 + 3 * 4 是 (2 + (3 * 4))——两种读法只差一个位置,而那个位置正是答案的来源。

  3. sin(pi/2),弧度制

    1. pi 是常量 3.141592653589793,所以 pi/2 是 1.5707963267948966
    2. 角度制是弧度,这个数就是角本身
    3. 四分之一圈的 sin 是 1

    同一个四分之一圈,用度数写就是 90。角度制不是显示偏好——它决定交给函数的是哪个数:90 弧度约等于十四圈多一点,sin(90) 在弧度制下会是 0.893997。

局限

只收一条算式,而且必须是纯算术。没有变量,所以 x + 1 输不进去,也不做符号化简:(x + 1)(x + 2) 是 foil-calculator 的事,解方程是 quadratic-formula-calculator 的事。答案只给小数——结果保留六位,特别大或特别小的量写成尾数乘 10 的幂——因为这里要的本来就是一个数,不是精确形式;√72 回的是 8.485281 而不是 6√2(那个归 radical-calculator)。认的函数是 sin、cos、tan、asin、acos、atan、sqrt、cbrt、ln、log、log2、exp 和 abs,常量是 pi 与 e。乘号不许省:2pi、2(3+4)、2e3 一律拒收而不是替你猜;函数名后面必须跟括号,所以 sin 30 也不认。算式最长 80 个字符、48 次运算,单个字面量不超过一百万。结果必须是有限数:除以零、对零或负数取对数、对负数开平方、以及 tan 90 度,都报成「算不出来」,而不是给一个无穷大,也不会把输入框标红——它们是不存在的值,不是写错了的字。

常见问题

这条算式是按什么顺序算的?
先乘方,再负号与开方,再乘除,最后加减,括号盖过其中全部。同一级里从左往右结合,只有乘方是从右往左。所以 6 / 3 * 2 是 4 不是 1,2^3^2 是 512 不是 64。
该选度数还是弧度?
题目用什么写的就选什么,选错答案会完全不同:sin(30) 在度数制下是 0.5,在弧度制下是 -0.988032。如果式子里根本没有三角函数,两种制式一模一样——本页的参考表把两列并排给出,正好能看见它到底动了哪几步。
2pi 的乘号明摆着,为什么还要拒收?
因为只有人看着才明摆着。反例是 2e3:它可以读成科学计数法的字面量,也可以读成 2 乘常量 e 再乘 3,两种读法差了大约一千倍。与其替你挑一个、再对另一半人悄悄算错,不如要求把符号写出来:写成 2 * pi。
负数的平方根为什么直接算不出来,而不是给个答案?
因为没有实数的平方是负数。sqrt(-4) 在实轴上没有值,所以报成「算不出来」,具体原因留在浏览器控制台里给想看的人。cbrt 是接受负数的,因为负数的奇次方根就是一个好好的负数:cbrt(-27) 得 -3。
那个加满括号的输出有什么用?
它就是计算器读到的式子,每一次运算都加了括号。读 (sin(30) + ((2 ^ 3) * sqrt(16))) 能一次看出三件原式只暗示了的事:加法在最后,乘方属于那次乘法,而平方根是一个独立的因子。答案看着不对的时候,问题通常就出在这一行上。
答案有多精确?
是小数,四舍五入到六位,所以 sin(30) 回 0.5,1/3 回 0.333333。特别大或特别小的结果会换成尾数乘 10 的幂,2^100 写成 1.267651 × 10^30,而不是三十一位数字。要精确形式的根式,radical-calculator 和 square-root-calculator 会把根号留着。

参考资料

相关计算器