百分比计算器
转换所有处理都在浏览器本地完成,数据不上传服务器
输入
把文件拖到这里可直接载入
输出
百分比的问题看起来只有一种,其实常见问法有五类:某数的百分之几是多少、一个数是另一个数的百分之几、从 A 变到 B 涨跌了百分之几、加价或打折之后是多少、两个百分比之间差多少。多数计算器一次只回答一类,而这个工具把同一组数能回答的问法一次全给出来。 有两个地方最容易算错,这里都单独标了出来。变化率的分母是「原值」,所以方向不对称:100 变到 120 是增长 20%,而 120 变回 100 是减少 16.67%,不是 20%。「百分点」与「百分比」是两回事:15% 比 20% 低 5 个百分点,但相对 20% 是低 25%,新闻里最常混淆的就是这一对。 输入支持中文、英文、日文三种问法,认不出来的一行会明确指出行号与原文,不会静默跳过。 全部在浏览器本地计算,不联网、不上传。
功能
- 一次给出同一组数的常见问法:占比、变化率、加价打折、百分点对比
- 变化率的分母取原值,并同时给出反方向(100→120 是 +20%,120→100 是 −16.67%)
- 「百分点」与「百分比」分成两行分别写清楚
- 加价再减同样的百分比回不到原值,单列一行并注明差了多少
- 打折支持「打 8 折」这类中文说法,也支持英文 percent off
- 中英日三种问法都认,一行一个问法
- 认不出来的一行会报错并指出行号,不静默跳过
- 小数位数可调
- 全部在浏览器本地完成,数据不上传
使用方法
- 一行一个问法,例如「120 的 15%」「18 是 120 的百分之几」「从 100 变到 120」「100 打 8 折」
- 需要的话调整小数位数
- 结果实时出现,每一行都能单独复制
常见问题
- 为什么 120 变到 100 不是减少 20%?
- 因为变化率的分母是原值。120→100 的变化量是 −20,除以原值 120 得到 −16.67%;而 100→120 是 +20 除以 100 得到 +20%。两个方向的分母不同,所以百分比也不对称 —— 这是定义使然,不是算错了。
- 「低 5 个百分点」和「低 25%」有什么区别?
- 这是两个不同的量。百分点是两个百分比相减(20% − 15% = 5 个百分点);百分比要再除以参照的那个值(5 ÷ 20 = 25%)。同一个对比在新闻里常只写一个,容易误导,所以这里两行都给。
- 100 加 15% 再减 15%,为什么不是 100?
- 因为第二次的 15% 是以 115 为基数算的:115 × 0.85 = 97.75,比 100 少了 2.25。加价与减价的百分比不能相互抵消,结果里会把这个差值单独标出来。
相关工具
分数计算
转换分数约分、最大公约数与最小公倍数、小数转分数、分数四则运算。全程用 BigInt 计算,超大整数不会丢精度。
数值列表求和
文本把一列数字加起来:合计、平均、中位数、极值、极差、方差、标准差、众数与四分位数一次给全,跳过的非数字项会列出来。
数学表达式计算
网络逐行求值数学表达式:优先级与括号、幂与开方、三角与对数函数,还能定义变量复用。不使用 eval。
时间戳转换
转换把 Unix 时间戳还原成日期时间,或反过来。秒 / 毫秒 / 微秒 / 纳秒自动识别,支持小数、负数与 Windows FILETIME。全部在浏览器本地完成。
日期计算
转换算两个日期之间相差多少天,或给一个日期加减若干天、周、月。日期用日历挑或直接粘贴,结束日期留空就与今天比较。全部在浏览器本地完成。
进制转换
转换在二、八、十、十六、36、64 进制之间互转,六种结果一次全部给出,19 位的雪花 ID 也能一位不差。全部在浏览器本地完成。