วิทยาการคำนวณ ป.5 หน่วย 2 เรื่อง การออกแบบและเขียนโปรแกรมที่มีการใช้เหตุผลเชิงตรรกะอย่างง่ายระดับชั้น : ประถมศึกษาปีที่ 5 วิทยาการคอมพิวเตอร์ (Computer Science) การแก้ปัญหาอย่างเป็นขั้นตอนและเป็นระบบ การใช้แนวคิดเชิงคำนวณในการแก้ปัญหาในชีวิตประจำวัน บูรณาการกับวิชาอื่น การเขียนโปรแกรมการคาดการณ์ผลลัพธ์ การตรวจหาข้อผิดพลาด การพัฒนาแอปพลิเคชันหรือพัฒนาโครงงานอย่างสร้างสรรค์เพื่อแก้ปัญหาในชีวิตจริง *เนื้อหาและรูปภาพการ์ตูนลิปดาโพล่านี้คือตัวอย่างหนังสือวิทยาการคำนวณ เป็นลิขสิทธิ์ของบริษัทอิมเมจิเนียริ่ง เอ็ดดูเคชั่น จำกัด ไม่อนุญาตให้นำภาพประกอบไปใช้ในเชิงธุรกิจหรือแสวงหาผลกำไรต่าง ๆ หากต้องการนำเนื้อหาและรูปภาพไปใช้รบกวนติดต่อทีมงานก่อนทุกครั้ง เพื่อส่งเรื่องให้ทางผู้บริหารพิจารณาอนุมัติ 1.Computer เป็นเครื่องจักรชนิดหนึ่ง ซึ่งไม่สามารถคิดเองได้เหมือนกับมนุษย์แต่สามารถ เก็บข้อมูลประมวลผลข้อมูล และแสดงผลข้อมูล ดังนั้นเมื่อต้องการสั่งให้คอมพิวเตอร์ทำงาน ต้องออกแบบและเขียนโปรแกรมตามกระบวนการทำงานของคอมพิวเตอร์ 2.Program การออกแบบโปรแกรมเป็นการเขียนขั้นตอนหรือลำดับการทำงาน อัลกอริทึม (Algorithm) เพื่อให้คอมพิวเตอร์เข้าใจโดยการออกแบบโปรแกรมโดยการใช้อัลกอริทึมนั้นต้องเรียงลำดับขั้นตอน (Order) อย่างละเอียดเป็นขั้นตอนไม่สลับกันโดยสามารถออกแบบโปรแกรมได้หลายแบบ เช่น การเขียนข้อความ สตอรี่บอร์ด (Storyboard) หรือ ผังงาน(Flowchart) 3.Computer Languages เมื่อออกแบบโปรแกรมเสร็จแล้ว ขั้นตอนต่อไปคือการ เลือกภาษาที่เหมาะสมกับงาน โดยคอมพิวเตอร์สามารถเข้าใจได้หลายภาษา เช่น ภาษา HTML Java ใช้สำหรับการเขียนเว็บเพจ ทำเกม หรือ ภาษา Scratch และ Python เป็นภาษาสำหรับใช้งานเบื้องต้น 4.Debugging คือการหาข้อผิดพลาดของโปรแกรมซึ่งหากมีข้อผิดพลาดให้ตรวจสอบการทำงานทีละคำสั่งเมื่อพบจุดที่ทำให้ผลลัพธ์ไม่ถูกต้อง ให้ทำการแก้ไขจนกว่าจะได้ผลลัพธ์ที่ถูกต้อง 5.If then เป็นการกำหนดเงื่อนไขเป็นการสร้างรูปแบบเหตุผลหรือตรรกะในการให้โปรแกรมตัดสินใจตามเงื่อนไขในการดำเนินการกับเหตุการณ์นั้นๆ โดยถ้าเกิดเหตุการณ์หรือตามเงื่อนไขที่กำหนด แล้วโปรแกรมจะดำเนินการตามเงื่อนไขและได้ผลลัพธ์ตามที่ถูกกำหนด 6.Variable การเขียนโปรแกรมคอมพิวเตอร์ จะต้องมีการจัดเก็บข้อมูลที่จำเป็นไว้ โดยจะจัดเก็บไว้ในตัวแปร (Variable) ซึ่งก็คือ การระบุค่า หรือ การตั้งค่าข้อมูลเข้า (Input) เพื่อนำมาประมวลผล(Process) ตามเงื่อนไขที่กำหนดมาในปัญหา เพื่อให้ได้ข้อมูลออกหรือผลลัพธ์ของปัญหา(Output)
คอมพิวเตอร์ทำงานอย่างไร ก่อนจะออกแบบโปรแกรม ผู้เรียนต้องเข้าใจก่อนว่า คอมพิวเตอร์ทำงานอย่างไร คอมพิวเตอร์ เป็นเพียงเครื่องจักร ที่รับข้อมูล ทำการประมวลผลข้อมูลตามเงื่อนไขที่กำหนด และจะแสดงผลลัพธ์ออกมา ดังนั้นหากต้องการให้คอมพิวเตอร์ทำงานได้ถูกต้องจะต้องออกแบบโปรแกรมให้ละเอียด เป็นขั้นตอน ไม่สลับขั้นตอน กำหนดเงื่อนไขให้ชัดเจน เพื่อจะได้ผลลัพธ์ที่ต้องการ การออกแบบโปรแกรม (Program) เป็นการออกแบบขั้นตอนการทำงานของคอมพิวเตอร์ หรือขั้นตอนการแก้ปัญหา ซึ่งจะต้องแสดงลำดับของการทำงานอย่างละเอียด ชัดเจน เป็นขั้นตอน และเป็นลำดับโดยการเรียงลำดับไม่ควรสลับตำแหน่งการทำงานเพราะอาจจะได้ผลลัพธ์ของการทำงานที่ผิดพลาดได้ โดย การออกแบบโปรแกรมสามารถทำได้โดยเขียนเป็นข้อความหรือผังงาน
การออกแบบโปรแกรมด้วยการเขียนข้อความ การออกแบบโปรแกรมด้วยการเขียนเป็นข้อความ เป็นการแสดงลำดับขั้นตอนการทำงานด้วยการเขียนข้อความบอกเล่า โดยจำเป็นต้องเขียนให้ ละเอียด ชัดเจน เป็นขั้นตอนเข้าใจง่าย ได้ผลลัพธ์ให้เปรียบเทียบการเขียนขั้นตอนการต่อหุ่นยนต์ 2 แบบด้านล่าง
การออกแบบโปรแกรมด้วยการเขียนผังงาน (Flowchart) คือ การออกแบบขั้นตอนการทำงานของโปรแกรมโดยใช้สัญลักษณ์ซึ่งสัญลักษณ์จะแสดงลักษณะของการทำงาน สัญลักษณ์จะถูกเชื่อมการแสดงลำดับขั้นโดยใช้ลูกศรเพื่อแสดงลำดับขั้นการทำงานของโปรแกรม ตั้งแต่เริ่มต้นจนจบการทำงาน ซึ่งสัญลักษณ์ที่ใช้ในการเขียน ผังงาน มีรายละเอียดความหมายของ ลักษณะการทำงานดังต่อไปนี้
ตัวอย่าง การออกแบบโปรแกรมด้วยผังงาน แผนผังแสดงขั้นตอนของโปรแกรมการสร้างหุ่นยนต์ จะทำให้มองเห็นขั้นตอนการทำงานของโปรแกรมได้ง่ายกว่าการอธิบายข้อความ หากเกิดข้อผิดพลาดก็สามารถแก้ไขโปรแกรมได้ง่ายขึ้น
การกำหนดค่าตัวแปร (Variable) คือ การระบุค่า หรือ การตั้งค่าข้อมูลเข้า เพื่อนำมาประมวลผลตามเงื่อนไขที่กำหนดมาในปัญหา เพื่อให้ได้ข้อมูลออกหรือผลลัพธ์ของปัญหา การกำหนดชื่อและค่าของตัวแปร ชื่อของตัวแปร สามารถกำหนดเป็น ข้อมูลตัวอักษร ค่าของตัวแปร สามารถกำหนดเป็น ตัวอักษรหรือตัวเลข ก็ได้ เปรียบเทียบได้กับ ชื่อของกล่องเก็บข้อมูล คือ ชื่อของตัวแปร ของที่อยู่ในกล่อง คือ ค่าของตัวเแปร
1.คลิกคำสั่ง Data ซึ่งเป็นชุดคำสั่งกำหนดค่าตัวแปร 2.คลิกเลือกคำสั่ง Make a Variable จะมีหน้าต่าง New Variable (ตัวแปร) 3.การกำหนดชื่อของตัวแปร(Variable name) ซึ่งสามารถพิมพ์ได้ทั้งตัวอักษรและตัวเลข 4.เป็นการกำหนดให้ค่าตัวแปรนี้มีความสัมพันธ์กับตัวละครใด ซึ่งจะมีทั้งแบบตัวละครทั้งหมด (For all sprites) และสำหรับตัวละครนี้เท่านั้น (For this sprite only) 5.Set คือกำหนดค่าเริ่มต้นของตัวแปร จากตัวอย่างเป็นการกำหนดค่าเริ่มต้นของตัวแปร เวลา เริ่มต้นที่ 0 6.Change คือ กำหนดค่าที่จะเปลี่ยนแปลงของตัวแปรนั้น โดยจากตัวอย่างเป็นการกำหนดให้เปลี่ยนแปลงครั้งละ 1 7.Show variable แสดงตัวแปรคือ การแสดงตัวแปรที่จะแสดงบนพื้นที่ทำงาน 8.Hide variable ซ่อนตัวแปรคือ การซ่อนค่าตัวแปรที่จะแสดงบนพื้นที่ทำงาน การออกแบบโปรแกรมที่มีการตรวจสอบเงื่อนไขในโปรแกรม Scratch การกำหนดเงื่อนไขเป็นการสร้างรูปแบบหรือตรรกะวิธีการตัดสินใจในการดำเนินการใดๆ กับเหตุการณ์นั้น โดยถ้าเกิดเหตุการณ์หรือเงื่อนไขที่กำหนดไว้เป็นจริง ตัวละครหรือฉากจะดำเนินการตามที่ถูกกำหนด (If…then….) และ หากไม่เป็นจริง ตัวละครหรือฉากจะดำเนินการตามที่ถูกกำหนดไว้ (If…then….else….)
ตัวอย่างการใช้เหตุผลเชิงตรรกะมาใช้พิจารณาในการแก้ปัญหา
ตัวอย่าง โปรแกรมสร้างรูปเรขาคณิตตามค่าข้อมูลเข้า
ตัวอย่างการใช้เหตุผลเชิงตรรกะมาใช้พิจารณาในการแก้ปัญหา
ตัวอย่างการออกแบบโปรแกรมตรวจสอบเลขคู่ เลขคี่
โปรแกรมรับข้อมูลน้ำหนักส่วนสูงแสดงผลความสมส่วนของร่างกายจากค่า BMI
โปรแกรมคอมพิวเตอร์ที่เขียนบางครั้งจะเกิดปัญหาขึ้น ปัญหาที่เกิดขึ้นจากการเขียนโปรแกรมในแต่ลำดับขั้นของคำสั่งนั้นเรียกว่า ข้อผิดพลาด (Bug) การหาและแก้ไขปัญหาข้อผิดพลาดจะเรียกว่า การตรวจสอบข้อผิดพลาดของโปรแกรม (Debugging) โดย หากมีข้อผิดพลาดให้ตรวจสอบการทำงานทีละคำสั่ง เมื่อพบจุดที่ทำให้ผลลััพธ์ไม่ถูกต้อง ให้ทำการแก้ไขจนกว่าจะได้ผลลัพธ์ที่ถูกต้อง
การตรวจสอบข้อผิดพลาดโดยการตรวจสอบการทำงานทีและคำสั่งและทำการแก้ไข 1.ตัวละครแมวเดินไปชนขอบแล้วไม่เด้ง ตรวจสอบไม่พบคำสั่งให้ชนแล้วเด้งกลับ 2.ตัวละครไม่กลับทิศทาง ตรวจสอบยังไม่ได้กลับทิศทางของตัวละครเมื่อชน 3.ตรวจสอบคำสั่งเมื่อชนสีส้มแล้วแสดงข้อความสีส้มค้าง ไม่มีการกำหนดเวลาแสดงไว้
4.ทำการเพิ่มคำสั่งลงไปก่อนมีการตรวจสอบเงื่อนไข 5.เปลี่ยนคำสั่งให้ตัวละครแมว เมื่อชนแล้วทำการกลับทิศทาง 6.เปลี่ยนคำสั่งแสดงข้อความให้มีแบบกำหนดเวลาในการแสดงข้อความ 2 วินาที ตัวอย่างโปรแกรมสั่งให้ตัวละครทำตามเงื่อนไขที่กำหนด
ผิดพลาดไปถึงไหนเนี่ยทำไมโปรแกรมทำงานไม่ได้นะ ลิปดากำลังเขียนโปรแกรมแต่มีข้อผิดพลาด คุณพ่อ เข้ามาแล้วถามว่าโปรแกรมที่ต้องการคืออะไร แล้วจึงช่วยลิปดาแก้ไขข้อผิดพลาดของโปรแกรม ลิปดาจึงขอบคุณ คุณพ่อ อธิบายว่า ลิปดาควรจะออกแบบโปรแกรมด้วยการเขียนอัลกอริทึมก่อนแล้วจึงลงมือเขียนโปรแกรมและควรฝึกแยกย่อยปัญหา หารูปแบบปัญหาเพื่อจะหาสาเหตุของข้อผิดพลาดได้ดียิ่งขึ้น จนกลายเป็นทักษะนะครับ ภารกิจ : 1. ให้คุณครูออกแบบโปรแกรม Scratch ที่มีข้อผิดพลาด
วัสดุอุปกรณ์ : 1. คอมพิวเตอร์โปรแกรม Scratch 2. อุปกรณ์เครื่องเขียน รวบรวมข้อมูล : การฝึกตรวจหาข้อผิดพลาดของโปรแกรมสำคัญอย่างไร วางแผน ออกแบบ : ให้ออกแบบและวางแผนการเขียนโปรแกรมที่มีข้อผิดพลาด
เกมแยกขยะ ระบุปัญหา : ทุกๆ ปีจะมีวันสิ่งแวดล้อม คือวันที่ 5 มิถุนายน ปีนี้ลิปดาและเพื่อนๆ จึงคิดจะช่วยกันสร้างเกมแยกประเภทขยะเพื่อให้ทุกคนได้ตระหนักถึงการแยกขยะ โพล่าจึงแนะนำว่าเราควรสร้างเรื่องราวเพื่อให้ตระหนักถึงปัญหาด้วย ภารกิจ : 1. ให้นักเรียนสร้างเกมเกี่ยวกับการแยกขยะโดยให้มีเรื่องราวเกี่ยวกับปัญหาการแยกขยะในตอนต้นก่อนเริ่มเข้าเกม
วัสดุอุปกรณ์ : 1. คอมพิวเตอร์และโปรแกรม Scratch 2. อุปกรณ์เครื่องเขียน รวบรวมข้อมูล : นักเรียนเข้าใจการออกแบบและเขียนโปรแกรมรับค่าข้อมูลเข้า และสั่งให้ตัวละครทำตามเงื่อนไขที่กำหนด ออกแบบและวางแผน ร่วมกันวางแผนและออกแบบโปรแกรมโดยใช้โปรแกรม Scratch ลงมือปฏิบัติ และ ทดสอบชิ้นงาน ให้นักเรียนลงมือทำแผนที่กำหนดไว้ ประเมินผลและปรับปรุงแก้ไข
|