Page 159 - เอกสารประกอบการสอนพื้นฐานการเขียนโปรแกรมคอมพิวเตอร์
P. 159
158
เฉลยแบบฝึกหัด
หน่วยที่ 4 เรื่อง การเขียนโปรแกรมโครงสร้างแบบมีทางเลือกและแบบท าซ้ า
แนวค าตอบ
1. โปรแกรมโครงสร้างแบบมีทางเลือกใช้ค าสั่งตรวจสอบเงื่อนไข 3 แบบ ดังนี้
1.1 เงื่อนไขจริงหรือเท็จจึงกระท าอย่างใดอย่างหนึ่ง
1.2 เงื่อนไขจริงหรือเท็จต่างก็ต้องกระท า
1.3 เงื่อนไขที่มีให้เลือกมากกว่า 2 ทาง
2. เงื่อนไขที่ง่ายที่สุดของโปรแกรมโครงสร้างแบบมีทางเลือก คือ เงื่อนไขจริงหรือเท็จจึงกระท าอย่าง
ใดอย่างหนึ่ง โดย if จะมีทางเลือกให้เพียงทางเดียวเท่านั้น ถ้าเงื่อนไขเป็นจริงจะท าค าสั่งตามที่
ก าหนดหลัง if หากมีค าสั่งให้ท ามากกว่า 1 ค าสั่งจะต้องอยู่ภายในเครื่องหมาย { } ถ้าเงื่อนไขเป็นเท็จ
จะหลุดจากเงื่อนไข มีรูปแบบดังนี้
รูปแบบ ค าสั่ง if
if (เงื่อนไขที่จะตรวจสอบ) ค าสั่งที่ให้ท า;
กรณีที่มีค าสั่งให้ท ามากกว่า 1 ค าสั่ง
if (เงื่อนไขที่จะตรวจสอบ) {ค าสั่งที่ให้ท า1;
ค าสั่งที่ให้ท า2;}
3. โปรแกรมโครงสร้างแบบมีทางเลือกหลายทางสามารถเลือกใช้ค าสั่งตรวจสอบเงื่อนไขได้ 2 แบบ
3.1 if…else if… เป็นเงื่อนไขที่มีความซับซ้อนมากขึ้น โดยถ้าเงื่อนไขเป็นจริงจะท าค าสั่ง
ตามที่ก าหนดหลัง if หากมีค าสั่งให้ท ามากกว่า 1 ค าสั่งจะต้องอยู่ภายในเครื่องหมาย { } ถ้าเงื่อนไข
เป็นเท็จจะท าการตรวจสอบเงื่อนไข if หลัง else อีก โดยจะท าการตรวจสอบไปเรื่อย ๆจนกว่าจะ
ครบทุกเงื่อนไข ข้อดีคือการเปรียบเทียบสามารถกระท าได้กับทุกเครื่องหมายเปรียบเทียบ ข้อเสียคือมี
ความซับซ้อนมาก
3.2 switch…case จะน าค่าของตัวแปรที่อยู่หลังค าสั่ง switch มาเปรียบเทียบกับค่าที่อยู่
หลัง case แต่ละค าสั่ง ถ้าตรงกัน ก็จะท างานตามค าสั่งที่อยู่ใน case นั้น ๆ แต่ถ้าไม่ตรงกับ case ใด
ๆ เลยจะท าค าสั่งที่อยู่หลัง default ข้อดีของค าสั่ง switch…case คือใช้งานง่ายเหมาะกับทางเลือก
ที่มีหลาย ๆ ทางเลือก ส าหรับข้อเสียคือใช้ได้กับตัวแปรที่เป็นค่าคงที่ประเภทจ านวนเต็ม (int) หรือตัว
แปรที่เป็นค่าคงที่ประเภทตัวอักษรตัวเดียว (char) เท่านั้น และความหมายในการเปรียบเทียบทาง
ตรรกะที่ใช้คือเท่ากับ (==)เท่านั้น
4. โปรแกรมโครงสร้างแบบท าซ้ ามีอยู่ 3 แบบ ดังนี้
4.1 การท าซ้ า แบบ (for…)
4.2 การท าซ้ า แบบ (while)
4.3 การท าซ้ า แบบ (do….while)