四舍五入计算器

输入任意数字,按四舍五入 / 银行家舍入 / 向上向下取整等规则,保留 N 位小数或取整到最接近的 10、0.5、0.05 等倍数,给出结果、差值与逐步过程,高精度不丢位。

支持整数、小数(可带负号)、科学记数法(1.2e3);千位逗号会被忽略。

保留小数点后指定位数;0 位即取整到整数。

最常用:小数点后一位 ≥5 进位、<5 舍去;负数按绝对值同理。

取整结果
3.14
原数3.14159
取整结果3.14
保留小数位2 位
与原数之差-0.00159
计算步骤
  1. 规则:四舍五入(逢 5 进位,远离零)。
  2. 目标:保留 2 位小数。
  3. 看第 3 位小数(决定位)依规则处理,其后各位舍去:3.14159 → 3.14。
  4. 与原数之差:3.14 − 3.14159 = -0.00159。

计算在浏览器本地用高精度十进制运算完成,像 0.045 保留两位小数得 0.051.0051.01,不会出现浮点误差导致的“该进位却没进”。

怎么用

  1. 输入要处理的数字在「数字」框填整数、小数(可带负号),或科学记数法(如 1.2e3),千位逗号会被忽略。
  2. 选择取整方式「保留小数位」把数四舍五入到小数点后 N 位(0 位即取整到整数);「取整到倍数」把数取到最接近的某个倍数(如 10、100、0.5、0.05),可点常用倍数快捷键。
  3. 选择舍入规则默认四舍五入(逢 5 进位)。也可选银行家舍入(四舍六入五成双)、五舍六入、向上取整、向下取整、远离零、向零截断——半舍入类(四舍五入/银行家/五舍六入)主要在「正好落在中间(…5)」时不同;定向取整类(向上/向下/向零/远离零)对任意有非零小数的数都可能不同,负数还要看符号方向。
  4. 读取结果与步骤结果区给出取整后的值、与原数的差值,以及逐步过程。计算在浏览器本地用高精度十进制完成,像 0.045 保留两位得 0.05,不受浮点误差影响。

核心要点

「四舍五入」是把一个数按精度要求缩短:保留到某位后,用一条舍入规则决定末位是否进 1。半舍入类(四舍五入 / 银行家 / 五舍六入)主要在正好落在中间(…5)时结果不同;定向取整类(向上 / 向下 / 向零 / 远离零) 对任意有非零舍去部分的数都可能不同,且负数要看符号方向。

  • 四舍五入:逢 5 进位(远离零),3.5→4−2.5→−3。最常用。
  • 银行家舍入(四舍六入五成双):逢 5 取偶,2.5→23.5→4。会计/统计常用。
  • 向上取整(进一法):朝 +∞,2.1→3向下取整(去尾法):朝 −∞,2.9→2
  • 向零截断:砍掉小数,2.9→2−2.9→−2
  • 取整到倍数:取到最接近的步长,1234→1230(10)、2.3→2.5(0.5)。
  • 高精度0.045 保留两位得 0.05,不受浮点误差影响。

例(同数不同规则):2.1 取整,四舍五入 / 向零截断得 2, 向上取整 / 远离零得 3——可见定向取整不必等到「正好是 …5」就已经分道扬镳, 这也是选错规则时很常见的偏差来源;拿不准时,先想清楚要「就近」还是「够用(进一)/够省(去尾)」。

原理与公式

取整(rounding)是把数字压缩到某个精度:先确定保留位(保留到第几位小数,或取整到哪个倍数), 再看要舍去部分决定末位是否进 1。核心分歧只在「要舍去的部分正好是一半(…5)」时——不同规则给出不同答案。

舍入规则对照

规则2.5→整−2.5→整3.5→整说明
四舍五入(half-up)3−34逢 5 远离零进位,日常默认
五舍六入(half-down)2−23逢 5 靠近零舍去
银行家(half-even)2−24逢 5 取最近偶数,统计无偏
向上取整(ceil)3−24朝 +∞,与符号有关
向下取整(floor)2−33朝 −∞,与符号有关
向零截断(down)2−23直接舍去小数部分

注:ceil/floor 依 +∞ / −∞ 方向,对负数与「远离零 / 向零」并不相同; 非临界值(如 2.4、2.6)在四舍五入、银行家、五舍六入下结果一致。

保留 N 位小数

看第 N+1 位小数(决定位)按所选规则处理,其后各位舍去。例四舍五入保留两位:3.14159 → 3.143.146 → 3.15;进位越级时自动向前进位,9.96 保留一位 → 10.0。要求位数多于现有位数时按约定补 0(1.2 保留三位 → 1.200)。

取整到倍数

取到最接近的步长 m:先算 数值 ÷ m,按规则取整,再 × m。 例 1234 取整到 1012302.3 取整到 0.52.59.98 取整到 0.0510。步长可为任意正数(十位、百位、0.5、0.05、0.25 等)。

为什么要用高精度

计算机的双精度浮点存不下 0.0451.005 这类十进制小数,普通计算会把0.045 存成 0.04499… 导致「该进没进」。本工具用十进制库decimal.js 按十进制原样运算,0.045 → 0.051.005 → 1.01,与手算一致。

