折扣計算機

100 打 8 折(減 20%)是 80。先減 20% 再減 10%,實際是減 28%,要付 72 而不是 70。減 20% 後賣 80 的商品,原價是 100。

問題解決了嗎?

使用方式

  1. 在「售價」輸入原價和折扣(%)。有第二、第三個折扣時也一併輸入。
  2. 查看要付的金額、省下的金額和實際折扣。折上折時也會顯示每一步的計算。
  3. 已知售價和折扣想算原價,用「原價」;已知兩個價格,用「折扣率」。

計算方式

售價 = 原價 × (1 − 折扣 ÷ 100)。例如 100 減 20% 是 100 × 0.80 = 80,便宜了 20。台灣習慣說的「8 折」就是減 20%。

折上折是相乘:最終價格 = 原價 × (1 − d1) × (1 − d2) × (1 − d3)。實際折扣 = 1 − (1 − d1)(1 − d2)(1 − d3)。

所以減 20% 再減 10% 是 1 − 0.80 × 0.90 = 28%,不是 30%。第二個折扣是打在已經降過的價格上。

從售價推原價:原價 = 售價 ÷ (1 − 折扣 ÷ 100)。減 20% 後是 80,原價就是 80 ÷ 0.80 = 100。

折扣率 = (原價 − 售價) ÷ 原價 × 100。折上折的順序對調,最終價格不變,因為乘法不受順序影響。

為什麼減 20% 再減 10% 不是減 30%

每個折扣都打在前一個折扣之後的價格上。100 減 20% 是 80,再減 80 的 10%(8)是 72。總共便宜 28,不是 30。

下表列出實際的總折扣,以及單純把百分比相加的數字。兩次減 50% 也不會變免費:100 先變 50,再變 25。

原價折扣最終價格實際總折扣單純相加
10020%8020%20%
10020% + 10%7228%30%
10050% + 50%2575%100%
20030% + 20% + 10%100.849.6%60%
8015% + 15%57.827.75%30%

求打折前的原價

減 20% 後賣 80 的商品,原價不是 80 加 20%。20% 是從原價扣掉的,所以原價 = 80 ÷ (1 − 0.20) = 100。80 加 20% 得到 96,是錯的。

求折扣率

折扣率(%)= (原價 − 售價) ÷ 原價 × 100。從 100 降到 80 是 20%。售價高於原價時折扣率是負的,代表漲價。

尾數處理

價格顯示到小數點後 2 位,但計算時保留全部位數,所以折扣疊再多次,尾數誤差也不會累積。實際商店每一步都會進位或捨去,和收銀機的金額可能有一點差距。

常見問題

8 折再 9 折等於 7 折嗎?

不是。第二個折扣打在已經降過的價格上。8 折再 9 折合計是 72 折(減 28%),100 元的東西要付 72 元,不是 70 元。

折扣的順序會影響結果嗎?

不會。先 9 折再 8 折,或先 8 折再 9 折,最後價格都一樣,因為都只是乘上 0.90 和 0.80。

怎麼從售價算原價?

用售價除以「1 減折扣(小數)」。減 20%(8 折)就除以 0.80。把售價加 20% 會算錯。

兩個價格差幾 % 怎麼算?

原價減售價,除以原價再乘 100。從 59.99 降到 41.99,大約是減 30%(7 折)。

折扣是固定金額不是百分比時呢?

直接相減。100 元用 15 元折價券就是 85 元。想知道等於幾 %,在「折扣率」模式輸入 100 和 85。

任何貨幣都能用嗎?

可以。只要輸入同一種貨幣的數字,結果也是同一個單位。