หน่วยการ เรียน รู้ ที่ 2 การออกแบบและการเขียนโปรแกรมเบื้องต้น

หน่วยการ เรียน รู้ ที่ 2 การออกแบบและการเขียนโปรแกรมเบื้องต้น

เขตรัตน์ ม่วงสุข Download PDF

  • Publications : 5
  • Followers : 0

หน่วยที่ 2 การออกแบบและการเขียนโปรแกรมเบื้องต้น

หน่วยที่2_การออกแบบและการเขียนโปรแกรมเบื้องต้น

View Text Version Category : All

  • Follow

  • 0

  • Embed

  • Share

  • Upload

หน่วยการ เรียน รู้ ที่ 2 การออกแบบและการเขียนโปรแกรมเบื้องต้น

เมื่อนักเรียนศึกษาเรื่อง การเขียนโปรแกรมเบื้องต้น แล้ว นักเรียนสามารถบอกได้ว่า

      1.  ในการเริ่มเขียนโปรแกรมจะต้องออกแบบการทำงานของโปรแกรมขึ้นมาก่อน หรือเรียกว่า ขั้นตอนวิธี  ซึ่งทำได้โดยการสร้างลำดับของคำสั่ง เช่น ถ้าให้หุ่นยนต์เดินไปทางขวา 3 บล็อก แล้วเดินขึ้นด้านบนเราอาจคิดขั้นตอนวิธีเป็นคำพูดขึ้นมาก่อน แล้วเปลี่ยนเป็นโปรแกรมโดยใช้บัตรคำสั่ง

     2.  การเขียนโปรแกรมมีเครื่องมือในการเขียนโปรแกรมหลายรูปแบบ เช่น เขียนโปรแกรมโดยใช้คำสั่งของภาษาโปรแกรมตามที่ออกแบบไว้ หรือเขียนโปรแกรมโดยใช้บัตรคำสั่งที่ออกแบบไว้ให้หุ่นยนต์เข้าใจ

     3.  แหล่งการเรียนรู้เกี่ยวกับการเขียนโปรแกรมที่น่าสนใจในปัจจุบันมีอยู่มากมาย เช่น เว็บไซต์    https://code.org จะมีบทเรียนให้เลือกเรียน หรือฝึกเขียนโปรแกรมมากมาย

     4.  การเขียนโปรแกรมบางครั้งอาจมีข้อผิดพลาดเกิดขึ้น เช่น การเขียนโปรแกรมด้วยคำสั่งแล้วเราสะกดผิด หรือเขียนคำสั่งที่โปรแกรมไม่เข้าใจ หากตรวจสอบทีละคำสั่งแล้วแก้ไขให้ถูกต้อง โปรแกรมสามารถ ทำงานต่อไปได้

     5.  Scratch เป็นอีกเครื่องมือหนึ่งที่ใช้ในการเขียนโปรแกรมได้เป็นอย่างดี ซึ่งสามารถเขียนได้หลายรูปแบบ    โดยการเขียนโปรแกรมบนเว็บไซต์หรือติดตั้งไว้ในเครื่องเลยก็ได้

จุดประสงค์ / ตัวชี้วัด เรื่อง การเขียนโปรแกรมเบื้องต้น

ว 4.2 ป.2/2         เขียนโปรแกรมอย่างง่าย โดยใช้ซอฟต์แวร์หรือสื่อ และตรวจหาข้อผิดพลาดของโปรแกรม

สาระการเรียนรู้ การเขียนโปรแกรมเบื้องต้น

  1. การเขียนโปรแกรมอย่างง่าย
  2. การเขียนโปรแกรมโดยใช้บัตรคำสั่ง
  3. สนุกกับการเขียนโปรแกรม
  4. การตรวจสอบความผิดพลาดของโปรแกรม
  5. การเขียนโปรแกรมด้วย Scratch
  6. การเขียนโปรแกรม Scratch ให้แมวเดินลากเส้น เป็นรูปแปดเหลี่ยม          

แบบทดสอบ เรื่อง การเขียนโปรแกรมเบื้องต้น

