小数转分数计算器
结果
最简分数
- 约分前
- 375/1000
- 百分数写法(%)
- 37.5000%
小数转分数计算器把一个带小数点的数换成用分子分母写的分数:0.375 就是 3/8。每次输入都会回来两个分数。第一个是最简分数,也就是约分之后的形式——分子分母同时约掉最大公因数——所以 0.5 给的是 1/2,而不是 5/10。第二个是约分之前的写法,也是大多数转换工具藏起来的那一步:0.375 以 1000 为分母就是 375/1000,而分子分母同时除以 125 才得到 3/8。把这个中间形式摆出来,是一个只给答案的页面与一个把方法也交出来的页面之间的区别,因为约分前的那个分数是你能从自己敲进去的数字里重建出来的那一个——小数有几位,分母就有几个 0;小数点去掉之后的数字,就是分子。同一个数还会给一个百分数,因为那一步只是挪小数点,不是第二次计算:0.375 是 37.5%。整页靠的是一条定义:小数是分母为 10 的整数次幂的分数。0.375 就是 375 ÷ 1000,所以三位小数对应三个 0;0.0625 是 625 ÷ 10000,同一个道理。剩下的全是约分。用之前有四件事值得知道。它转的是你实际填进去的那个小数,不是你心里想的那个分数:0.3333 是 3333/10000,不是 1/3,因为 1/3 根本没有有限的小数形式,而这一页没法猜出一个被截断的小数是打算代表循环小数的。它最多读十二位小数,所以比 0.000000000001 还小的数会先被舍成 0,回来的是 0 而不是一个分数——那些位数在换算开始之前就已经没了。百分数那一格最多显示八位有效数字,所以很小的小数只要还在这条线以上,读出来就是一个很小的百分数而不是 0。而整数位很多的输入会让分子超出整数精确表示的范围,那时给出的分数和你填进来的数一样精确,不会更多——它不会印出一个自称比输入更精确的分数,但也没法印出一个更精确的。
能停下来那些小数,以及它们背后的分数
| 小数 | 分数 | 百分数(%) |
|---|---|---|
| 0.0625 | 1/16 | 6.25 |
| 0.125 | 1/8 | 12.5 |
| 0.2 | 1/5 | 20 |
| 0.25 | 1/4 | 25 |
| 0.375 | 3/8 | 37.5 |
| 0.5 | 1/2 | 50 |
| 0.625 | 5/8 | 62.5 |
| 0.75 | 3/4 | 75 |
| 0.8 | 4/5 | 80 |
| 0.875 | 7/8 | 87.5 |
十行小数,每一个都有精确的分数,而且每一个都是人们真的会量到的值:一英寸的八分之一与十六分之一、一杯的五分之一与四分之一、一元的一半。竖着读分母那一列——16、8、5、4、8、2、8、4、5、8——注意每个分母都只由 2 与 5 组成,这正是它们的小数都停得下来的原因。右边两列是同一个数的另外两种写法,所以一行可以朝任一方向读:0.375 是 3/8 也是 37.5%,5/8 是 0.625 也是 62.5%。3/8 与 5/8 是值得记住的两行,因为它们正是尺子上最常需要脱离工具换算的那两个刻度。
公式
小数有 n 位 → 分子 = 去掉小数点后的数字,分母 = 10ⁿ 再把分子分母同除它们的最大公因数
- 小数
- 要换算的数,最多读十二位小数。末尾的 0 不改变它,而比 0.000000000001 还小的值会在换算开始之前就被舍掉
- 小数位数
- 小数点右边有几位:0.375 是三位,0.0625 是四位,2 是零位。这个位数决定分母——就是在 1 后面写几个 0
- 约分前的分子
- 把小数点去掉之后当作整数读的那些数字:0.375 是 375,0.0625 是 625。它是这个分数里仍然看得出出身的另一半
- 约分前的分母
- 10 的整数次幂——三位是 1000,四位是 10000。正是这个分母让这个分数是一个精确的十进分数,而不是一个近似值
- 最大公因数
- 能同时整除分子与分母的那个最大的数,也是约分前的写法与答案之间唯一的障碍:375 与 1000 的公因数是 125,两边都除以它才到 3 与 8
四种场合会用到这一页,它们需要的信任程度略有不同。把一个小数读回分数,用在配方、卷尺或钻头上,这时真正要紧的是那些除得尽的小数——0.375 是八分之三,0.0625 是十六分之一,这两个换算都是精确的。拿一个已有的分数倒着验算,这正是约分前那一格的价值所在:填 0.75 看到 75/100,等 25 从两边约掉之后,就确认了这个小数是四分之三。把小数写成比值用于展示,上场的是最简形式,百分数是顺带给的。以及这一页并不合适的那一类,值得在浪费时间之前认出来:把循环小数换成分数。如果你手上是 0.3333 而不是 1/3,答案是 3333/10000——一句关于眼前这些数字的真话,一个对你想的那个数来说很差的替身。把循环小数换回它精确的分数是另一个问题、另一套方法,而一个在小数点后十二位就停住的小数,已经把能解出它的证据扔掉了。
算例
0.375 换成分数
- 数小数位数:0.375 是三位
- 分母:三位就是 1000,所以这个数是 375/1000
- 求 375 与 1000 的最大公因数:125
- 两边同时除以 125:375 ÷ 125 = 3,1000 ÷ 125 = 8
- 最简分数是 3/8,同一个小数是 37.5%
默认那一组,也是两个输出各自干活最清楚的一组。375/1000 是这个数的出身,它直说三位小数就是三个 0;3/8 是答案,也是继续用得下去的形式——八分之三杯、尺子上的八分之三英寸。注意 3/8 是精确的:0.375 在小数点后三位就结束,这正是背后有一个精确分数的标志。
十六分之一,去而复返
- 数小数位数:0.0625 是四位
- 分母:四位就是 10000,所以这个数是 625/10000
- 两边同时除以 625:10000 ÷ 625 = 16
- 最简分数是 1/16,这个小数是 6.25%
十六分之一,也是约分前那一格变得有意思的地方:625/10000 能一路约到 1/16,因为 10000 正好是 16 × 625。这是每一个有限小数的形状——最简分数的分母能整除 10 的某个幂,同一句话换个说法就是分母除 2 与 5 之外没有别的质因数。所以 1/16 与 3/8 换算得精确,而 1/3 与 1/7 永远不能。
2.5 换成分数
- 去掉小数点读数字:25
- 数位数:一位,所以分母是 10
- 两边同时除以 5:25 ÷ 5 = 5,10 ÷ 5 = 2
- 最简分数是 5/2,也就是 2.5,以及 250%
大于 1 的值,报出来是假分数而不是带分数:5/2,不是 2 又 1/2。两种写法是同一个数,而假分数是继续做运算时更好用的输入——分数相乘时旁边挂着一个整数并不方便。读回去就是 5 ÷ 2 = 2.5,也就是本批另一页在做的那次除法。
0.333333333333333 会变成什么
- 数位数:敲了十五位,只读十二位
- 分母:十二位就是 1000000000000
- 分子:留下来的那十二位数字,333333333333
- 约不动——它与 10 的幂没有公因数——所以两个输出是同一个分数
- 写成百分数是 33.3333
这一组把这一页与很多人希望它做的事分开。十五个 3 是 1/3 保留十五位的结果,而这一页换算的是它拿到的那些数字,不是那些数字近似代表的那个数,所以答案是 333333333333/1000000000000,不是 1/3。这个分数是诚实的——它精确等于你填进去的那个小数——只是它不是想换算循环小数的人在找的东西。这里约分前与约分后相等,因为约不动:以 10 的幂为分母,与一个由 3 组成的分子没有公因数。
局限
它换算的是你填进去的那个小数,不是你心里想的那个分数。任何你写得出来的小数都有一个精确的分数,这一页也找得到,所以一个循环小数被截断之后的近似会换算成一个以 10 的幂为分母的分数,而不是它本来那个简单的分数——0.3333 变成 3333/10000,想要拿回 1/3,前提是你一开始就知道它是 1/3。这一页最多读十二位小数:比 0.000000000001 还小的值在换算开始前就被舍成 0,回来是 0,百分数也相应变得极小,所以那么小的数会整个丢掉它的分数形式,而不是被近似。整数位很多的输入受普通浮点运算精度的限制——超过大约十五位有效数字之后分子就不再精确,返回的分数和你填进来的数一样精确、不会更多;它不会悄悄夸大精度,但也没法还原从来没进来过的位数。分数报出来是假分数而不是带分数,所以 2.5 给 5/2 而不是 2 又 1/2,而一个整数会给一个分母为 1 的分数、最后收成那个整数本身——1 回来还是 1。负数的符号留在分子上:−0.375 是 −3/8。这一页除了换算不做别的运算——它不会给你已有的分数做加减、比较或化简,也不检查它给出的分数是不是你的目的地想要的形式。它也不是一个舍入工具:这里没有任何东西替你决定你的数该保留几位小数。
常见问题
- 小数怎么化成分数?
- 数小数有几位,去掉小数点,把这些数字放在 1 后面跟同样多个 0 的上面:0.375 是三位,所以是 375/1000。再拿分子分母同时除以它们的最大公因数——这里是 125——就得到 3/8。数位数这一步就是全部方法,后面全是约分,而约分是计算器比人快的部分。
- 为什么 0.3333 给的是 3333/10000,不是 1/3?
- 因为 0.3333 不是 1/3——它是 1/3 在第四位被截断的结果,而 3333/10000 正是那四位数字说的事。这一页换算的是它面前的这个数,没法知道你想写的是一个循环小数;两者相差 0.0000333,很小但真实。想从循环小数得到 1/3,你需要的是循环节,那是另一套方法。
- 约分前那个分数有什么用?
- 它说明这个分数的出身。375/1000 说这个小数有三位小数、数字是 375,让人可以拿眼睛核对这次换算;3/8 说的是答案是什么。两者一起还把约分那一步显式摆出来了,所以这一页同时是一个约分的算例,而不只是一个转换器。当约不动的时候——比如分子是一串 3——两个输出完全相同,页面会把同一个分数印两遍。
- 哪些小数能换成精确的分数?
- 能停下来的那些。有限位的小数按定义就是一个以 10 的幂为分母的分数,所以换算是精确的,而约分后的分母只可能由 2 与 5 组成——2、4、5、8、10、16、20、25 等等。别的数,比如三分之一或七分之一,小数形式永远不结束,任何有限位数都精确表示不了它。这一页照样能换算你给的那些数字,只是回来的分数是以 10 的幂为分母的,不是你本来那个分数。
- 很小的小数会怎么样?
- 小于十二位小数的会先被舍成 0。这一页最多读十二位,所以 0.0000000000001——十三位——会变成 0,回来的是分数 0,而不是一个分母有十三位的分数。十二位是刻意的上限:它覆盖了日常工作中人们会写下来的所有小数,同时让分子与分母都留在整数精确表示的范围里。
- 为什么 2.5 显示成 5/2,不是 2 又 1/2?
- 因为假分数是继续用得下去的形式。两种写法数值一样,而如果下一步要乘或除以另一个分数,你要的就是 5/2——带分数必须先换回假分数才能参与运算。读回去是一次除法,5 ÷ 2 = 2.5,做这次除法的页面就是本批另一页在做的事。
参考资料
- Decimal fraction — an arithmetical fraction with an integral power of ten as its denominator(十进分数:分母为 10 的整数次幂的分数,也正是这一页换算的起点) — Encyclopedia of Mathematics, European Mathematical Society
- Reduced Fraction — a fraction written in lowest terms, obtained by dividing numerator and denominator through by their greatest common divisor — Wolfram MathWorld
- Regular Number — also called a finite decimal: a number with a finite decimal expansion — Wolfram MathWorld
- 教育部关于印发义务教育课程方案和课程标准(2022 年版)的通知——该通知的附件清单第 5 项是《义务教育数学课程标准(2022 年版)》;小数与分数的互化是义务教育阶段数学课程的内容,课标的原文与学段划分以该附件为准 — 中华人民共和国教育部