คำสั่ง If-else if
ผู้เรียนสามารถใช้คำสั่ง else if สำหรับเงื่อนไขที่สองและใช้คำสั่ง else สำหรับเงื่อนไขในกรณีที่ไม่ตรงกับเงื่อนไขใดๆ ก่อนหน้าเลย
ตัวอย่างกับโปรแกรมตรวจสอบเกรดโดยการใช้คำสั่ง if-else
using System;
class SelectionStatement
{
static void Main(string[] args)
{
int score;
Console.Write(“Enter your score: “);
int.TryParse(Console.ReadLine(), out score);
if(score >= 80) {
Console.WriteLine(“Your grade is A”);
}
else if(score >= 70) {
Console.WriteLine(“Your grade is B”);
}
else if (score >= 60) {
Console.WriteLine(“Your grade is C”);
}
else if (score >= 50) {
Console.WriteLine(“Your grade is D”);
}
else {
Console.WriteLine(“You fall”);
}
}
}
ในตัวอย่าง เป็นตัวแปรสำหรับการตรวจสอบเกรดโดยการใส่คำแนนลองไปในตัวแปร score และโปรแกรมจะนำไปคำนวณเกรดที่ได้ คือถ้าคะแนนตั้งแต่ 80 ขึ้นไปจะได้เกรด A, 70 จะได้เกรด B, 60 เกรดจะได้ C ไปเรื่อยๆ และในคำสั่ง else ไม่ตรงกับเงื่อนไขใดๆ ก่อนหน้าเลย และคุณจะสอบตก
ผลลัพธ์เมื่อลองใส่ค่าคะแนนต่างๆ ลงบนโปรแกรม
Enter your score: 82
Your grade is A
Enter your score: 70
Your grade is B
Enter your score: 49
You fall
ตัวอย่างเพิ่มเติม กับโปรแกรมแปลงอุณหภูมิโดยการใช้คำสั่ง if else
using System;
class SelectionStatement
{
static void Main(string[] args)
{
int mode;
float temperature;
Console.Write(“1: convert F to C\n2: convert C to F\n”);
Console.Write(“Enter 1 or 2: “);
int.TryParse(Console.ReadLine(), out mode);
Console.Write(“Enter temperature to be converted: “);
float.TryParse(Console.ReadLine(), out temperature);
if (mode == 1) {
float c = (temperature – 32) * (5.0f / 9.0f);
Console.WriteLine(“Converted {0} Fahrenheit degree to {1} Celsius degree”, temperature, c);
}
else if (mode == 2) {
float f = temperature * 1.8f + 32;
Console.WriteLine(“Converted {0} Celsius degree to {1} Fahrenheit degree”, temperature, f);
}
else {
Console.WriteLine(“You’ve entered wrong mode.”);
}
}
}
ตัวอย่างข้างบนเป็นโปรแกรมสำหรับแปลงอุณภูมิจากองศาเซลเซียสเป็นองศาฟาเรนไฮต์ และในทางกลับกัน มันมีสองตัวแปรในโปรแกรม ตัวแปร mode เพื่อบ่งบอกว่าคุณต้องการแปลงไปเป็นแบบไหน ยกตัวอย่างเช่น: ถ้าผู้ใช้ใส่ค่า 1 มันหมายความว่าแปลงจาก องศาฟาเรนไฮต์ ไปเป็น องศาเซลเซียส ใส่ 2 เป็นการแปลงจาก องศาเซลเซียส ไปเป็นองศาฟาเรนไฮต์ และถ้าเป็นค่าอื่นโปรแกรมจะไม่ทำงาน ตัวแปร temperature เป็นค่านำเข้าของอุณหภูมิที่ต้องการแปลง