การทำงานแบบวนซ้ำและมีทางเลือก

0
3113

การทำงานแบบวนซ้ำ

ในการเขียนโปรแกรมมีหลายกรณีที่ต้องมีการทำงานแบบซ้ำ ๆ กัน ซึ่งทำให้ต้องเขียนคำสั่งชุดเดียวกันซ้ำกันหลายครั้ง เพื่อให้การทำงานมีประสิทธิภาพ ดังนั้นจึงต้องอาศัยคำสั่งวนซ้ำ (Loop Statement) เพื่อช่วยให้การเขียนคำสั่งสั้นลง โดยมีรูปแบบดังนี้

                  For ตัวแปร in ลิสต์ :

                           ชุดคำสั่ง

ตัวอย่าง เขียนโปรแกรมที่รับชื่อ นามสกุล แล้วพิมพ์ซ้ำออกทางจอภาพ 3 ครั้ง

ตัวอย่างการใช้คำสั่ง

ผลลัพธ์ที่ได้

ผังการทำงานของโปรแกรม


การทำงานแบบมีทางเลือก

การทำงานแบบมีทางเลือกเป็นการเขียนคำสั่งที่ไม่จำเป็นต้องทำงานทุกคำสั่ง แต่จะทำงานเมื่อมีเงื่อนไขเป็นจริงตามที่ระบุเท่านั้น โดยมีรูปแบบดังนี้

                  if เงื่อนไขทางเลือก :

                           ชุดคำสั่ง

ตัวอย่าง เขียนโปรแกรมที่รับค่าคะแนนของนักเรียนจำนวนไม่เกิน 100 คะแนน โดยเก็บไว้ในตัวแปร x ถ้าใส่คะแนนน้อยกว่า 50 คะแนน ให้โปรแกรมแสดงคำว่า “น้อยเกินไป ควรปรับปรุง” ถ้าใส่คะแนนมากกว่า 50 คะแนน ให้โปรแกรมแสดงคำว่า “ดีมาก” และถ้าใส่คะแนน 50 คะแนน ให้โปรแกรมแสดงคำว่า “ดี”

ตัวอย่างการใช้คำสั่ง

ผลลัพธ์ที่ได้


ในบางสถานการณ์ การเขียนโปรแกรมอาจมีการทำงานมากกว่าหนึ่งเงื่อนไข เราสามารถใช้คำสั่ง if-else ได้ โดยมีรูปแบบการใช้งานดังนี้

                  if เงื่อนไขทางเลือก :

                           ชุดคำสั่งที่ 1

                  else :

                           ชุดคำสั่งที่ 2

โดยถ้าเงื่อนไขทางเลือกเป็นจริงแล้ว จะทำตามคำสั่งชุดที่ 1 ไม่เช่นนั้นจะทำตามคำสั่งในชุดที่ 2

ตัวอย่าง เขียนโปรแกรมเกมทายเลข โดยจะกำหนดเลขไว้ในโปรแกรม 1 หมายเลข แล้วให้ผู้ใช้ทาย ถ้าทายถูกให้โปรแกรมแสดงคำว่า “ยินดีด้วย คุณทายถูก” แต่ถ้าทายไม่ถูกให้แสดงคำว่า “คุณยังทายไม่ถูก เสียใจด้วย”

ตัวอย่างการใช้คำสั่ง

ผลลัพธ์ที่ได้


กิจกรรม ให้นักเรียนเขียนโปรแกรมเพื่อคำนวณเกรดในรายวิชาต่าง ๆ โดยกรอกคะแนนเก็บทั้งหมด ถ้าได้คะแนนมากกว่า 80 คะแนน ให้โปแรกรมแสดงคำว่า “คุณได้เกรด 4” ถ้าได้คะแนน 75-79 คะแนน ให้โปแรกรมแสดงคำว่า “คุณได้เกรด 3.5” ถ้าได้คะแนน 70-74 คะแนน ให้โปแรกรมแสดงคำว่า “คุณได้เกรด 3” ถ้าได้คะแนน 65-69 คะแนน ให้โปแรกรมแสดงคำว่า “คุณได้เกรด 2.5” ถ้าได้คะแนน 60-64 คะแนน ให้โปแรกรมแสดงคำว่า “คุณได้เกรด 2” ถ้าได้คะแนน 55-59 คะแนน ให้โปแรกรมแสดงคำว่า “คุณได้เกรด 1.5” ถ้าได้คะแนน 50-59 คะแนน ให้โปแรกรมแสดงคำว่า “คุณได้เกรด 1” ถ้าได้คะแนนน้อยกว่า 50 คะแนน ให้โปแรกรมแสดงคำว่า “คุณได้เกรด 0”