หน่วยการ เรียน รู้ ที่ 2 การออกแบบและการเขียนโปรแกรมเบื้องต้น

  • Kruaof
  • ครูออฟ
  • ป.2
  • วิทยาการคำนวน

สาระสำคัญ/ความคิดรวมยอด

         การออกแบบโปรแกรมที่มีการใช้ตัวแปร เงื่อนไข วนซ้ำ การออกแบบอัลกอริทึม เพื่อแก้ปัญหาทางคณิตศาสตร์ วิทยาศาสตร์อย่างง่าย อาจใช้แนวคิดเชิงนามธรรมในการออกแบบเพื่อ

ให้การแก้ไขปัญหามีประสิทธิภาพ 

การแก้ปัญหาอย่างเป็นขั้นตอนจะช่วยให้แก้ปัญหาได้อย่างมีประสิทธิภาพ ซอฟแวร์ที่ใช้ในการเขียนโปรแกรม เช่นScratch,code.org, microbit, blockly, python, java และ c เขียน

โปรแกรมทางเลือกและคำสั่งวนซ้ำตัวอย่างโปรแกรม เช่น โปรแกรมสมาการเคลื่อนที่ โปรแกรมคำนวณหาพื้นที่ โปรแกรม

ตัวชี้วัด/จุดประสงค์การเรียนรู้

 ตัวชี้วัด                  

ว 4.2  เข้าใจและใช้แนวคิดเชิงคำนวณในการแก้ปัญหาที่พบในชีวิตจริงอย่างเป็นขั้นตอนและเป็นระบบ ใช้เทคโนโลยีสารสนเทศและการสื่อสารในการเรียนรู้ การทำงาน และการแก้ปัญหาได้อย่างมีประสิทธิภาพ รู้เท่าทัน และมีจริยธรรม

             ว 4.2 ม. 1/2 ออกแบบและเขียนโปรแกรมอย่างง่ายเพื่อแก้ปัญหาทางคณิตศาสตร์ หรือวิทยาศาสตร์

วัตถุประสงค์
          1.อธิบายความหมายของหลักการออกแบบและการเขียนโปรแกรม

การวัดผลและประเมินผล

1.ประเมินด้านความรู้
 2.ประเมินด้านทักษะและกระบวนการ

นางสาววริณศิญา พงษ์เกษ ตำแหน่ง ครู วิทยฐานะ ครูชำนาญการพิเศษ

กลุ่มสาระการเรียนรู้วิทยาศาสตร์และเทคโนโลยี

โรงเรียนปทุมราชวงศา อำเภอปทุมราชวงศา จังหวัดอำนาจเจริญ

สำนักงานเขตพื้นที่การศึกษามัธยมศึกษาอุบลราชธานี อำนาจเจริญ

จุดประสงค์ของบทเรียน

1.  นักเรียนสามารถอธิบายขั้นตอนการแก้ปัญหาได้ 
2.  นักเรียนสามารถวางแผนการแก้ปัญหาโดยใช้รหัสลำลองและผังงาน
3.  นักเรียนสามารถแก้ปัญหาตามขั้นตอนการแก้ปัญหา

2.1 ขั้นตอนการแก้ปัญหา

การแก้ปัญหาเป็นกิจกรรมพื้นฐานในการดำรงชีวิตของมนุษย์ ปัญหาบางปัญหาสามารถหาคำตอบได้ในทันที ขณะที่บางปัญหาใช้เวลานานในการค้นหาคำตอบ อย่างไรก็ตามทุกคนต่างต้องการหาวิธีการในการแก้ปัญหาที่ทำให้ได้คำตอบที่ถูกต้องในเวลารวดเร็ว

การแก้ปัญหา ประกอบด้วย ขั้นตอนดังรูป 2.1 คือ

หน่วยการ เรียน รู้ ที่ 2 การออกแบบและการเขียนโปรแกรมเบื้องต้น

1.     วิเคราะห์และกำหนดรายละเอียดของปัญหา เป็นการทำความเข้าใจเกี่ยวกับรายละเอียดเงื่อนไข      ข้อกำหนด รวมถึงข้อจำกัดต่าง ๆ ของปัญหา ข้อมูลที่จำเป็นในการแก้ปัญหา ตรวจสอบว่ามีข้อมูลเพียงพอหรือไม่ จะหาข้อมูลเพิ่มเติมให้ครบถ้วนต่อการใช้แก้ปัญหาได้อย่างไร ข้อมูลผลลัพธ์ที่ได้คืออะไร และจะตรวจสอบความถูกต้องของผลลัพธ์ที่ได้อย่างไร

2.   การวางแผนการแก้ปัญหา เครื่องมือที่ใช้ในการวางแผนการแก้ปัญหา สำหรับการพัฒนาโปรแกรม อาจเลือกใช้รหัสลำลอง หรือผังงาน โดยวิธีการแก้ปัญหาที่ได้เรียกว่า ขั้นตอนวิธีหรืออัลกอริทึม (algorithm) ซึ่งเป็นลำดับขึ้นตอนในการแก้ปัญหาหรือการทำงานที่ชัดเจน

3. การดำเนินการปัญหา เป็นกระบวนการที่ได้วางแผนไว้มาปฏิบัติ หรือพัฒนาโปรแกรมเพื่อแก้ปัญหา โดยอาจใช้ภาษาโปรแกรมช่วยในการดำเนินการ

4. การตรวจสอบและประเมินผล ขั้นตอนนี้จะทำควบคู่ไปกับขั้นตอนการดำเนินการแก้ปัญหา โดยการตรวจสอบผลลัพธ์ที่ได้ไม่ถูกต้อง หรือยังมีส่วนที่ต้องแก้ไขปรับปรุงอยู่ ต้องย้อนกลับไปทำซ้ำตั้งแต่ขั้นตอนแรกจนกว่าจะได้ผลลัพธ์ที่ถูกต้อง

ตัวอย่างที่ 2.1 การหาค่ามากที่สุดของจำนวนสามจำนวนที่กำหนดให้

การแก้ปัญหามีขั้นตอนดังนี้

ขั้นตอนที่ การวิเคราะห์และกำหนดรายละเอียดของปัญหา

      ข้อมูลเข้า จำนวนสามจำนวน ได้แก่ a, b และ c

         ข้อมูลออกหรือสิ่งที่ต้องการ ตัวเลขที่มีค่ามากที่สุดของเลขสามจำนวน

วิธีตรวจสอบความถูกต้อง ดำเนินการหาตัวเลขที่มากที่สุดด้วยตนเอง โดยกำหนดชุดตัวเลข จำนวน เช่น 8, 7 และ 12 ในกรณีนี้ตัวเลขที่มีค่ามากที่สุด คือ 12

ขั้นตอนที่ การวางแผนการแก้ปัญหา

2.1 เปรียบเทียบ และ เพื่อหาค่ามากกว่าระหว่างสองจำนวน

2.2 นำค่าที่ได้มาเปรียบเทียบกับ เพื่อหาค่าที่มากกว่า

2.3 ค่าที่มากที่สุดคือ ผลลัพธ์ที่ได้จากขั้นตอนที่ 2.1

ขั้นตอนที่ การดำเนินการแก้ปัญหา

   ดำเนินการทดสอบตามขั้นตอนที่วางแผนไว้กับชุดตัวเลขที่กำหนด

โดยสมมติ a, b และ เป็น 8, 7 และ 12

3.1 เปรียบเทียบเพื่อหาค่าที่มากกว่าระหว่าง และ พบว่า เป็นค่าที่มากกว่า

3.2 เปรียบเทียบเพื่อหาค่ามากกว่าระหว่าง และ 12 พบว่า 12 เป็นค่าที่มากกว่า

3.3 ค่าที่มากที่สุดของ 8, 7 และ 12 คือ 12

หน่วยการ เรียน รู้ ที่ 2 การออกแบบและการเขียนโปรแกรมเบื้องต้น

