1 เอกสารประกอบการเรียน วทิ ยาการคำนวณ กลมุ่ สาระการเรียนรวู้ ิทยาศาสตร์ (ฉบับปรับปรงุ พ.ศ. 2560) จัดทำโดย นายณฏั ฐนนท์ แก้วมลู ตัวชวี้ ัด ว 4.2 ป 3/2 เขียนโปรแกรมอย่างง่ายโดยใช้ซอฟต์แวร์หรือสื่อและตรวจหาข้อผิดพลาด ของโปรแกรม สาระการเรยี นรู้ที่ 1 การเขียนโปรแกรมเปน็ การสรา้ งลำดบั ของคำส่ังให้คอมพวิ เตอร์ทำงาน สาระการเรียนรู้ที่ 2 ตวั อยา่ งโปรแกรม เช่น เขยี นโปรแกรมทส่ี งั่ ให้ตัวละครทำงานซ้ำไม่ส้ินสดุ สาระการเรียนร้ทู ่ี 3 การตรวจหาข้อผิดพลาด ทำได้โดยตรวจสอบคำสั่งที่แจ้งข้อผิดพลาด หรือหากผลลัพธ์ไม่ เปน็ ไปตามทีต่ ้องการใหต้ รวจสอบการทำงานทลี ะคำสัง่ สาระการเรยี นรู้ที่ 4 ซอฟต์แวร์หรือสื่อที่ใช้ในการเขียนโปรแกรม เช่น ใช้บัตรคำสั่งแสดงการเขียนโปรแกรม, Code.org
2 บทนำ วิทยาการคอมพิวเตอร์ (Computer Science) การแก้ปัญหาอย่างเป็นขั้นตอนและเป็นระบบการใช้ แนวคิดเชิงคำนวณในการแก้ปัญหาในชีวิตประจำวัน บูรณาการกับวิชาอืน่ การเขียนโปรแกรมการคาดการณ์ ผลลัพธ์ การตรวจหาข้อผิดพลาด การพฒั นาแอปพลเิ คชันหรอื พฒั นาโครงงานอย่างสร้างสรรคเ์ พอ่ื แก้ปญั หาใน ชีวิตจริง คอมพวิ เตอร์ (COMPUTER) คอมพิวเตอร์ (COMPUTER) คอื อุปกรณ์ทส่ี ัง่ การได้ สามารถเก็บข้อมลู จดจำข้อมลู ประมวลผลข้อมูล โดยการคำนวณ และแสดงผลตามเงื่อนไขที่ผู้สั่งการต้องการ โดยการสั่งให้คอมพิวเตอร์ทำงานต้องอาศัย โปรแกรมคอมพวิ เตอร์ ในการส่ังการ ภาษาคอมพิวเตอร์ (Computer Language) ภาษาคอมพิวเตอร์ (Computer Language)คือ ซอฟต์แวร์หรือสื่อที่ใช้ในการเขียนโปรแกรม(โค้ด : Code) เพื่อทำให้คอมพิวเตอร์เข้าใจ ซึ่งภาษาคอมพิวเตอร์นั้นมีมากมายที่นกั เขียนโปรแกรม(Programmer) ใชก้ ัน ตวั อย่างเช่น HTML, Scratch, Python, Java เปน็ ตน้ โปรแกรม (Program) โปรแกรม (Program) คือ การแสดงลำดับขั้นตอนคำสั่งเพื่อสั่งให้คอมพวิ เตอร์ทำงาน โดยการเขียน โปรแกรมจะถูกเรียกว่า การเขียนโค้ด (code) และภาษาที่ใช้สื่อสารกับคอมพิวเตอร์จะเรียกว่า ภาษาคอมพิวเตอร์ (Computer Language) ตัวอยา่ งเชน่ ภาพที่ 1 การสมมติของคณุ ครูท่ใี หว้ าดรปู สีเ่ หลี่ยม ทมี่ า : https://imagineering.co.th/digital-kids-ป2-หน่วย2/
3 ในกรณี สมมติ คณุ ครใู หว้ าดรปู ส่เี หลยี่ ม 1. หยบิ ดินสอ 2. วาดรูปส่เี หลี่ยม 3. วางดินสอ ภาพที่ 2 ภาพหุน่ ยนตเ์ คร่อื งจักรท่ีจะสามารถส่ังวาดรูปสี่เหล่ียม ทม่ี า : https://imagineering.co.th/digital-kids-ป2-หน่วย2/ แต่กรณีสำหรับหุ่นยนต์การที่จะสามารถวาดรูปสี่เหลี่ยม เราจะต้องมีการเขียนลำดับขั้นตอนคำสั่ง อย่างละเอยี ดดังน้ี 1. หยบิ ดินสอ 2. จดดินสอลงบนกระดาษ 3. ลากเสน้ ขึ้นด้านบน 5 เซนตเิ มตร 4. ลากเสน้ ไปทางขวา 5 เซนตเิ มตร 5. ลากเส้นลง 5 เซนตเิ มตร 6. ลากเสน้ ไปทางซา้ ย 5 เซนตเิ มตร การแสดงลำดับของคำสง่ั ใหค้ อมพวิ เตอร์ (หุ่นยนต์) ทำงาน การแสดงลำดับขั้นตอนให้คอมพิวเตอร์ หรือ หุ่นยนต์ทำงาน ต้องใช้ ภาษาคอมพิวเตอร์ ท่ี คอมพวิ เตอรเ์ ข้าใจ และมีลำดบั การสั่งงาน (Order) ที่เรียงลำดบั อยา่ งชัดเจนเพราะคอมพิวเตอร์หรือหุ่นยนต์ ไม่สามารถคิดวิเคราะห์ได้ เพียงทำงานตามที่สั่งและตามเงื่อนไขที่กำหนด จากภาพหุ่นยนต์เครื่องจักรต้อง ทำงานเปน็ ลำดบั ข้ันไมส่ ามารถขา้ มขนั้ ตอนได้ ดงั ภาพที่ 3
4 ภาพท่ี 3 ภาพหุน่ ยนตเ์ ครื่องจักรต้องทำงานเปน็ ลำดบั ขน้ั ทม่ี า : https://imagineering.co.th/digital-kids-ป3-หนว่ ย2/ โจทย์ : สมมติวา่ เพอื่ นคนหนึง่ เปน็ หุ่นยนต์ ให้นกั เรยี นสงั่ หุน่ ยนต์ (เพือ่ น) เคลื่อนที่จากตำแหนง่ 3 ไปตำแหน่ง 2 ซงึ่ เป็นตัวแรคคนู ต้องใช้คำส่ังใดบ้าง ใหน้ ักเรียนเลอื กคำสัง่ ลกู ศรด้านซ้ายมอื เรียงลำดับเพ่ือส่ังงานหุ่นยนต์ (เพื่อน) ภาพท่ี 4 ภาพการแสดงลำดับของคำสั่ง ใหค้ อมพิวเตอร์ (ห่นุ ยนต์) ทำงาน ท่มี า : https://imagineering.co.th/digital-kids-ป2-หน่วย2/
5 การเขียนโปรแกรมใหต้ ัวละครทำงานซ้ำไมส่ ้ินสุด (LOOP) ในการใช้ชีวิตประจำวันแตล่ ะวันจะมลี ักษณะของการทำงานซ้ำหลายรปู แบบ เช่น การเดิน หรือการ แปรงฟัน ซึ่งการทำงานแบบนี้จะเรียกว่า การทำงานแบบวนซ้ำ ตามจำนวนที่ต้องการหรือแบบไม่สิ้นสุด ตวั อย่างเชน่ ภาพท่ี 5 การเขยี นโปรแกรมให้ตัวละครทำงานซำ้ ไมส่ นิ้ สดุ (LOOP) ท่มี า : https://imagineering.co.th/digital-kids-ป3-หน่วย2/ ใชแ้ นวคิดเชงิ คำนวณแก้ไขปัญหา สงั เกตได้วา่ การทำงานมีลกั ษณะเปน็ การทำงานวนซ้ำ เริม่ จากลำดับท่ี 1 ถึง ลำดับท่ี 7 ต้องทำแบบน้ี ซำ้ 8 ครัง้ ดว้ ยกัน ดังภาพท่ี 6 ภาพท่ี 6 ภาพการทำงานมลี ักษณะเป็นการทำงานวนซ้ำ ทมี่ า : https://imagineering.co.th/digital-kids-ป3-หน่วย2/
6 โปรแกรมสัง่ ให้ทำแซนดว์ ชิ 8 ชนั้ ภาพท่ี 7 ภาพโปรแกรมส่งั ใหท้ ำแซนดว์ ชิ 8 ชั้น ท่ีมา : https://imagineering.co.th/digital-kids-ป3-หน่วย2/ ตัวอยา่ งโปรแกรม เชน่ โปรแกรม SCRATCH เป็นโปรแกรมภาษาคอมพิวเตอร์สำหรับผู้เริ่มต้นหัดเขียนโปรแกรม โดยใช้สื่อ เช่น ภาพ เสียง ข้อความ เพื่อสร้างเรื่องราวภาพเคลื่อนไหว สร้างเกม เพื่อเป็นการฝึกทักษะการคิดวิเคราะห์ และความคิด สร้างสรรค์
7 ภาพท่ี 8 ภาพหนา้ ตาโปรแกรม SCRATCH ทมี่ า : https://imagineering.co.th/digital-kids-ป3-หนว่ ย2/ ภาพที่ 9 ภาพหน้าตาโปรแกรม SCRATCH ท่ีมา : https://imagineering.co.th/digital-kids-ป3-หนว่ ย2/
8 การกำหนดเหตุการณ์เพ่ือตอบโตก้ บั ผู้ใชง้ าน (Events) การสร้างเหตุการณ์ (Events) เพื่อตอบโต้กับผู้ใช้งาน ซึ่งในโปรแกรม Scratch สามารถกำหนด เหตกุ ารณต์ ่าง ๆ ได้โดยคลกิ เลอื กท่คี ำส่งั Events ซ่งึ มเี หตุการณ์ท่สี ามารถตอบโต้กบั ผ้ใู ช้งานดงั ต่อไปนี้ ภาพที่ 10 การกำหนดเหตกุ ารณ์เพอื่ ตอบโต้กบั ผใู้ ช้งาน (Events) ท่มี า : https://imagineering.co.th/digital-kids-ป3-หน่วย2/ 1. When Flag Clicked กำหนดเหตุการณเ์ ม่ือธงถูกกด 2. When …………… Key pressed กำหนดเหตุการณ์เม่ือกดปุ่มตา่ ง ๆ บน Keyboard เชน่ spacebar, a b c เปน็ ตน้ 3. When this sprite Clicked กำหนดเหตกุ ารณ์เมือ่ ตัวละครถูกคลิกกด 4. When backdrop switches to…. กำหนดเหตกุ ารณ์เมื่อฉากหลงั ถกู เปลย่ี นไปเป็นฉากทก่ี ำหนด 5. When ………….. > …………… กำหนดเหตุการณ์เมื่อความดังเสียง (Loudness)ช่วงเวลา (Timer), วิดีโอ เคลอื่ นที่ (VDO Motion) 6. When I receive (Message1) กำหนดเหตุการณ์เมือ่ โปรแกรมไดร้ บั ขอ้ ความท่ีกำหนดไว้ 7. Broadcast (Message1) กำหนดใหส้ ง่ ขอ้ ความเม่ือถงึ ช่วงเวลาทตี่ ้องการ 8. Broadcast (Message1) and wait กำหนดใหส้ ่งขอ้ ความเมื่อถึงชว่ งเวลาที่ต้องการและรอเหตุการณ์อีก เหตกุ ารณ์
9 การสร้างภาพเคล่อื นไหว (Animation) สามารถทำได้โดยการใช้คำสัง่ เปลีย่ นแปลงชดุ หรือรูปร่าง (Costumes) และคำสั่งหยุดรอ wait สลับ ไปมาเพื่อให้ตาของเรามองเหน็ ภาพเปน็ ลักษณะของภาพเคล่ือนไหว ภาพท่ี 11 การสร้างภาพเคล่อื นไหว (Animation) ท่ีมา : https://imagineering.co.th/digital-kids-ป3-หน่วย2/
10 คำส่ังการควบคมุ (Scripts Control) เปน็ ชุดคำสง่ั เกย่ี วกับการควบคุมตัวละครตามเงือ่ นไขต่าง ๆ เชน่ การหยุดรอ (wait) ก่วี นิ าทีหรือตาม เงอ่ื นไข การทำงานซำ้ ตามจำนวนรอบ การทำงานซำ้ ไม่สิน้ สุด หรอื การกำหนดเงื่อนไข เปน็ ต้น ภาพท่ี 12 คำสงั่ การควบคุม (Scripts Control) ทม่ี า : https://imagineering.co.th/digital-kids-ป3-หน่วย2/
11 การวนซ้ำและวนซ้ำไม่ส้นิ สดุ (Loop Repeat, Loop Forever) จากชุดคำสั่งการสร้างภาพเคลื่อนไหว จะเห็นได้ว่ามีการใช้คำสั่งที่ซ้ำกันมีลักษณะเป็นชุดคำสั่ง คือ move, switch costume และ wait ซึ่งเราสามารถใช้คำสั่ง Repeat เพื่อทำให้ไม่ต้องเขียนคำสั่งที่ยาว ตอ่ เนอ่ื ง ภาพท่ี 13 การวนซำ้ และวนซ้ำไมส่ น้ิ สุด (Loop Repeat, Loop Forever) ที่มา : https://imagineering.co.th/digital-kids-ป3-หนว่ ย2/
12 การตรวจสอบขอ้ ผิดพลาดของโปรแกรม (Debugging) โปรแกรมคอมพวิ เตอร์ที่เขียนบางครั้งจะเกิดปัญหาข้ึน ปัญหาที่เกิดขึ้นจากการเขียนโปรแกรมในแต่ ละลำดับขั้นของคำสั่งนั้นเรียกว่า ข้อผิดพลาด (Bug) การหาและแก้ไขปัญหาข้อผิดพลาดจะเรียกว่า การ ตรวจสอบขอ้ ผดิ พลาดของโปรแกรม (Debugging) ภาพที่ 14 การตรวจสอบข้อผดิ พลาดของโปรแกรม (Debugging) ทมี่ า : https://imagineering.co.th/digital-kids-ป2-หนว่ ย2/
13 โจทย์การทำกจิ วตั รประจำวนั ของนักเรียน ให้นักเรียนหาข้อผิดพลาดของโปรแกรมการทำกิจวัตรประจำวันของนักเรยี นคนนีจ้ ากการตรวจสอบ หาข้อผิดพลาด จากโปรแกรมกิจวัตรประจำวันนี้จะเห็นข้อผิดพลาดของโปรแกรม คือ ควรจะอาบน้ำก่อน แตง่ ตวั และทานอาหาร ภาพที่ 15 การตรวจสอบข้อผิดพลาดของโปรแกรม (Debugging) ทมี่ า : https://imagineering.co.th/digital-kids-ป2-หน่วย2/
14 ตวั อย่าง วิธีข้นั ตอนการทำเค้กชอ็ กโกแลต ภาพที่ 16 การตรวจสอบข้อผิดพลาดของโปรแกรม (Debugging) ทมี่ า : https://imagineering.co.th/digital-kids-ป3-หนว่ ย2/
15 โจทย์ : ให้สงั เกตภาพและลำดบั ข้ันตอนการทำเค้กชอ็ กโกแลต และใหห้ าข้อผิดพลาดของโจทย์ทง้ั 3 โปรแกรม น้ี โดยใหห้ าและเขียนหมายเลขลำดับคำสงั่ ที่สลับกนั ให้ถกู ต้อง ภาพที่ 17 การตรวจสอบขอ้ ผดิ พลาดของโปรแกรม (Debugging) ท่ีมา : https://imagineering.co.th/digital-kids-ป3-หนว่ ย2/ ตัวอยา่ ง ซอฟตแ์ วรห์ รอื สือ่ ที่ใชใ้ นการเขียนโปรแกรม เช่น การเขยี นโปรแกรมโดยใชบ้ ตั รคำส่ัง กิจกรรม : เขียนโปรแกรมโดยใชบ้ ตั รคำสั่ง สาระการเรียนรู้ : การเขยี นโปรแกรม ที่มา : สสวท.
16 ภาพที่ 18 การเขียนโปรแกรมโดยใชบ้ ัตรคำสั่ง ทีม่ า : สสวท. ภาพท่ี 19 การเขียนโปรแกรมโดยใช้บัตรคำส่ัง ท่มี า : สสวท.
17 ภาพที่ 20 การเขียนโปรแกรมโดยใชบ้ ัตรคำสั่ง ทีม่ า : สสวท. ภาพท่ี 21 การเขียนโปรแกรมโดยใช้บัตรคำส่ัง ท่มี า : สสวท.
18 ภาพที่ 22 การเขียนโปรแกรมโดยใชบ้ ัตรคำสั่ง ทีม่ า : สสวท. ภาพท่ี 23 การเขียนโปรแกรมโดยใช้บัตรคำส่ัง ท่มี า : สสวท.
19 ภาพที่ 24 การเขียนโปรแกรมโดยใชบ้ ัตรคำสั่ง ทีม่ า : สสวท. ภาพท่ี 25 การเขียนโปรแกรมโดยใช้บัตรคำส่ัง ท่มี า : สสวท.
20 บรรณานกุ รม สถาบนั ส่งเสริมการสอนวทิ ยาศาสตร์และเทคโนโลยี กระทรวงศกึ ษาธิการ. 2562. หนังสือเรยี นรายวิชา กกกกกกกพื้นฐานวิทยาศาสตร์ เทคโนโลยี (วทิ ยาการคำนวณ) ชนั้ ประถมศึกษาปีท่ี 1. กกกกกกกกรงุ เพฯ: ศนู ย์หนงั สือจฬุ าลงกรณม์ หาวทิ ยาลัย. สถาบนั ส่งเสริมการสอนวทิ ยาศาสตร์และเทคโนโลยี กระทรวงศกึ ษาธิการ. 2563. หนงั สอื เรียนรายวิชา กกกกกกกพ้ืนฐานวทิ ยาศาสตร์ เทคโนโลยี (วิทยาการคำนวณ) ชัน้ ประถมศกึ ษาปที ี่ 3. กกกกกกกกรุงเพฯ: ศนู ย์หนงั สอื จฬุ าลงกรณม์ หาวทิ ยาลัย. สถาบนั สง่ เสริมการสอนวิทยาศาสตร์และเทคโนโลยี กระทรวงศึกษาธิการ. 2562. หนังสือเรียนรายวิชา กกกกกกกพื้นฐานวทิ ยาศาสตร์ เทคโนโลยี (วทิ ยาการคำนวณ) ชนั้ มัธยมศกึ ษาปีที่ 1. กกกกกกกกรงุ เพฯ: ศูนย์หนังสอื จฬุ าลงกรณ์มหาวิทยาลัย. สถาบนั ส่งเสริมการสอนวิทยาศาสตรแ์ ละเทคโนโลยี กระทรวงศึกษาธิการ. 2562. ตวั อย่างการจัดการเรยี นรู้ กกกกกกกเทคโนโลยี (วิทยาการคำนวณ) ระดับประถมศกึ ษา. สืบคน้ เม่ือวนั ท่ี 31 ธนั วาคม 2562. กกกกกกกจากเว็ปไซต์ http://oho.ipst.ac.th/wp-content/uploads/sites/3/2018/08/cs-teach- กกกกกกกexample.pdf Imagineering Education. 2561. DIGITAL KIDS (เทคโนโลย)ี ป.2 หนว่ ย 2 เรื่อง เขียนโปรแกรมอย่าง กกกกกกกงา่ ยและตรวจสอบหาขอ้ ผิดพลาดของโปรแกรม. สืบคน้ เม่ือวนั ที่ 31 ธนั วาคม 2562. จากเว็ปไซต์ กกกกกกกhttps://imagineering.co.th/digital-kids-ป2-หน่วย2/ Imagineering Education. 2561. DIGITAL KIDS (เทคโนโลย)ี ป.3 หนว่ ย 2 เรื่อง เขยี นโปรแกรมหา กกกกกกกขอ้ ผดิ พลาดของโปรแกรม. สบื ค้นเมื่อวนั ท่ี 31 ธนั วาคม 2562. จากเวป็ ไซต์ กกกกกกกhttps://imagineering.co.th/digital-kids-ป3-หนว่ ย2/
Search
Read the Text Version
- 1 - 20
Pages: