หน่วยที่ 2 การแก้ปัญหาด้วยไพทอน
3. ให้ระบบตรวจสอบ input ซ้ำ (While loop)
หน่วยที่ 2 การแก้ปัญหาด้วยไพทอน
3. ให้ระบบตรวจสอบ input ซ้ำ (While loop)
โปรแกรมภาษาไพทอน : ภาระงาน
ใบงานที่ 3 ตรวจสอบการสั่งเครื่องดื่มซ้ำ (While Loop)
· เขียนโปรแกรม Python ที่รับคำสั่งซื้อหลายรายการจากลูกค้า และหยุดเมื่อพิมพ์ “หยุด”
· รายงานผลรวมรายการเครื่องดื่มที่สั่ง
กรณีศึกษา : ระบบรับออเดอร์ร้านน้ำอิตาเลี่ยนโซดา
🌸ให้ระบบตรวจสอบ input ซ้ำ (While loop)
การใช้ while loop เพื่อทำให้โปรแกรมสามารถรับข้อมูลซ้ำจนถูกต้อง เป็นทักษะสำคัญที่ใช้ในโปรแกรมรับออเดอร์จริงในร้านอาหารหรือบริการต่าง ๆ
หากนักเรียนกำหนดเงื่อนไขผิด เช่นไม่มีการเปลี่ยนแปลงค่าตัวแปรใน loop จะเกิด infinite loop ทำให้โปรแกรมวนซ้ำไม่รู้จบ
ยกตัวอย่างสถานการณ์บูรณาการ PISA เช่น
“สมมติเราสั่งงานให้พนักงานเช็คคำสั่งซื้อซ้ำ แต่ไม่ได้กำหนดเงื่อนไขหยุด พนักงานจะเช็คต่อเนื่องจนเสียเวลาเหมือนโปรแกรมค้างไม่หยุด”
หากนักเรียนกำหนดเงื่อนไขผิด เช่นไม่มีการเปลี่ยนแปลงค่าตัวแปรใน loop จะเกิด infinite loop ทำให้โปรแกรมวนซ้ำไม่รู้จบ
ยกตัวอย่างสถานการณ์บูรณาการ PISA เช่น
“สมมติเราสั่งงานให้พนักงานเช็คคำสั่งซื้อซ้ำ แต่ไม่ได้กำหนดเงื่อนไขหยุด พนักงานจะเช็คต่อเนื่องจนเสียเวลาเหมือนโปรแกรมค้างไม่หยุด”
โจทย์ให้นักเรียนแต่ละกลุ่มสร้างโปรแกรม Python ที่
· รับค่าเมนูจากลูกค้า
· ตรวจสอบว่าเมนูอยู่ในลิสต์หรือไม่
· ถ้าไม่ถูกต้อง ให้โปรแกรมถามซ้ำจนกว่าลูกค้าจะกรอกเมนูที่มีในร้าน เช่น
📄 ใบงานที่ 3 : โปรแกรมตรวจสอบเมนูซ้ำจนกว่าจะถูกต้อง (While Loop)
ชื่อ-สกุล ..................................................... ชั้น ................ เลขที่ ............
สถานการณ์ :
ร้าน Café Soda Smile เปิดรับออเดอร์ทางเว็บไซต์ ลูกค้าต้องพิมพ์ชื่อเมนูเอง ซึ่งบ่อยครั้งที่ลูกค้ากรอกชื่อเมนูผิด เช่น พิมพ์ “บลูฮาวายยย” หรือ “เลมอนโซด้า” ทำให้พนักงานเสียเวลาโทรกลับแก้ไขหรือเกิดความผิดพลาดในการจัดออเดอร์ ลูกค้าหลายคนไม่พอใจ ร้านต้องการระบบ ที่สามารถตรวจสอบได้ว่าชื่อเมนูที่ลูกค้ากรอกตรงกับเมนูจริงหรือไม่ และถามซ้ำจนกว่าลูกค้า จะกรอกถูก
ลิสต์เมนูร้าน Café Soda Smile ได้แก่ :
· เลมอนโซดา
· บลูฮาวาย
· กีวี่มินต์
คำชี้แจง : ให้นักเรียนเขียนโปรแกรมภาษา Python ที่ทำงานดังนี้
· รับชื่อเมนูจากลูกค้า
· ตรวจสอบว่าเมนูนั้นอยู่ในลิสต์เมนูที่ร้านมีหรือไม่
· ถ้าไม่ถูกต้อง ให้โปรแกรมถามซ้ำจนกว่าลูกค้าจะกรอกชื่อเมนูถูกต้อง
· เมื่อกรอกถูกต้อง ให้แสดงข้อความ “เมนูถูกต้อง”
1. ให้นักเรียนอธิบายเหตุผลที่ควรให้โปรแกรมถามซ้ำจนกว่าลูกค้าจะพิมพ์ชื่อเมนูถูกต้อง
____________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________
2. เขียนโปรแกรมภาษา Python ที่ตรวจสอบชื่อเมนูโดยใช้ while loop ถ้าลูกค้ากรอกผิด โปรแกรมต้องถามซ้ำจนถูกต้อง และเมื่อถูกต้องให้แสดงข้อความ “เมนูถูกต้อง”
____________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________
3. ถ้าลูกค้าพิมพ์ชื่อเมนูผิดซ้ำหลายครั้ง จะเกิดผลเสียอะไรต่อธุรกิจร้านกาแฟ?
ให้อธิบายอย่างน้อย 2 ข้อ
____________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________
“คาบหน้า เราจะต่อยอดไปที่การใช้ if-elif-else เพื่อเพิ่มความสามารถให้ระบบจัดโปรโมชันพิเศษตามเมนูที่สั่ง!”