ขั้นตอนที่ การตรวจสอบและปรับปรุง

          เมื่อพิจารณาคำตอบที่ได้คือ 12 กับค่าที่เหลือซึ่งได้แก่ และ พบว่า 12 มีค่ามากกว่าค่าที่เหลือทั้งคู่ คำตอบนี้จึงเป็นคำตอบที่ถูกต้องตามข้อกำหนดของสิ่งที่ต้องการ

          แนวคิดข้างต้นใช้งานได้เนื่องจากว่าหากพิจารณาจำนวนสามจำนวนใด ๆ เมื่อ a > b และ b > c แล้ว a > c ด้วย

          จากตัวอย่างแม้ว่าเราจะไม่ได้นำค่า 12 มาเปรียบเทียบกับ โดยตรง แต่เราได้นำมาเปรียบเทียบกับ ซึ่ง ถูกตรวจสอบมาก่อนหน้านี้แล้วว่ามากกว่า 7เพราะฉะนั้น 12 จึงมากกว่า ด้วย

2.2 การเขียนรหัสลำลองและผังงาน

     กระบวนการในการออกแบบแนวทางการแก้ปัญหานั้น จะต้องถ่ายทอดความคิดและความเข้าใจไปสู่การนำไปสู่การนำไปปฏิบัติได้ การถ่ายทอดความคิดจะต้องมีจุดเริ่มต้น จุดสิ้นสุด และลำดับก่อนหลังที่ชัดเจน อาจอยู่ในรูปของข้อความที่เรียงกันเป็นลำดับซึ่งเรียกว่า รหัสลำลอง (pseudo code) หรือยู่ในรูปผังงาน (flowchart

2.2.1 รหัสลำลอง

  การเขียนรหัสลำลองเป็นการใช้คำบรรยายอธิบายขั้นตอนอย่างชัดเจนในการแก้ปัญหา หรือการทำงานของโปรแกรม ซึ่งรูปแบบการเขียนจะขึ้นอยู่กับประสบการณ์ และความถนัดของผู้เขียน

ตัวอย่างที่ 2.2 รหัสลำลองการคำนวณหาพื้นที่สามเหลี่ยม

หน่วยการ เรียน รู้ ที่ 2 การออกแบบและการเขียนโปรแกรมเบื้องต้น

2.2.2 ผังงาน

ผังงานเป็นเครื่องมือหนึ่งที่ใช้ในการวางแผนหรืออกแบบการแก้ปัญหา เพื่อให้สามารถนำไปปฏิบัติตามหรือเขียนโปรแกรมเพื่อสั่งให้เครื่องคอมพิวเตอร์ทำงานได้ง่าย          สถาบันมาตรฐานแห่งชาติอเมริกา (The American Nation Standard Institute : ANSI) ได้กำหนดสัญลักษณ์ที่เป็นมาตรฐานในการเขียนผังงานไว้ ซึ่งในที่นี้จะแนะนำ      การใช้งาน สัญลักษณ์พื้นฐาน ดังตาราง 2.1

ตาราง 2.1 สัญลักษณ์พื้นฐานสำหรับการเขียนผังงาน

หน่วยการ เรียน รู้ ที่ 2 การออกแบบและการเขียนโปรแกรมเบื้องต้น

จากตัวอย่างที่ 2.2 สามารถเขียนเป็นผังงานได้ดังนี้

ตัวอย่างที่ 2.3 ผังงานการคำนวณหาพื้นที่สามเหลี่ยม

หน่วยการ เรียน รู้ ที่ 2 การออกแบบและการเขียนโปรแกรมเบื้องต้น

บางครั้งในการเขียนรหัสลำลอง หรือผังงานจะมีชื่อข้อมูลที่ยาจนทำให้เกิดความสับสน เพื่อให้เขียนได้ง่ายและกระชับสามารถแทนชื่อข้อมูลด้วยตัวแปร (variable) ซึ่งอาจเป็นตัวภาษาอังกฤษ

2.3 การกำหนดค่าให้ตัวแปร

    การกำหนดค่าอย่างใดอย่างหนึ่งให้กับตัวแปรสามารถทำได้ วิธี คือ

    1.     การรับค่าจากภายนอก
    2.   การกำหนดค่าจากค่าคงที่หรือตัวแปรอื่น

    3.    การกำหนดค่าจากการคำนวณ

หน่วยการ เรียน รู้ ที่ 2 การออกแบบและการเขียนโปรแกรมเบื้องต้น

จากตัวอย่างที่ 2.2 และ 2.3 สามารถเขียนรหัสลำลองและผังงานที่ใช้ตัวแปรได้ดังตัวอย่างที่ 2.4

ตัวอย่างที่ 2.4 รหัสลำลองและผังงานที่มีการใช้ตัวแปร

หน่วยการ เรียน รู้ ที่ 2 การออกแบบและการเขียนโปรแกรมเบื้องต้น

ตัวอย่างที่ 2.5 รหัสลำลองและผังงานที่มีการทำงาแบบมีเงื่อนไข
สถานการณ์ หลังรับประทานข้าว ถ้านักเรียนมีเงินเหลือจะซื้อขนม

หน่วยการ เรียน รู้ ที่ 2 การออกแบบและการเขียนโปรแกรมเบื้องต้น

ตัวอย่างที่ 2.6 รหัสลำลองและผังงานที่มีการทำงานแบบวนซ้ำ
สถานการณ์ นักเรียนร่วมวิ่งแข่งขันในงานกีฬาของหมู่บ้านซึ่งหากไม่ครบ กิโลเมตรจะไม่หยุดวิ่ง

หน่วยการ เรียน รู้ ที่ 2 การออกแบบและการเขียนโปรแกรมเบื้องต้น

2.4 ภาษาโปรแกรม
     ภาษาโปรแกรมคอมพิวเตอร์มีวิวัฒนาการมายาวนาน นับตั้งแต่การสั่งงานคอมพิวเตอร์ด้วยภาษาเครื่องที่ประกอบด้วยเลข และ เมื่อเราเขียนโปรแกรมแล้วจึงต้องมีการแปลให้เป็นภาษาเครื่องก่อนตัวแปรภาษาโปรแกรมมี ประเภท คือ

   1. คอมไพเลอร์ (compilerจะแปลโปรแกรมทั้งโปรแกรมให้ถูกต้อง จึงจะได้ผลลัพธ์เป็นโปรแกรมภาษาเครื่องที่นำไปสั่งงานคอมพิวเตอร์ได้ ภาษาที่ต้องแปลด้วยคอมไพเลอร์ เช่น  C, C++, Java

    2. อินเทอร์พรีเตอร์ (interpreterจะแปลคำสั่งในโปรแกรมทีละคำสั่งให้เป็นภาษาเครื่องส่งให้คอมพิวเตอร์ทำงานทันทีโดยไม่ต้องรอให้แปลเสร็จทั้งโปรแกรม เช่น Python, Logo

    สรุปท้ายบท

ปัญหาที่นักเรียนพบในชีวิตประจำวันบางปัญหาสามารถหาคำตอบได้ในทันที ขณะที่บางปัญหาอาจต้องใช้เวลาในการค้นหาคำตอบ การปฏิบัติตามขั้นตอนการแก้ปัญหาจะทำให้ได้วิธีการแก้ปัญหาที่มีประสิทธิภาพ เริ่มจากทำความเข้าใจกับปัญหา โดยวิเคราะห์และกำหนดรายละเอียดของปัญหา พิจารณาว่าสิ่งที่ต้องการคืออะไร ข้อมูลเข้าจะเป็นสิ่งใดบ้าง เคยแก้ปัญหาลักษณะเดียวกันมาก่อนหรือไม่ ข้อมูลและเงื่อนไขที่กำหนดให้เพียงพอที่จะหาคำตอบหรือไม่ ถ้าไม่เพียงพอก็จำเป็นต้องหาข้อมูลเพิ่มเติม หลังจากทำความเข้าใจกับปัญหาแล้วให้วางแผนหรือออกแบบอัลกอริทึมในการหาคำตอบโดยใช้เครื่องมือรหัสลำลองหรือผังงาน หลังจากนั้นดำเนินการเขียนโปรแกรม สุดท้ายตรวจสอบผลลัพธ์ว่าถูกต้องหรือไม่ ถ้ายังไม่ถูกต้องก็ดำเนินการปรับปรุงให้ถูกต้อง