通过MCP连接 →

输入计算

数学公式

广告

结果

输入的小数 0.75
分数
3 4
小数(取整后) 0

这个计算器能做什么

虽然名字里带着"取整",但这其实是一款小数转分数计算器。你只需输入一个小数,它就会把这个数值换算成最接近的分数,并自动约分为最简形式。无论是 0.625 还是 0.4 这种不太顺手的小数,都能一键变成干净利落的分数,方便用于食谱、测量、木工或者数学作业。

只需填写一个数据

  • 小数——输入任意小数值(例如 0.75、0.333 或 2.5)。如果填入的不是有效数字,系统会按 0 处理。

计算原理

计算器会从 1 到 1000 依次尝试每一个分母,寻找最匹配的分数。对每个分母,它先把 小数 × 分母 四舍五入到最接近的整数,得到一个候选分子,再计算它与原始数值之间的误差。

$$\text{Fraction} = \frac{n}{d} = \frac{\text{Decimal} \times d}{d}, \quad \text{simplified by } \gcd(n, d)$$

$$\begin{gathered} \text{Fraction} = \frac{n}{d} = \frac{n / \gcd(n,d)}{\,d / \gcd(n,d)\,} \\[1.5em] \text{where}\quad \left\{ \begin{aligned} d &= \text{denominator}, \; 1 \le d \le 1000 \\ n &= \operatorname{round}\!\left(\text{Decimal} \times d\right) \\ &\quad \text{first } d \text{ with } \left|\text{Decimal} - \tfrac{n}{d}\right| < 10^{-6} \end{aligned} \right. \end{gathered}$$

  • 如果误差小于 \(0.000001\),就直接把这个分数当作精确匹配采纳。
  • 否则,它会保留所有分母中误差最小的那个分数。

得到分子和分母后,计算器用欧几里得算法求出两者的最大公约数(GCD),再将分子分母同时除以它,结果就是最简分数。它还会标记出结果是否为整数(分母为 1),以及是否真的进行了约分。

Advertisement
将小数转换为分数并用最大公约数约分的流程图
小数先化为分数 n/d,再用最大公约数同时除以分子和分母进行约分。

实例演示

输入 0.625。在逐一测试分母时,计算器发现 \(0.625 \times 8 = 5\) 正好整除,得到分数 \(5/8\),误差几乎为零。5 和 8 的最大公约数是 1,因此这个分数已经是最简形式,结果为 5/8

再试试 0.5。最先匹配到的是 \(1/2\),最大公约数为 1,结果就是清爽的 1/2。输入 0.4 则得到 \(2/5\),因为把 \(4/10\) 约分后正好等于 0.4。

展示 75/100 同除以 25 约分为 3/4 的示例
例题:0.75 = 75/100,分子分母同除以 25 即可约分为 3/4。

常见问题

为什么分母最多只到 1000? 把搜索范围限制在 1000 以内,是为了让结果既简洁又快速。对于 0.333 这类无限循环小数,它会返回非常接近的 \(1/3\),而不是一个又长又难看的分数。

输入大于 1 的数会怎样? 同样可以处理。输入 2.5 会得到 \(5/2\),这是一个假分数。工具不会自动把它拆成带分数(如 2½)。

结果一定是最简分数吗? 是的。每个结果都会除以它的最大公约数,所以你拿到的始终是最简形式的分数。

最后更新: