跳到主要内容
Varlig 指南
Varlig 首页

舍入

本页介绍计算中的舍入:保留几位小数或几位有效数字、取整,以及按步长舍入,例如舍入到最接近的 £0.50 或 15 分钟。当你需要一个整齐的数字供笔记后面继续使用时,比如要租几张桌子、每人应付多少钱,就来这里看看。

舍入有几种不同的操作,很容易混淆:

  • 小数位数:保留小数点后的若干位数字。3.14159 保留 2 位小数是 3.14。
  • 有效数字:从第一个非零数字起保留若干位数字。12,345 保留 3 位有效数字是 12,300。
  • 步长:舍入到某个值的倍数。17 舍入到最接近的 5 的倍数是 15。

计算中的舍入会改变后续行所使用的值。如果只是想让答案看起来更整齐,请改用该行快捷菜单中的答案格式选项。

小数位数

在计算后面加上 to N dp,即可对答案进行舍入:

calc
100 / 7 to 2 dp 结果为 14.29
pi to 5 dp 结果为 3.14159
2 kg / 3 to 2 dp 结果为 0.67 kg
14 kg / 3 to 1 dp 结果为 4.7 kg

以下写法的含义完全相同:

形式 示例 结果
to N dp 1.23456 to 2 dp 1.23
to N decimal places 1.23456 to 2 decimal places 1.23
to N digits 1.23456 to 2 digits 1.23
rounded to N dp 1.23456 rounded to 2 dp 1.23
rounded to N decimal places 1.23456 rounded to 2 decimal places 1.23
-> N dp 1.23456 -> 2 dp 1.23

decimal place 也可以用单数形式,例如 17.456 to 1 decimal place

to 0 dp 会舍入为整数。恰好一半时向远离零的方向舍入,所以 2.5 to 0 dp 是 3,-2.25 to 1 dp 是 -2.3。舍入后的值仍会带着单位。

对换算和函数结果进行舍入

to N dp 直接放在换算或函数调用的后面。无论你写的是 in 还是 to,换算结果都会以换算后的单位进行舍入:

calc
42.195 km to miles to 1 dp 结果为 26.2 mi
sqrt(2) to 4 dp 结果为 1.4142
average(1, 2, 4) to 2 dp 结果为 2.33

对于用两个单位表示的答案(例如英尺和英寸),小数位数作用于较小的单位:170 cm in feet and inches to 0 dp 是 5 英尺 7 英寸。请参阅双单位答案

金额的舍入

金额显示两位小数,但后续行使用的仍是完整的值。这通常对你有利:£100 的三分之一显示为 £33.33,但三个三分之一加起来仍然正好是 £100。

calc
£100 / 3 结果为 £33.33
£100 / 3 * 3 结果为 £100.00

如果实际支付的就是舍入后的数字,请明确进行舍入。下面每人支付 £33.33,所以三笔付款加起来是 £99.99:

calc
每份 = £100 / 3 to 2 dp 结果为 £33.33
每份 * 3 结果为 £99.99

有效数字

科学家、工程师以及需要给出大致数字的人,常常改为按有效数字舍入。请写 to N sfto N significant figuresto N sig figs

calc
12345.678 to 3 sf 结果为 12,300
0.0012345 to 2 sf 结果为 0.0012
12345.678 to 3 significant figures 结果为 12,300
round 987.65 to 2 sig figs 结果为 990

rounded to N sfround … to N sf 同样可用。恰好一半时向远离零的方向舍入,单位也会保留,所以 sqrt(2 * 9.81 m/s² * 45 m) to 3 sf 是 29.7 m/s。

最接近的整数

在值后面写 rounded,或者用 round(…) 把它括起来,即可得到最接近的整数:

calc
4.5 rounded 结果为 5
4.4 rounded 结果为 4
round(£12.50) 结果为 £13.00

向上和向下取整

要指定方向,请加上 updown。这个短语可以放在值的后面,也可以放在前面:

calc
12.3 rounded up 结果为 13
12.7 rounded down 结果为 12
round up 12.3 结果为 13
round 12.7 down 结果为 12

当没装满的一份也要算作完整的一份时,就应该向上取整:

calc
宾客 = 23
宾客 / 6 rounded up 结果为 4
round up 宾客 / 6 结果为 4
round down 宾客 / 6 结果为 3

二十三位宾客、每桌六人,需要四张桌子,其中三张能坐满。放在开头的 round upround down 会对其后的整个计算进行舍入,所以你可以把短语放在读起来最顺的位置。

