判斷條件練習
練習一:判斷是否及格
請你自己寫出一段程式碼,是判斷一個叫做 score 的變數是否及格(超過或剛好 60 分),如果及格的話就輸出 pass,否則輸出 fail。
進階練習:
除了判斷是否及格以外,也請你對滿分做出特別判斷,如果是 100 分的話就輸出 you are no1!
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| function pass(score) { if (score < 60) { console.log('不及格,但沒關係,再接再厲!'); } else if (score === 100) { console.log('你真是好棒棒!'); } else if (score > 100 || score < 0) { console.log('咦,沒這樣的分數耶'); } else if (typeof score !== Number) { console.log('輸入的不是數字型態'); } else { console.log('恭喜,及格了'); } } pass(100);
|
練習二:BMI 計算
假設體重是 70,身高是 180(1.8m),BMI 就是 70/(1.8*1.8) = 21。
現在請你寫出一個簡單的 BMI 計算器,用兩個變數代表體重跟身高,算出 BMI 之後判斷 BMI 是落在哪個範圍內並輸出相對應的字串。
體重過輕:BMI < 18.5
正常範圍:18.5 <= BMI < 24
過重:24 <= BMI < 27
輕度肥胖:27 <= BMI < 30
中度肥胖:30 <= BMI < 35
重度肥胖:35 <= BMI
這題原本做時一直多一個 undefined ,後來請教 hu 大才理解,console.log() 是印出,return 是回傳,印出是印出、回傳是回傳。如果在程式裡使用 console.log(),那麼呼叫程式時就不需用 console.log(),如果程式內是用 return 那麼呼叫函式時就要用 console.log() 來印出在螢幕上。
一般建議用 return ,function 裡面不要出現 console.log 讓程式保持乾淨。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| function testBMI2(weight, height) { height = height * 0.01; var bmi = weight / (height * height); bmi = parseFloat(bmi).toFixed(1);
if (bmi < 18.5) { return 'BMI為:' + bmi + ' 您的體重過輕'; } else if (bmi >= 18.5 && bmi < 24) { return 'BMI為:' + bmi + ' 您的體重正常'; } else if (bmi >= 24 && bmi < 27) { return 'BMI為:' + bmi + ' 您的體重過重'; } else if (bmi >= 27 && bmi < 30) { return 'BMI為:' + bmi + ' 您的體重為輕度肥胖'; } else if (bmi >= 30 && bmi < 35) { return 'BMI為:' + bmi + ' 您的體重過輕為中度肥胖'; } else if (bmi >= 35) { return 'BMI為:' + bmi + ' 您的體重過輕為重度肥胖'; } else { return '輸入資料不正確'; } } console.log(testBMI2('s', 162));
|