【PHP/演習問題】else文[2]
問題
お店のお会計で割引を適用するプログラムを作成してください。
なお、下記の条件を満たすものとします。
- 合計金額は『単価×個数』で計算する
- 単価と個数はコマンドライン引数で与える(単価、個数の順)
- 割引の条件
15%OFF 合計金額が10,000円以上
10%OFF 合計金額が5,000円以上または個数が10個以上
5%OFF 個数が5個以上
3%OFF 上記条件に当てはまらない場合
$ php practice.php 1500 14
割引率 : 15%
割引金額 : 3150円
合計金額(割引前) : 21000円
合計金額(割引後) : 17850円
$ php practice.php 100 4
割引率 : 3%
割引金額 : 12円
合計金額(割引前) : 400円
合計金額(割引後) : 388円
解答例
<?php
// 単価
$price = $argv[1];
// 個数
$unit = $argv[2];
// 合計金額(割引前)
$subtotal = $price * $unit;
// 合計金額(割引後)
$total = $subtotal;
// 割引金額
$discount = 0;
// 割引率
$discount_rate = 0;
// 割引の適用
if( $subtotal >= 10000 ) {
$discount_rate = 0.15;
} else if( $subtotal >= 5000 || $unit >= 10) {
$discount_rate = 0.1;
$total = $subtotal - $discount;
} else if( $unit >= 5 ) {
$discount_rate = 0.05;
} else {
$discount_rate = 0.03;
}
$discount = $subtotal * $discount_rate;
$total = $subtotal - $discount;
echo '割引率 : '.($discount_rate * 100)."%\n";
echo '割引金額 : '.$discount."円\n";
echo '合計金額(割引前) : '.$subtotal."円\n";
echo '合計金額(割引後) : '.$total."円\n";
?>