จุดประสงค์
- อธิบายกระบวนการทำงานแบบวนซ้ำ (K)
- แก้ปัญหาโดยใช้กระบวนการทำงานแบบวนซ้ำ (P)
- เห็นประโยชน์ของกระบวนการทำงานแบบวนซ้ำ (A)
คำศัพท์ที่ต้องรู้
คำศัพท์ | คำอ่าน | คำแปล |
---|---|---|
automatic | ออโทแมท ทิค | อัตโนมัติ |
development | ดิเวล เลิพเมินท์ | การพัฒนา |
electrical energy | อิเลค ทริเคิล เอนเนอร์จี | พลังงานไฟฟ้า |
loop | ลูพ | วนซ้ำ |
perſormance | เพอร์ฟอม เมินท์ | ประสิทธิภาพ |
problem | พรอบ เลิม | ปัญหา |
rules | รูล | กฎเกณฑ์ |
เกมหรือปัญหาหลายปัญหาจะทำงานแบบวนซ้ำและมีเงื่อนไขอยู่ภายในด้วยเช่น การค้นหาของในกล่องจนกว่าจะพบของที่ต้องการ การเก็บขยะต้องเก็บจนกว่าขยะจะหมด การปูกระเบื้องบนพื้นต้องปูจนกว่าจะเต็มพื้นที่ การทำงานแบบวนซ้ำจะทำงานวนซ้ำไปเรื่อย ๆ จนครบตามที่เงื่อนไขกำหนด
ตัวอย่างที่ 1 การเก็บขยะเมื่อเราต้องการเก็บขยะ จะต้องเก็บขยะในบริเวณนั้นไปเรื่อย ๆ จนกว่าขยะในบริเวณนั้นจะหมดหรือสะอาดโดยเขียนเป็นขั้นตอนหรือทางคอมพิวเตอร์เรียกว่า อัลกอริทึมและผังงานได้ ดังนี้
เริ่มต้น
1. เดินไปบริเวณที่มีขยะ
2. เก็บขยะ
3. นำขยะใส่ถังขยะ
4. ขยะบริเวณนั้นหมดจริงหรือไม่
4.1 ถ้าไม่จริง ไปทำข้อ 1
4.2 ถ้าจริงจบการทำงาน
จบ
ตัวอย่างที่ 2 การปูกระเบื้องบนพื้นที่ว่างถ้าต้องการปูกระเบื้องเป็นสีเรียงกันไปเรื่อย ๆ คือ แดง น้ำเงิน เหลือง เขียว แดง น้ำเงิน เหลือง เขียว ดังภาพ
และต้องการปูกระเบื้องเรียงต่อกันไปเรื่อย ๆ เป็นจำนวน 15 แผ่น อยากทราบว่าแผ่นที่ 15 จะเป็นกระเบื้องสีอะไร
วิธีแก้ปัญหา
การแก้ปัญหานี้จะต้องพิจารณาปัญหาอย่างละเอียด คิดหาความสัมพันธ์ต่าง ๆ โดยการเรียงข้อมูลตามที่โจทย์กำหนดจะเป็นเงื่อนไขและกฎเกณฑ์ของปัญหานี้ จากการปูกระเบื้องเราสามารถเขียนรูปแบบของกระเบื้องสีต่าง ๆ ให้เป็นข้อมูลอย่างง่ายได้ เช่น แทนสีกระเบื้องด้วยตัวเลข
สีของกระเบื้อง | หมายเลข |
---|---|
สีแดง | 1 |
สีน้ำเงิน | 2 |
สีเหลือง | 3 |
สีเขียว | 4 |
เมื่อพิจารณาปัญหานี้ต่อไป การปูกระเบื้องจะคล้ายกับการนับเลข 1, 2, 3, 4, 1, 2, 3, 4 โดยวนซ้ำไปเรื่อย ๆ จนครบ 15 ตัวเลข แล้วจะพบว่าการนับครั้งที่ 15 ตรงกับหมายเลข 3 ซึ่งหมายถึงกระเบื้องสีเหลืองนั่นเอง
ตัวอย่างที่ 3 ผึ้งเก็บน้ำหวาน
เราต้องการเขียนโปรแกรมสั่งงานให้ผึ้งเดินทางไปเก็บน้ำหวาน ดังภาพจะเขียนคำสั่งได้อย่างไร
วิธีแก้ปัญหา
พิจารณาจากปัญหาของผึ้ง จะพบว่ามีน้ำหวานอยู่ที่ดอกไม้ 2 ตำแหน่ง แต่ละตำแหน่งต้องเก็บน้ำหวาน 2 ครั้ง โดยเขียนเป็นขั้นตอนหรือทางคอมพิวเตอร์เรียกว่าอัลกอริทึมได้ ดังนี้
เริ่มต้น 1. ไปข้างหน้า 2. เก็บน้ำหวาน 3. เก็บน้ำหวาน 4. ไปข้างหน้า 5. เก็บน้ำหวาน 6. เก็บน้ำหวาน จบ
จากอัลกอริทึมของปัญหานี้ สามารถเขียนอัลกอริทึมใหม่โดยการวนซ้ำได้และเขียนโปรแกรมแบบบล็อกคำสั่งได้ ดังนี้
เริ่มต้น
1. ทำซ้ำ 2 ครั้ง
1.1 ไปข้างหน้า
1.2 เก็บน้ำหวาน
1.3 เก็บน้ำหวาน
จบ
ตัวอย่างที่ 4 ร้านขายกระเป๋าร้านหนึ่ง ขายกระเป๋าที่ทำด้วยมือแล้วนำมาวางขายหน้าร้าน โดยการทำกระเป๋านั้นจะมี 2 ส่วนใหญ่ ๆ คือ ทำกระเป๋า และทำสายสะพายโดยการทำกระเป๋าใช้เวลา 30 นาทีทำสายสะพายใช้เวลา 15 นาที ประกอบกระเป๋าเข้ากับสายสะพายใช้เวลา 10 นาที ถ้าร้านขายกระเป๋าร้านนี้ ต้องการทำกระเป๋าออกมาขายจำนวน 10 ใบ จะมีวิธีการอย่างไรบ้าง
การแก้ปัญหานี้ทำได้หลายวิธี แต่ละวิธีจะมีลำดับขั้นตอนที่ใช้เวลาแตกต่างกัน เช่น วิธีที่ 1 ทำกระเป๋า 10 ใบทำสายสะพาย 10 เส้น แล้วประกอบกระเป๋าที่ละใบ วิธีที่ 2 ทำกระเป๋า 10 ใบ ทำสายสะพาย 1 เส้น ประกอบกระเป๋าทีละใบแล้วกลับไปทำสายสะพายต่อ แล้วประกอบกระเป๋าจนครบ วิธีที่ 3 ทำกระเป๋า 1 ใบ ทำสายสะพาย 1 เส้น ประกอบกระเป๋า แล้วกลับไปเริ่มต้นทำอีกครั้งจนได้กระเป๋าครบ 10 ใบ
ตัวอย่างวิธีการที่กล่าวมานั้น การได้กระเป๋าแต่ละใบจะใช้เวลาต่างกัน แต่ถ้าพิจารณาแต่ละวิธีแล้ว พบว่าวิธีที่ 3 จะได้กระเป๋าใบแรกออกมาเร็วที่สุด ถ้ามีลูกค้าเข้ามาในร้านจะทำให้ขายได้เร็ว ดังนั้น จึงเลือกวิธีที่ 3 เพื่อให้ขายและได้เงินจากการขายแต่ละใบเร็วที่สุด โดยเขียนเป็นผังงานได้ ดังนี้
กระบวนการแก้ปัญหาสามารถใช้ได้ในหลายกรณี ทั้งในการวางแผนงานในชีวิตประจำวัน หรือการเล่นเกมต่าง ๆ การฝึกคิดแก้ปัญหาอย่างเป็นระบบพิจารณาวิธีการต่างๆ จะเป็นประสบการณ์ในการแก้ปัญหาที่ซับซ้อนมากขึ้น
กิจกรรมที่ 1.2 แสดงวิธีการแก้ปัญหา
- ถ้าต้องการปูกระเบื้องเป็นพื้นที่กว้าง 25 เซนติเมตร ยาว 5 เมตร โดยกระเบื้องแต่ละแผ่นเป็นรูปสี่เหลี่ยมจัตุรัสขนาด 25 เซนติเมตร x 25 เซนติเมตร และให้สีแต่ละแผ่นเรียงเป็นลำดับ ดังนี้ เขียว เหลือง น้ำตาล แดง เขียว เหลือง น้ำตาล แดง อยากทราบว่าจะต้องใช้กระเบื้องแต่ละสีจำนวนกี่แผ่น
- ถ้าผึ้งต้องการเดินทางไปเก็บน้ำหวาน ดังภาพซึ่งการเดินแต่ละบล็อกใช้เวลา2 วินาที การเก็บน้ำหวานแต่ละครั้งใช้เวลา 2 วินาที จงเขียนอัลกอริทึมของการแก้ปัญหานี้และผึ้งต้องใช้เวลาในการทำงานทั้งหมดเท่าไร
กิจกรรมที่ 1.3 สนุกกับเกมทายตัวเลข
นักเรียนจับคู่กับเพื่อนทายตัวเลขระหว่าง 1 ถึง 1,000,000 โดยคนหนึ่ง
เป็นผู้ตั้งโจทย์ อีกคนหนึ่งเป็นผู้ตั้งคำถามและตอบให้ถูกภายใน 20 คำถาม
1. นักเรียนตอบถูกภายในกี่คำถาม
2. นักเรียนมีวิธีการอย่างไรในการตั้งคำถาม
Leave a Reply