วิทยาการคำนวณ ชั้นประถมศึกษาปีที่ 4
หน่วยที่ 1 อัลกอริทึมและการแก้ปัญหาเชิงตรรกะ
วิทยาการคำนวณ ชั้นประถมศึกษาปีที่ 4
หน่วยที่ 1 อัลกอริทึมและการแก้ปัญหาเชิงตรรกะ
อัลกอริทึม (Algorithm)
คือ กระบวนการแก้ปัญหาที่สามารถอธิบายออกมาเป็นขั้นตอนที่ชัดเจน เช่น การนำเข้าข้อมูล แล้วจะได้ผลลัพธ์เช่นไร กระบวนการอัลกอริทึมนี้จะประกอบด้วย วิธีการเป็นขั้นตอนๆ และมีส่วนที่ต้องทำซ้ำ จนกระทั้งเสร็จสิ้นกระบวนการทำงาน การนำอัลกอริทึมไปใช้ในการแก้ปัญหานั้น ไม่จำเป็นต้องใช้ในการเขียนโปรแกรมเท่านั้น แต่สามารถใช้ได้กับปัญหาอื่น ๆ เพื่อให้เกิดการใช้ทรัพยากรอย่างมีประสิทธิภาพที่สุด ซึ่งจำเป็นต้องวางเเผนอย่างเป็นระบบ เป็นขั้นตอน เพื่อให้ทราบถึงขั้นตอนต่าง ๆ และสามารถตัดทอนขั้นตอนที่ซ้ำซ้อนเกินความจะเป็น และเพิ่มเติมขั้นตอนใหม่เข้าไปได้
องค์ประกอบของการจัดทำอัลกอริทึม
1. การวิเคราะห์
2. การออกแบบ
3. การเขียนโปรแกรม
4. การทดสอบและแก้ไขข้อผิดพลาดของโปรแกรม
อัลกอริทึมที่ดีควรมีคุณสมบัติ ดังนี้
1. มีลำดับขั้นตอนทำงาน ก่อน-หลัง ชัดเจน
2. เข้าใจง่ายและไม่กำกวม
3. สามารถประมวลผลการทำงานด้วยคอมพิวเตอร์ได้
4. การทำงานของอัลกอริทึมจะต้องสิ้นสุด หลังจากดำเนินงานตามระยะเวลาที่กำหนด
ประโยชน์ของอัลกอริทึม (Algorithm)
คือ ทำให้ไม่สับสนกับวิธีดำเนินงาน เพราะทุกอย่างจะถูกจัดเรียงเป็นขั้นตอนมีวิธีการและทางเลือกไว้ให้ เมื่อนำมาใช้จะทำให้การทำงานสำเร็จอย่างรวดเร็ว ทำให้ปัญหาลดลงหรือสามารถค้นหาต้นเหตุของปัญหาได้อย่างรวดเร็ว เนื่องจากกระบวนการถูกแยกแยะกิจกรรม ขั้นตอน และความสัมพันธ์ ออกมาให้เห็นอย่างชัดเจน
**อ้างอิง บทเรียนออนไลน์ “อัลกอริทึม คืออะไร มีความสำคัญอย่างไร การเขียนโปรแกรม” จาก www.mindphp.com สืบค้นเมื่อ 27 สิงหาคม 2562 อัลกอริทึมและเหตุผลเชิงตรรกะ จาก https://dltv.ac.th/teachplan/episode/17265 สืบค้นเมื่อ 27 สิงหาคม 2562
การใช้เหตุผลเชิงตรรกะในการแก้ปัญหา
คือ การแก้ไขปัญหาโดยการนำกฎเกณฑ์หรือเงื่อนไขมาใช้พิจารณา โดยจะใช้เหตุผลหรือใช้ประสบการณ์ มาอธิบายวิธีการแก้ไขปัญหาโดยคาดหวังว่าจะได้ผลลัพธ์ตามที่คาดการณ์ไว้
ทำไมต้องคิดแก้ปัญหาอย่างมีตรรกะ
เพราะทำให้เกิดโอกาสผิดพลาดน้อย
เพราะเมื่อเกิดความเคยชินกับการคิดอย่างมีตรรกะ จะทำให้ไม่เชื่อเรื่องอะไรง่ายๆ
เพราะจะทำให้ความคิดที่นำเสนอได้รับการยอมรับจากผู้อื่นมากขึ้น เนื่องจากฟังดูแล้วมีเหตุมีผลเหมาะสม
สถานการณ์ตัวอย่าง
ร้านนมแห่งหนึ่ง มีโปรโมชั่นพิเศษ นักเรียนสามารถนำขวดนมเปล่า 3 ขวดมาแลกนมขวดใหม่ไปดื่มได้ 1 ขวดทันที ถ้านักเรียนมีเงินจำนวนจำกัดสามารถซื้อนมได้เพียง 9 ขวดเท่านั้น ถามว่านักเรียนจะได้ดื่มนมทั้งหมดกี่ขวด (รวมที่นำไปแลกฟรีด้วย)
ดังนั้น
นักเรียนจะได้ดื่มนมทั้งหมด ….. ขวด โดยจำนวนขวดทั้งหมด มาจากการซื้อ…..ขวด แลกฟรี…..ขวด
สรุปได้ว่า
นักเรียนซื้อนม…..ขวด และนักเรียนแลกนมฟรี……ขวด เพราะฉะนั้นนักเรียนได้ดื่มนมทั้งหมด…….ขวด
**อ้างอิง ขั้นตอนการคิดและ การแก้ปัญหาเชิงตรรกะ (Logical thinking and problem solving) คณะวิทยาการสารสนเทศ มหาวิทยาลัยบูรพา
การแก้ปัญหาอย่างเป็นขั้นตอน
การแก้ปัญหา คือ การจัดการกับข้อสงสัย อุปสรรค หรือข้อขัดข้องที่พบด้วยวิธีต่าง ๆ เช่น การลองผิดลองถูก การใช้เหตุผล เครื่องมือฝึกแก้ปัญหาอย่างง่าย คือ เกมต่าง ๆ ดังตัวอย่าง
1. บอร์ดเกม หรือ เกมกระดาน
คือ เกมประเภทหนึ่งที่ใช้หมาก โมเดล หรือเม็ดนับจำนวน นำมาเล่นบนกระดานที่ออกแบบมาเพื่อเล่นเกมนั้น ๆ ซึ่งบอร์ดเกมก็มีหลายรูปแบบให้เลือกเล่นกันตามใจชอบ ไม่ว่าจะเป็น เกมครอบครัว เป็นเกมสั้นๆ ง่ายๆ เกมวางแผน เป็นเกมที่มีความท้าทาย ต้องใช้ทักษะการวางแผน จากากรจำลองสถานการณ์ต่าง ๆ เกมปาร์ตี้ เป็นเกมที่เข้าใจง่ายเล่นได้เป็นหมู่คณะ ซึ่งต้องในมนุษย์สัมพันธ์และไหวพริบ เกมแก้ปัญหา เป็นเกมที่ต้องแข่งขันกันแก้ปัญหา ต้องคิดวางแผน
ประโยชน์จากบอร์ดเกม หรือ เกมกระดาน
1. รู้จักรอคอย
2. ฝึกการคิดคำนวณและความน่าจะเป็น
3. ลับสมองและฝึกความคิดสร้างสรรค์
4. รู้จักการางแผนและเรียงลำดับความสำคัญ
5. ฝึกการตัดสินใจและทำงานเป็นทีม
ตัวอย่างบอร์ดเกม หรือ เกมกระดาน
กิจกรรมฝึกทักษะ
ให้นักเรียนฝึกเล่นเกมซูโดกุจาก https://sudoku.com/th
2. การแก้ปัญหาที่เกิดในชีวิตประจำวัน
ไม่ว่าเราจะทำงานใดก็ตาม ปัญหาเป็นสิ่งที่หลีกเลี่ยงไม่ได้ การแก้ปัญหามีหลายวิธี ขึ้นกับชนิดของาน วิธีการแก้ปัญหาอย่างหนึ่งอาจแก้ปัญหาอีกอย่างหนึ่งไม่ได้ และการแก้ปัญหาอาจจำเป็นต้องใช้เทคโนโลยีสารสนเทศหรือไม่ก็ได้ ดังนั้น จึงควรยึดหลักการแก้ปัญหาอย่างเป็นระบบ เพื่อไม่ให้เสียเวลา หลงทาง และสับสน วิธีการแก้ปัญหาแต่ละวิธีมีความเหมาะสมกับงานแตกต่างกันไป โดยปกติมนุษย์มีกระบวนในการแก้ปัญหา ซึ่งประกอบด้วย 4 ขั้นตอน ดังนี้
1. การวิเคราะห์และกำหนดรายละเอียดของปัญหา การทำความเข้าใจกับปัญหาเพื่อแยกให้ออกว่าข้อมูลที่กำหนดมาในปัญหาหรือเงื่อนไขของปัญหาคืออะไร โดยมีองค์ประกอบในการวิเคราะห์ดังนี้
2. การเลือกเครื่องมือและออกแบบขั้นตอนวิธี พิจารณาเงื่อนไขและข้อมูลที่มีอยู่ และสิ่งที่ต้องการหาในขั้นตอนที่ 1 แล้วคาดคะเนวิธีการที่จะใช้ในการแก้ปัญหา
3. การดำเนินการแก้ปัญหา ลงมือแก้ปัญหาโดยใช้เครื่องมือที่เลือกไว้
4. การตรวจสอบและปรับปรุง ตรวจสอบว่าขั้นตอนวิธีที่สร้างขึ้นสอดคล้องกับรายละเอียดของปัญหา และปรับปรุงวิธีการเพื่อให้การแก้ปัญหานี้ได้ผลลัพธ์ที่ดีที่สุด
สถานการณ์ตัวอย่างที่ 1 : การต้มบะหมี่น้ำโดยใช้บะหมี่กึ่งสำเร็จรูป
1. การวิเคราะห์และกำหนดรายละเอียดของปัญหา
1.1 การระบุข้อมูลเข้า คือ บะหมี่กึ่งสำเร็จรูป
1.2 การระบุข้อมูลออก คือ บะหมี่น้ำ
1.3 การประมวลผล คือ การต้ม
2. การวางแผนในการแก้ปัญหา
1) เริ่มต้น
2) ต้มน้ำให้เดือด
3) ใส่บะหมี่ลงในน้ำเดือด
4) รอ 3 นาที
5) ใส่เครื่องปรุงแล้วยกหม้อลงจากเตา
6) จบ
3. การดำเนินการแก้ปัญหาตามแนวทางที่วางไว้
ปฏิบัติตามขั้นตอนในข้อ 2
4. การตรวจสอบ บะหมี่น้ำที่ต้มสุก
สถานการณ์ตัวอย่างที่ 2 : การวางแผนไปโรงเรียน
1. การวิเคราะห์และกำหนดรายละเอียดของปัญหา
1.1 การระบุข้อมูลเข้า คือ การตื่นนอน
1.2 การระบุข้อมูลออก คือ ไปถึงโรงเรียน
1.3 การประมวลผล คือ การเดินทาง
2. การวางแผนในการแก้ปัญหา
1) เริ่มต้น
2) ตื่นนอน
3) อาบน้ำและแต่งตัว
4) ไปโรงเรียน
5) จบ
3.การดำเนินการแก้ปัญหาตามแนวทางที่วางไว้
ปฏิบัติตามขั้นตอนในข้อ 2
4.การตรวจสอบ
ตรวจสอบว่าถึงโรงเรียนหรือยัง
กิจกรรมฝึกทักษะ
ให้นักเรียนวางแผนการจัดหนังสือใส่กระเป๋าของนักเรียน
3. โปรแกรมที่มีการตอบโต้
รู้จักกับ Code.org เป็นเว็บไซต์ที่ถูกพัฒนาขึ้นเพื่อใช้เป็นสื่อการสอนการเขียนโปรแกรมให้กับทั้งเด็กและผู้ใหญ่ ซึ่งทางผู้พัฒนาได้มีการออกแบบหลักสูตรการสอนไว้แล้ว และทำเป็นเกมส์ให้เด็ก ๆ เล่นไปในระหว่างการเรียน ทำให้เด็ก ๆ มีความสนุกและเกิดความสนใจในระหว่างการเรียนรู้ด้านการเขียนโปรแกรมนี้
กิจกรรมฝึกทักษะ
ให้นักเรียนทำกิจกรรมในเว็บไซต์ Code.org คอร์ส 4 บทเรียนที่ 7. Play Lab: Variables ข้อที่ 6 https://studio.code.org/s/course4/stage/7/puzzle/6
อ้างอิง นายฤทธินันต์ โสมาสุข “การแก้ปัญหาด้วยกระบวนการทางเทคโนโลยีสารสนเทศ” จากเว็บไซต์ https://sites.google.com/site/khruthim/kar-kae-payha-dwy-krabwnkar-thang-thekhnoloyi-sarsnthes สืบค้นเมื่อวันที่ 28 สิงหาคม 2562 Kittipong Khamdee “การแก้ปัญหาด้วยกระบวนการเทคโนโลยีสารสนเทศ” จากเว็บไซต์ https://sites.google.com/site/comsurintk/bth-reiyn/karkaepayhadwykrabwnkarthekhn oloyisarsnthes สืบค้นเมื่อวันที่ 28 สิงหาคม 2562