打折计算器
输入原价与折扣(如 8 折)立即得到折后价与节省金额;满减规则自动按倍数叠加计算;两种优惠一键比价,直接告诉你哪个更划算、差多少钱。
结账前最纠结的一幕:用 8 折,还是凑「满 300 减 60」?凑单凑进去的可能是不需要的东西,不凑又觉得亏。把原价、折扣和满减规则都填进来,两种优惠各算各的、当场比价,差多少钱直接告诉你,不用再在收银台前心算。
比价口径提醒:满减要看「凑单后总价」——买 180 差 20 到满减线时,凑单 20 元实付可能比直接打折更低,但多买了不需要的东西;折扣与满减可叠加时先折后满减通常更优(基数变小),具体以商家规则为准。
这个工具解决你的问题了吗?
提交后会把工具名、你的输入与当前结果发送到服务器;请勿填写身份证号、手机号等隐私信息。
AI 助手 会结合你当前的输入与结果回答
追问会再次把当前输入与结果发送到服务器;请勿填写隐私信息。
使用步骤
- 输入原价,填折扣(8 折)或满减规则(满 200 减 50)。
- 看折后价与节省金额;满减自动按倍数叠加。
- 两种优惠都填,看比价结论与差额。
- 按更优方案下单;凑单前算一下实付单价。
计算原理与示例
折扣计算
折扣计算:到手价 = 原价 × 折扣 ÷ 10。例如 299 元打 8 折 = 239.2 元,节省 59.8 元(约省 20%)。
满减计算
满减计算:可叠加满减按「原价 ÷ 门槛」取整次数减免。例如 650 元满 300 减 50:可减 2 次,到手 550 元。
折扣与满减比价
比价:同一商品分别按折扣与满减算到手价,显示更优方案与差价。
代码示例
JavaScript 折扣与满减比价
function discount(price, rate) { // rate=0.8 即 8 折
return price * rate;
}
function fullCut(price, per, cut) { // 满 per 减 cut,按倍数叠加
return price - Math.floor(price / per) * cut;
}
fullCut(450, 200, 50); // 350(减两个 50)
// 比价:discount(450, 0.8)=360 vs fullCut=350 → 满减更省 10 元
Python 同逻辑的 Python 版
discount = lambda price, rate: price * rate
full_cut = lambda price, per, cut: price - price // per * cut
full_cut(450, 200, 50) # 350
discount(450, 0.8) # 360.0
常见问题
「8 折」「8.5 折」怎么输入?
直接输入 8 或 8.5 即可,也可以输入 0.8、0.85 的小数形式,工具会自动识别;输入超过 10 的数字会提示无效。
满减可以和折扣叠加吗?
本工具先分别计算两种方案再比价。若商家允许叠加,一般按「先折扣后满减」顺序:先算出折扣价,再用折扣价套满减门槛。
为什么满减有时不如折扣?
满减有门槛:金额刚过门槛时省得最多,差一点到门槛就完全不享受。两种方案差价很小时,优先选含赠品或包邮的方案。
折后价怎么算?
折后价 = 原价 × 折扣 ÷ 10。8 折就是原价 × 0.8,8.5 折是 × 0.85;节省金额 = 原价 − 折后价。若商家标「满 200 减 40」,要按实际支付金额算折扣率,才能和打折公平比较。
「满 200 减 40」相当于打几折?
刚好买 200 元时相当于 8 折(减 40 即付 80%);买 300 元仍是减 40,相当于约 8.67 折。满减的折扣率随金额变化,金额越大折扣越弱,为凑单多花钱往往并不划算。
打折和「第二件半价」哪个更划算?
第二件半价相当于两件总价打 7.5 折(1 + 0.5) ÷ 2 = 0.75)。如果本来就打算买两件,它比 8 折划算;如果只需要一件,为凑半价多买一件通常反而多花钱。
怎么快速心算 8 折、9 折的价格?
先算「减掉的部分」比直接乘更快:9 折 = 原价减 10%,8 折 = 原价减 20%,7.5 折 = 原价减 25%。例如 280 打 7.5 折,即 280 − 70 = 210 元。
延伸阅读
来自本站原创文章,讲清这个工具背后的算法与口径。