題目2:企業發放的獎金根據利潤提成。利潤 (I) 低于或等于 10 萬元時,獎金可提 10% ;利潤高于 10 萬元,低于 20 萬元時,低于 10 萬元的部分按 10% 提成,高于 10 萬元的部分,可可提成 7.5% ; 20 萬到 40 萬之間時,高于 20 萬元的部分,可提成 5% ; 40 萬到 60 萬之間時高于 40 萬元的部分,可提成 3% ; 60 萬到 100 萬之間時,高于 60 萬元的部分,可提成 1.5% ,高于 100 萬元時,超過 100 萬元的部分按 1% 提成,從鍵盤輸入當月利潤 I ,求應發放獎金總數 。
分析:這例子,邏輯上并不復雜,這是多了很多些判斷條件,所以我們很容易通過if..else 語句算出來,但需要注意的是,除了小于等于10萬外,下一個條件的運算結果都是建立在上一個條件上的,所以我們可以給沒個條件計算的結果聲明一個變量,并保存起來,如下所示:
<!DOCTYPE html>
<html>
<head>
<title>C 語言實例100題</title>
</head>
<body>
<script type="text/javascript">
var i = window.prompt("請輸入利潤", "i");
var bonus,
bonus1 = 100000 * 0.1, //小于等于10萬
bonus2 = bonus1 + 100000 * 0.075, //小于等于20萬
bonus4 = bonus2 + 200000 * 0.05, //小于等于40萬
bonus6 = bonus4 + 200000 * 0.03, //小于等于60萬
bonus10 = bonus6 + 400000 * 0.015; //小于等于100萬
if (i <= 100000) {
bonus = i * 0.1;
} else if (i <= 200000) {
bonus = bonus1 + (i - 100000) * 0.075;
} else if (i <= 400000) {
bonus = bonus2 + (i - 200000) * 0.05;
} else if (i <= 600000) {
bonus = bonus4 + (i - 400000) * 0.03;
} else if (i <= 1000000) {
bonus = bonus6 + (i - 600000) * 0.015;
} else if (i > 1000000) {
bonus = bonus10 + (i - 1000000) * 0.01;
}
console.log(bonus);
</script>
</body>
</html>
``