同事在 Excel 单元格里敲了 =开方(2),回车得到 #NAME?。他想算根号 2,结果卡在函数名上。开方计算本身不难,难的是先搞清楚手头这个工具从哪个入口进。
日常说的开方多指开平方,求哪个数自己乘自己等于目标数。9 开方是 3,2 开方约 1.414,负数在实数范围里开不了平方。
计算器和手机怎么按
手机自带计算器横过来就是科学计算器,找根号键,先输 9 再按,得 3。Windows 计算器点左上角菜单切到「科学」,输数字再点根号。
顺序要看机型。有的计算器是前缀式,先按根号再输数字;Windows 是先输数字。按反了结果不对,还会以为计算器坏了。开立方找三次根号键,多数计算器没有四次方键,用 x 的 y 次方,指数填 0.25。
Excel 里用 SQRT
单元格输 =SQRT(A1),A1 是 2 就返回 1.414213562。开三次方写 =A1^(1/3),乘方符号是键盘上的 Shift+6,别用乘号。
结果是 #NUM!,说明参数是负数。要算复数的平方根用 IMSQRT。只想显示两位小数,改单元格格式为 0.00,别用 ROUND 改掉原值;真要四舍五入到两位,写 ROUND(SQRT(A1),2)。
写代码时注意类型
JS 用 Math.sqrt(2),Python 用 math.sqrt(2) 或 2 ** 0.5,PHP 用 sqrt(2),MySQL 也是 SQRT()。名字都差不多,记一个够用。
判断完全平方数别直接截断。先取 Math.floor(Math.sqrt(n)),再平方回去比,浮点误差会让 49 算成 6.999999,直接取整就错了。
笔算开方还有用吗
考试不让带计算器,用夹逼法:根号 2 在 1.4 和 1.5 之间,1.41 的平方是 1.9881,1.42 的平方是 2.0164,再往下缩。或者用牛顿迭代,初值取 n 除以 2,反复算 (x + n/x) 除以 2,收敛很快。
工程上两位小数够用就别算到十位,多算的位数不影响铺砖和算面积。开方计算真正容易错的不是算法,是单位没统一,厘米和米混着代进去,结果差一百倍。
实际用起来,表格里用 SQRT,写程序用现成函数,只有考试和估算才手算;Excel 里没有「开方」这个中文函数,别再试了。