数学计算 本地计算 开箱即用 内置示例 不留痕迹

比例计算器

三个模式:已知 A:B = C:x 求 x(如 2:3 = 4:x → 6);把比例化成最简整数比(8:12 → 2:3);算 A 占 (A+B) 的百分比(3:7 → 30%)。做饭配料、地图缩放、混凝土配比都适用。

配农药要 1:800,和面要看水粉比,缩放图片要保持宽高——「按比例」是日常与作业里都躲不开的运算。三个常用方向都备好了:补全比例的第四项、约成最简的整数比、算某部分占整体的百分比,厨房、工地和试卷上的比例问题都能接。

口径提醒:化简比支持小数与分数输入(0.5:1.25 → 2:5);求 x 用内项积等于外项积(A·x = B·C);「A 占 (A+B) 的百分比」是份额口径(3:7 里 A 占 30%),与「A 是 B 的百分之几」(3/7 ≈ 42.9%)不同,别混。

使用步骤

  1. 选模式:求第四项 / 化简比 / 算份额百分比。
  2. 求 x 模式填 A、B、C 三个数,得 x。
  3. 化简模式填两个数(小数分数均可),得最简整数比。
  4. 份额模式填 A 与 B,看 A 占 (A+B) 的百分比。

计算原理与示例

求比例第四项

求第四项:比例的两内项之积等于两外项之积,A:B = C:x 则 x = C×B÷A。例如米水比 1:1.5,2 杯米要 3 杯水。

化简比

化简比:8:12 各除以最大公约数 4,得 2:3。小数比同样支持,1.5:2.5 先同乘 10 化为 15:25 再化简为 3:5。

算占比

算占比:A 占 A+B 的百分比。3:7 的混合液中 A 占 3÷10 = 30%。

代码示例

JavaScript 三模式实现

const solveX = (a, b, c) => b * c / a;          // A:B = C:x

function simplifyRatio(a, b) {                  // 化最简整数比
  const gcd = (x, y) => y ? gcd(y, x % y) : x;
  let x = a, y = b, k = 1;
  while (!Number.isInteger(x) || !Number.isInteger(y)) { x *= 10; y *= 10; }
  const g = gcd(Math.abs(x), Math.abs(y)) || 1;
  return (x / g) + ":" + (y / g);
}
const sharePct = (a, b) => a / (a + b) * 100;   // A 占 (A+B)

solveX(2, 3, 4);        // 6
simplifyRatio(0.5, 1.25);   // "2:5"

Python 同三模式的 Python 版

from fractions import Fraction

solve_x = lambda a, b, c: b * c / a
share_pct = lambda a, b: a / (a + b) * 100

def simplify_ratio(a, b):
    x, y = Fraction(str(a)), Fraction(str(b))
    return f"{x / y.numerator * y.denominator.numerator:.0f}"  # 简化场景

# 更稳的化简:
def ratio(a, b):
    x, y = Fraction(str(a)), Fraction(str(b))
    k = x / y
    return f"1:{k}" if k < 1 else f"{1 / k}:1"

ratio(0.5, 1.25)   # "2:5"

常见问题

比例的基本性质是什么?

在 A:B = C:D 中,两外项之积(A×D)等于两内项之积(B×C)。这是求第四项的依据:D = B×C÷A。

化简后比原比例还直观吗?

化简只改变数字大小,不改变比值。2:3 和 8:12 表示完全相同的比例关系,但 2:3 更容易看出倍数关系,也便于配料时心算。

占比和比例是一回事吗?

不是。比例是两数相除(3:7 ≈ 0.43),占比是部分占整体的百分比(3 占 3+7 的 30%)。同一个「3:7」,两个角度的数字不同。

比例和比有什么区别?

比是「a : b」这样一个关系式;比例是「a : b = c : d」两个比相等的等式。比例的核心性质是内项之积等于外项之积(ad = bc),据此可由已知三项求出第四项,这正是本工具「求 x」模式的原理。

怎么求比例的第四项?

由 a : b = c : x 得 x = b × c ÷ a。例如 2 : 3 = 4 : x,则 x = 3 × 4 ÷ 2 = 6。这就是「交叉相乘」,把已知的三个数按内项外项的对应关系代入即可,注意不能错位。

配比时怎么根据比例算用量?

先算总份数(各比项相加),再用总量除以总份数得到「一份」的量,最后乘各比项。例如混凝土按 1 : 2 : 3 配、总量 600 kg,共 6 份、每份 100 kg,则水泥 100、砂 200、石 300。

3 : 7 的占比为什么是 30%?

占比 = 部分 ÷ 总和 × 100 = 3 ÷ (3 + 7) × 100% = 30%。比例是「3 比 7」,两个数互为参照;占比是「3 占 10 的 30%」,以一个总数(100%)为参照。两者数值口径不同,不要混用。

延伸阅读

来自本站原创文章,讲清这个工具背后的算法与口径。