คำสั่งเงื่อนไข (Selection) – if
คำสั่ง if เป็นคำสั่งที่ต้องมีการตรวจสอบเงื่อนไข ถ้าเงื่อนไขเป็นจริงจึงทำคำสั่งที่ต้องการให้ทำ ถ้าเป็นเท็จก็จะข้ามคำสั่งนั้นไป รูปแบบคำสั่งมีดังนี้
if (เงื่อนไข) คำสั่งที่ต้องทำ ถ้าเงื่อนไขเป็นจริง;
หรือ
if (เงื่อนไข){ กลุ่มคำสั่งที่ต้องทำ ถ้าเงื่อนไขเป็นจริง; }
ลองบันทึกผลลัพธ์จากโปรแกรมตัวอย่างต่อไปนี้
ตัวอย่างที่ 23 ป้อนเลขครั้งที่ 1 เลขมากกว่า 80 ป้อนเลขครั้งที่ 2 เลขน้อยกว่า 80
#include<stdio.h> int main(){ int time; scanf("%d",&time); if(time>=80) printf("YourPass\n"); printf("End Program\n"); return 0; }
ตัวอย่างที่ 24 ป้อนเลขครั้งที่ 1 เลขมากกว่า 80 ป้อนเลขครั้งที่ 2 เลขน้อยกว่า 80
#include<stdio.h> int main(){ int time; scanf("%d",&time); if(time>=80){ printf("YourPass\n"); printf("time = %d\n",time); } printf("End Program\n"); return 0; }
คำสั่งเงื่อนไข (Selection) – if…else
คำสั่ง if..else เป็นคำสั่งที่ต้องมีการตรวจสอบเงื่อนไข ถ้าเงื่อนไขเป็นจริงจึงทำคำสั่งที่ต้องการให้ทำ ถ้าเป็นเท็จให้ไปทำคำสั่งที่อยู่หลัง else รูปแบบคำสั่งมีดังนี้
if (เงื่อนไข) คำสั่งที่ต้องทำ ถ้าเงื่อนไขเป็นจริง; else คำสั่งที่ต้องทำ ถ้าเงื่อนไขเป็นเท็จ;
หรือ
if (เงื่อนไข){ กลุ่มคำสั่งที่ต้องทำ ถ้าเงื่อนไขเป็นจริง; } else{ กลุ่มคำสั่งที่ต้องทำ ถ้าเงื่อนไขเป็นเท็จ; }
ลองบันทึกผลลัพธ์ จากโปรแกรมตัวอย่างต่อไปนี้
ตัวอย่างที่ 25 ป้อนเลขครั้งที่ 1 เลขมากกว่า 80 ป้อนเลขครั้งที่ 2 เลขน้อยกว่า 80
#include<stdio.h> int main(){ int time; scanf("%d",&time); if(time>=80) printf("YourPass\n"); else printf("NotPass\n"); printf("End Program\n"); return 0; }
ตัวอย่างที่ 26 ป้อนเลขครั้งที่ 1 เลขมากกว่า 80 ป้อนเลขครั้งที่ 2 เลขน้อยกว่า 80
#include<stdio.h> int main(){ int time; scanf("%d",&time); if(time>=80){ printf("YourPass\n"); printf("time = %d\n",time); }else{ printf("NotPass\n"); printf("time = %d\n",time); } printf("End Program\n"); return 0; }
—–
Anyone who has never made a mistake has never tried something new.
คนที่ไม่เคยทำผิดพลาดเลย คือคนที่ไม่เคยลองทำอะไรใหม่ ๆ
อัลเบิร์ต ไอน์สไตน์
คำสั่งเงื่อนไข (Selection) – if..else if.
คำสั่ง if..else if.. เป็นคำสั่งที่ต้องมีการตรวจสอบเงื่อนไข ถ้าเงื่อนไขเป็นจริงจึงทำคำสั่งที่ต้องการให้ทำ ถ้าเป็นเท็จให้ไปตรวจสอบเงื่อนไขของ if ถัดไป เมื่อเป็นเท็จทุกกรณีจึงทำคำสั่งที่อยู่หลัง else รูปแบบคำสั่งมีดังนี้
if (เงื่อนไข1) คำสั่งที่ต้องทำ ถ้าเงื่อนไข 1 เป็นจริง; else if (เงื่อนไข2) คำสั่งที่ต้องทำ ถ้าเงื่อนไข 2 เป็นจริง; else if (เงื่อนไข n) คำสั่งที่ต้องทำ ถ้าเงื่อนไข n เป็นจริง; else คำสั่งที่ต้องทำ ถ้าเงื่อนไขเป็นเท็จ;
หรือ
if (เงื่อนไข1){ กลุ่มคำสั่งที่ต้องทำ ถ้าเงื่อนไข 1 เป็นจริง; }else if (เงื่อนไข2){ กลุ่มคำสั่งที่ต้องทำ ถ้าเงื่อนไข 2 เป็นจริง; }else if (เงื่อนไข n){ กลุ่มคำสั่งที่ต้องทำ ถ้าเงื่อนไข n เป็นจริง; }else{ กลุ่มคำสั่งที่ต้องทำ ถ้าเงื่อนไขเป็นเท็จ; }
ลองบันทึกผลลัพธ์ จากโปรแกรมตัวอย่างต่อไปนี้
ตัวอย่างที่ 27
ป้อนเลขครั้งที่ 1 เลขมากกว่า 100
ป้อนเลขครั้งที่ 2 เลขน้อยกว่า 100
ป้อนเลขครั้งที่ 3 เลข 100
#define TARGET 100 #include<stdio.h> int main(){ int num; scanf("%d",&num); if(num>TARGET) printf("High\n"); else if(num<TARGET) printf("Low\n"); else printf("Correct!!!\n"); printf("End Program\n"); return 0; }
คำสั่งเงื่อนไข (Selection) – switch..case
คำสั่ง switch..case เป็นคำสั่งทางเลือกรูปแบบหนึ่ง ใช้ได้กับตัวเลือกที่เป็นเลขจำนวนเต็มและอักขระเท่านั้น รูปแบบคำสั่งมีดังนี้
switch(ตัวแปร){ case <label> : คำสั่งที่ต้องการให้ทำ; case <label> : คำสั่งที่ต้องการให้ทำ; case <label> : คำสั่งที่ต้องการให้ทำ; case <label> : คำสั่งที่ต้องการให้ทำ; default : คำสั่งที่ต้องการให้ทำ; }
ลองบันทึกผลลัพธ์ จากโปรแกรมตัวอย่างต่อไปนี้
ตัวอย่างที่ 28
ป้อนเลขจำนวนเต็ม 1-5
ป้อนเลขนอกเหนือจาก 5
#include<stdio.h> int main(){ int day; scanf("%d",&day); switch(day){ case 1 : printf("Monday\n"); case 2 : printf("Tuesday\n"); case 3 : printf("Wednesday\n"); case 4 : printf("Thursday\n"); case 5 : printf("Friday\n"); default : printf("Weekend\n"); } printf("End Program\n"); return 0; }
ตัวอย่างที่ 29
ป้อนอักขระ A, B, K, O, S
ป้อนอักขระอื่นๆ
#include<stdio.h> int main(){ char fruit; scanf("%c",&fruit); switch(fruit){ case 'A' : printf("Apple\n"); case 'B' : printf("Banana\n"); case 'K' : printf("Kiwi\n"); case 'O' : printf("Oragne\n"); case 'S' : printf("Strawberry\n"); default : printf("Other fruits\n"); } printf("End Program\n"); return 0; }
คลิปศึกษาเพิ่มเติมสำหรับคำสั่งเงื่อนไข
หลังจากที่ได้เรียนเกี่ยวกับคำสั่งเงื่อนไขประเภทต่างๆ ในภาษาซีเรียบร้อยแล้ว หลายๆ คนอาจจะยังไม่เห็นภาพหรือเข้าใจการทำงานของคำสั่งเงื่อนไขอย่างชัดเจน เพื่อให้สามารถเข้าใจการทำงานของการเขียนโปรแกรมคำสั่งเงื่อนไขด้วยภาษาซีได้ดียิ่งขึ้น ในบททนี้จะมีคลิปสอนเกี่ยวกับคำสั่งเงื่อนไข พร้อมตัวอย่างต่างๆ
อ้างอิงจาก รศ.ดร.ประเสริฐ คณาวัฒนไชย คณะพาณิชยศาสตร์และการบัญชี จุฬาลงกรณ์มหาวิทยาลัย
——
Imagination is more important than knowledge.
Knowledge is limited. Imagination encircles the world.
จินตนาการสำคัญกว่าความรู้
เพราะความรู้นั้นมีจำกัด แต่จินตนาการมีอยู่ทุกพื้นที่บนโลก
อัลเบิร์ต ไอน์สไตน์
No Comments