ใบความรู้ที่ 3.3
โครงสร้าง if หลายชั้น
ในบางโปรแกรม เราจำเป็นต้องเขียนโครงสร้าง if (หรือ if...else) ซ้อนไว้ภายใต้โครงสร้างของคำสั่ง if อีกอันหนึ่ง โดยเฉพาะอย่างยิ่งโปรแกรมที่ต้องตรวจสอบเงื่อนไขมากกว่าสองเงื่อนไข ซึ่งมี
รูปแบบการใช้งานโดยทั่วไปดังนี้
if (condition1)
statement1;
else if
(condition2)
statement2;
else if
(condition3)
statement3;
:
else
statementN;
|
จากรูปแบบด้านบน statement1 จะถูกเรียกทำงานเมื่อเงื่อนไข condition1 เป็นจริง ลอง
พิจารณา statement2 จะเห็นว่ามันถูกควบคุมด้วยเงื่อนไข condition2 และยังอยู่ภายใต้ else
ของโครงสร้าง if อันบนสุด จึงทำให้ statement2 นี้ถูกเรียกทำงานเมื่อเงื่อนไข condition2 เป็น
จริงและเงื่อนไข condition1 เป็นเท็จเท่านั้น ในทำนองเดียวกัน คำสั่ง condition3 จะถูกเรียก
ทำงานเมื่อเงื่อนไข condition1 และ condition2 ทั้งคู่เป็นเท็จ และเงื่อนไข condition3 เป็น
จริงเท่านั้น และสุดท้ายคือ statementN ซึ่งจะถูกเรียกทำงานเมื่อเงื่อนไขทั้งหมดข้างต้นเป็นเท็จ
ตัวอย่างที่ 3.4 พิจารณากระบวนการตัดเกรดนักเรียนโดยพิจารณาจากคะแนนสอบไล่ที่ได้ตามตาราง
เงื่อนไข
|
ระดับคะแนน
|
ได้คะแนนน้อยกว่า 50
|
F
|
ได้คะแนนตั้งแต่ 50 แต่น้อยกว่า 60
|
D
|
ได้คะแนนตั้งแต่ 60 แต่น้อยกว่า 70
|
C
|
ได้คะแนนตั้งแต่ 70 แต่น้อยกว่า 80
|
B
|
ได้คะแนนตั้งแต่ 80 ขึ้นไป
|
A
|
เราสามารถเขียนโปรแกรมเพื่อทำงานดังกล่าวโดยใช้โครงสร้าง if หลายชั้นดังนี้
if (point <
50)
Console.WriteLine("Grade F");
else if (point
< 60)
Console.WriteLine("Grade D");
else if (point
< 70)
Console.WriteLine("Grade C");
else if (point
< 80)
Console.WriteLine("Grade B");
else
Console.WriteLine("Grade A");
|
ไม่มีความคิดเห็น:
แสดงความคิดเห็น