负数

对于负数,up 表示朝正无穷方向,down 表示朝负无穷方向,与数轴上数字的排列方向一致。普通舍入仍然是恰好一半时向远离零的方向舍入:

calc
-2.5 rounded 结果为 -3
-2.5 rounded up 结果为 -2
-2.5 rounded down 结果为 -3

函数形式

函数 舍入方式 示例 结果
round(x) 取最接近的值,一半时远离零 round(-2.5) -3
floor(x) 向下,朝负无穷方向 floor(-2.5) -3
ceil(x) 向上,朝正无穷方向 ceil(-2.5) -2
trunc(x) 朝零方向,直接去掉小数部分 trunc(-2.5) -2
int(x) trunc 相同 int(12.7) 12

floorceil 适用于金额和带单位的值(ceil(£12.01) 是 £13.00)。truncint 只接受普通数字。

按步长舍入

加上 to nearest 和一个步长,即可舍入到该步长的倍数。rounded up to nearestrounded down to nearest 可以指定方向:

calc
2,340 rounded to nearest 100 结果为 2,300
2.3 to nearest 0.25 结果为 2.25
£1,237 rounded up to nearest £100 结果为 £1,300.00
£4.38 rounded to nearest 5p 结果为 £4.40
£4.386 to nearest penny 结果为 £4.39
$4.38 rounded up to the nearest dollar 结果为 $5.00
$2.37 rounded to nearest 50c 结果为 $2.50
47 min rounded up to nearest 15 min 结果为 60 min

最后一行演示了在工时表上把时间向上舍入到下一个 15 分钟的方法。金额步长可以用硬币面额来写,例如 nearest 5pnearest 10pnearest 5 cents,也可以写成一个金额,例如 nearest £0.05。只写硬币或货币名称而不带数字,就会舍入到一个该单位:nearest pennynearest centnearest poundnearest dollarnearest euro。每种写法也都可以写成 to the nearest,如 17 to the nearest 5。步长使用另一种货币(如 $4.38 to nearest pound),或者用长度、重量或时间作为金额的步长,都会显示错误。

同样的短语也可以放在值的前面,方向词放在哪个位置都可以:

calc
round £1,237 to nearest £50 结果为 £1,250.00
round up £1,237 to nearest £100 结果为 £1,300.00
round £1,237 up to nearest £100 结果为 £1,300.00

带单位的步长

步长可以使用与值不同的单位,只要两者衡量的是同一种量。步长会先进行换算,答案保留值的单位:

calc
1.3 kg rounded up to nearest 500 g 结果为 1.5 kg
3.7 km to nearest 500 m 结果为 3.5 km
round 1.3 kg to nearest 500 m 结果为 Error: incompatible units

两个参数的 round

round(x, step) 是按步长舍入的函数形式:

calc
round(47 min, 15 min) 结果为 45 min
round(£12.345, £0.01) 结果为 £12.35
round(5.567, 0.01) 结果为 5.57

舍入小时和分钟

以小时和分钟表示的时长会作为一个整体进行舍入。普通舍入会舍入到最接近的整小时,而 15 分钟这样的步长适合用于工时表:

calc
工时 = 1 hour 52 min
round(工时) 结果为 2 hours
工时 to nearest 15 min 结果为 1 hour 45 min
工时 rounded up to nearest 15 min 结果为 2 hours

与英尺和英寸一样,小数位数作用于最小的单位,所以 工时 to 0 dp 会让 1 小时 52 分钟保持不变。要舍入到整小时,请使用 round 或步长。

综合运用

为一场花园派对规划食物和桌子:

calc
# 花园派对
宾客 = 42
每桌人数 = 8
桌数 = 宾客 / 每桌人数 rounded up 结果为 6
披萨 = 宾客 * 3 / 8 rounded up 结果为 16
披萨单价 = CNY 89
披萨总价 = 披萨 * 披萨单价 结果为 1,424.00 CNY
每人 = 披萨总价 / 宾客 rounded up to nearest CNY 5 结果为 35.00 CNY
每人 * 宾客 结果为 1,470.00 CNY

桌子和披萨都向上取整,因为不满一桌或不满一张的披萨也得按一整份来算。按每张披萨切八块、每人三块计算,结果是 15.75,所以要订 16 张。每位宾客的份额向上舍入为好记的 CNY 35,最后一行表明,这笔钱足以支付 CNY 1,424 的账单,还略有富余。