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

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

 

                การทำงานแบบทางเลือก (Selection) หรือเรียกอีกอย่างหนึ่งว่า การทำงานแบบตัดสินใจ (Decision) นั่นคือเราสามารถให้โปรแกรมเลือกทำงานอย่างใดอย่างหนึ่งได้ โดยใช้เงื่อนไขเป็นตัวกำหนดการทำงานตามคำสั่ง โดยทั่วไปโปรแกรมจะกำหนดเอาไว้ว่าถ้าเงื่อนไขเป็นจริงโปรแกรมจะไปทำงานอย่างหนึ่ง แต่ถ้าเงื่อนไขเป็นเท็จโปรแกรมก็จะไปทำงานอีกอย่างหนึ่ง นั่นก็หมายความว่า โปรแกรมจะเลือกทำงานทิศทางใดทิศทางหนึ่งเท่านั้น เช่น เมื่อเราขับขี่รถไปถึงทางสามแยก เราจะต้องตัดสินใจไปทางใดทางหนึ่ง ไม่สามารถวิ่งไปทั้งสองทางได้ในเวลาเดียวกัน

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

                จะออกจากบ้านวันนี้จะใส่ชุดอะไร เงื่อนไขอาจจะขึ้นอยู่กับสถานที่ไป เช่น ไปโรงเรียนก็ใส่ชุดนักเรียน ไปหาเพื่อนก็ใส่ชุดสบายๆ ไปพบญาติก็ใส่ชุดสุภาพ เป็นต้น

                ดังนั้นเงื่อนไขจึงเป็นตัวกำหนดทางเลือก การกำหนดเงื่อนไขในโปรแกรมมักจะใช้คำว่า  if (ถ้า) นำหน้าเสมอ โดยมีกฎเกณฑ์ว่า ถ้าเงื่อนไขเป็นจริงจะทำอะไร ถ้าเป็นเท็จทำอะไร

                ถ้าฉันมีอายุครบ 17 ปี ฉันจะประกวดนางสาวไทย เงื่อนไขจะเป็นจริงเมื่ออายุเท่ากับ 17 (Age=17) ก็จะได้ประกวด แต่ถ้าอายุยังไม่ถึง หรืออายุอาจเลย 17 ปีแล้ว  ก็จะไม่ได้ประกวด

                ถ้าฉันเก็บเงินได้มากกว่า 1 ล้านบ้าน ฉันจะซื้อบ้าน เงื่อนไขจะเป็นจริงเมื่อมีเงินมากกว่า 1 ล้านบาท (Money>1,000,000) จะได้ซื้อบ้าน แต่ถ้ามีเงินไม่ถึง 1 ล้านบาทจะทำให้เงื่อนไขเป็นเท็จ ก็หมายความว่าไม่ได้ซื้อบ้าน

                การออกแบบโปรแกรมโดยใช้ Flowchart นั้นจะมีสัญลักษณ์ที่ใช้สำหรับกำหนดเงื่อนไขเพื่อตรวจสอบทางเลือก ได้แก่สัญลักษณ์สี่เหลี่ยมขนมเปียกปูน

วิธีการใช้มีลักษณะดังนี้

ส่วนประกอบ ที่สำคัญของสัญลักษณ์การตัดสินใจ คือ

1.มีเงื่อนไขสำหรับตัดสินใจ

2.มีลูกศรออกได้ 2 ทางเสมอ คือ  จริง/เท็จ หรือ yes/no หรือ true/false

          สำหรับการตัดสินใจทางเลือกการทำงาน ถ้าข้อมูลที่ได้รับเข้ามาทำให้เงื่อนไขเป็นจริงโปรแกรมจะทำงานในทิศทางที่เป็นจริง ตรงกันข้ามถ้าข้อมูลที่รับเข้ามาทำให้เงื่อนไขเป็นเท็จโปรแกรมจะทำงานในทิศทางที่เป็นเท็จดังตัวอย่างผังงานต่อไปนี้

  

  แผนภาพผังงานโปรแกรมแบบ 2 ทางเลือก

             จากตัวอย่างผังงาน จะเป็นแบบทางเลือกทำงาน 2 ทาง คือ ถ้ามีเงินมากกว่า 10,000 บาท จะทำให้เงื่อนไขเป็นจริง โปรแกรมจะทำงานในทิศทางของ yes แต่ถ้ามีเงินตั้งแต่ 10,000 บาทลงมา จะทำให้เงื่อนไขเป็นเท็จ โปรแกรมก็จะทำงานในทิศทางของ no

             อันที่จริงการทำงานแบบทางเลือก ไม่ได้มี 2 ทางเลือกเสมอไป บางครั้งก็อาจจะมีเพียงทางเลือกเดียว หรือมีมากกว่า 2 ทางเลือกก็ได้ สำหรับการออกแบบโปรแกรมที่มีหลายทางเลือกก็จะทำให้โปรแกรมมีความซับซ้อนมากขึ้น

                ผังงานแบบทางเลือกเดียว

 แผนภาพผังงานแบบทางเลือกเดียว

 

                ผังงานแบบทางเลือกซับซ้อน

  

แผนภาพผังงานทางเลือกซับซ้อนแบบ 3 ทางเลือก

 แผนภาพผังงานทางเลือกซับซ้อนแบบ 4 ทางเลือก

About admin