常见问题

四舍五入到底是什么规则?负数怎么处理?
四舍五入(round half up)看要舍去部分的第一位(决定位):≥5 就把保留的末位加 1(进位),<5 就直接舍去。例如保留两位小数:3.14159 看第三位小数 1(<5,舍)得 3.14;3.146 看第三位 6(≥5,进)得 3.15。负数按绝对值同样处理再加负号,所以 −2.5 取整到整数为 −3(远离零)。本工具默认用这一规则,也是日常与中小学最常用的口径。
银行家舍入(四舍六入五成双)和普通四舍五入有什么区别?
银行家舍入(round half to even)只在「正好是 5、且 5 后面没有其它非零数字」这种正中间的临界情形与普通四舍五入不同:此时它不总是进位,而是把保留的末位凑成偶数。例如保留到整数:2.5→2(2 是偶数)、3.5→4(4 是偶数)、0.5→0、1.5→2。好处是对大量数据求和时,进位与舍去大致各半,不像「逢 5 必进」那样长期使总和系统性偏大,因此会计、统计、IEEE 754 浮点默认舍入都采用它。而 2.4→2、2.6→3 这类非临界情形,两种规则结果完全一样。
取整到整数有几种方式?向上取整、向下取整、截断怎么选?
常见有五种:① 四舍五入——看小数是否 ≥0.5;② 向上取整(ceil,进一法)——总是朝 +∞ 方向进,2.1→3、−2.9→−2,常用于「需要多少个/多少份」这类不能不够的场景;③ 向下取整(floor,去尾法)——总是朝 −∞ 方向,2.9→2、−2.1→−3;④ 向零截断(truncate)——直接砍掉小数部分,2.9→2、−2.9→−2;⑤ 远离零——绝对值方向向上,2.1→3、−2.1→−3。注意向上/向下取整对负数与「远离零/向零」并不相同,符号方向要看清。
怎么把数取整到最接近的 10、100 或 0.5、0.05?
在「取整到倍数」模式填入步长即可:工具会先把数除以步长、按所选规则取整、再乘回步长。例如 1234 取整到 10 得 1230、取整到 100 得 1200(向下)或 1200/1300(四舍五入看十位);2.3 取整到 0.5 得 2.5;9.98 取整到 0.05 得 10。取整到 0.05 常用于价格「凑角」、取整到 0.5 用于评分/尺码等场景。取整倍数可以是任意正数,不限于 10 的幂。
保留两位小数和保留两位有效数字一样吗?
不一样。保留两位小数数的是「小数点后两位」,与数字大小、前导零无关,如 0.00456 保留两位小数为 0.00;保留两位有效数字数的是「从第一个非零数字起的两位」,如 0.00456 保留两位有效数字为 0.0046。前者按绝对精度、后者按相对精度。日常报账、金额多用「保留 N 位小数」,物理化学测量多用「保留 N 位有效数字」。要按有效数字取整请用有效数字计算器。
为什么用普通计算器时 0.045 保留两位小数会得到 0.04?
这是浮点误差。计算机的双精度浮点(double)用二进制存储,存不下 0.045、1.005 这类十进制小数,实际存成的是 0.044999…、1.00499…,四舍五入时「本该进位却没进」,于是得到 0.04、1.00。本工具用十进制高精度库(decimal.js)按十进制原样存储和取整,0.045 保留两位稳定得 0.05、1.005 得 1.01,与手算一致,也能处理超大 / 超小数字。
遇到 9.96、99.9 这种进位会「越级」的情况怎么办?
照常进位、数量级自动加 1。例如 9.96 保留一位小数:第二位小数 6≥5 进位,末位 9+1 向前进位得 10.0;99.9 取整到整数得 100;0.998 保留两位小数得 1.00。本工具用高精度运算逐位进位,结果会正确「进位到下一位」,不会停在 9.99 之类的错误值。
这个计算器支持负数和科学记数法吗?会存到服务器吗?
都支持。可输入负数(如 −2.5)与科学记数法(如 1.2e3、6.02E23),千位逗号和空格会被自动忽略。所有计算都在你的浏览器本地完成,不上传、不存储任何输入,刷新即清空,可放心用于日常与工作中的取整。

来源与更新

取整 / 舍入规则的定义依据(检索日期 2026-07-19):

  • 各种舍入方式(round half up / half to even / ceil / floor / truncate)与其对负数、临界值的处理,参考维基百科 Rounding
  • 银行家舍入(round half to even)作为 IEEE 754 浮点默认舍入模式的说明,参考维基百科 IEEE 754 · Rounding rules
  • 高精度十进制运算避免浮点舍入误差的实现库 decimal.js

本工具为纯数学工具,不含税率、利率等会随政策变化的参数;结果按通用取整约定给出, 具体会计准则 / 课程 / 行业规范的舍入口径可能略有不同,请以你所依据的标准为准。

最近更新:2026-07-19

本工具为纯数学工具,按通用取整/舍入约定给出结果,供学习与日常参考;具体课程、会计准则或行业规范的舍入口径可能略有差异,请以你所依据的标准为准。