Important Announcement
PubHTML5 Scheduled Server Maintenance on (GMT) Sunday, June 26th, 2:00 am - 8:00 am.
PubHTML5 site will be inoperative during the times indicated!

Home Explore การพัฒนาโปรแกรมและการจำลองความคิด

การพัฒนาโปรแกรมและการจำลองความคิด

Description: ชุดที่1

Search

Read the Text Version

ชุดท1่ี การพัฒนาโปรแกรมและการจาลองความคิด คำนำ ชดุ กิจกรรมการเรียนรู้การเขียนโปรแกรมภาษาคอมพิวเตอร์ รายวชิ าภาษาซี ง30243 ช้ันมัธยมศึกษา ปี ที่ 5 กลุ่มสาระการเรียนรู้การงานอาชีพและเทคโนโลยี ชุดนี้จัดทาขึ้นเพื่อพัฒนาการจัดกิจกรรมการเรียนการสอน โดยเน้นผู้เรียนเป็นสาคัญ และส่งเสริมการเรียนรู้ของผู้เรียนด้วยตนเอง คิดเป็น ทาเป็นและแก้ปัญหาเป็น โดยได้ ขยายผลในด้านเนื้อหาให้กว้างและชัดเจนยิ่งข้ึน ซ่ึงถือว่าเป็นไปตามแนวทางการจัดการศึกษาของชาติที่เน้นผู้เรียน เป็นสาคัญ และสนองต่อพระราชบัญญัติการศึกษาแห่งชาติ พุทธศักราช 2542 และสอดคล้องกับหลักสูตร แกนกลางการศึกษาขั้นพื้นฐาน พุทธศักราช 2551 ที่มุ่งเน้นให้ผู้เรียนได้รับการพัฒนาทั้งความรู้ กระบวนการคิด กระบวนการสืบเสาะหาความรู้ การแก้ปัญหา ความสามารถในการสื่อสาร การตัดสินใจ การนาความรู้ไปใช้ใน ชวี ิตประจาวัน มีคณุ ธรรมค่านยิ มอนั พงึ ประสงคแ์ ละผู้เรยี นมีเจตคตทิ ่ดี ีต่อวิชาคอมพวิ เตอร์ ชดุ กจิ กรรมการเรียนรู้การเขียนโปรแกรมภาษาคอมพิวเตอร์ รายวชิ าภาษาซี ง30243 ช้ันมธั ยมศึกษา ปี ที่ 5 กลุ่มสาระการเรียนรู้การงานอาชีพและเทคโนโลยี ครอบคลุมตัวชี้วัดและสาระการเรียนรู้ตามหลักสูตร แกนกลางการศึกษาขั้นพื้นฐาน พทุ ธศักราช 2551 ซึง่ ประกอบด้วยชดุ กิจกรรมการเรยี นรู้ทัง้ หมด 5 ชดุ ดงั น้ี ชดุ ท่ี 1 เร่อื ง การพัฒนาโปรแกรมและการจาลองความคิด ชดุ ที่ 2 เร่ือง โครงสร้างของโปรแกรมภาษาซี ชุดที่ 3 เรอื่ ง คาสั่งรับค่าและแสดงผล ชุดท่ี 4 เรื่อง โครงสร้างการเขยี นโปรแกรม ชุดที่ 5 เรอ่ื ง ตวั แปรชดุ ชุดกิจกรรมการเรียนรู้การเขียนโปรแกรมภาษาคอมพิวเตอร์ รายวิชาภาษาซี ง30243 นี้เป็นชุดที่ 1 เรื่อง การพัฒนาโปรแกรมและการจาลองความคิด ผู้จัดทาหวังเป็นอย่างยิ่งว่าชุดกิจกรรมการเรียนรู้เรื่อง การพัฒนา โปรแกรมและการจาลองความคิด ชุดนี้จะช่วยให้ผู้เรียนมีความเข้าใจเกี่ยวกับแนวคิดในการเขียนโปรแกรมได้มาก ยิ่งขึน้ ซง่ึ เป็นประโยชน์อยา่ งยิง่ ต่อการพฒั นาการเรยี นรู้และสร้างองค์ความร้ทู ย่ี ง่ั ยืนของผู้เรยี นตอ่ ไป สวุ รรณา จิตต์ปล้มื 1 โรงเรยี นบางแพปฐมพิทยา ชดุ กจิ กรรมการเรยี นรกู้ ารเขยี นโปรแกรมภาษาคอมพิวเตอร์ รายวชิ าภาษาซี ง30243 ชัน้ มธั ยมศึกษาปที ่ี 5

ชุดท1ี่ การพฒั นาโปรแกรมและการจาลองความคดิ หนา้ สำรบญั 1 2 เรอ่ื ง 3 คานา สารบญั 5 คาแนะนาในการใช้ชุดกิจกรรมการเรยี นรูส้ าหรับครู 6 คาแนะนาในการใช้ชุดกิจกรรมการเรียนรูส้ าหรับนักเรียน 6 มาตรฐานการเรียนรแู้ ละตัวชวี้ ัด จดุ ประสงคก์ ารเรียนรู้ 7 แบบทดสอบกอ่ นเรียน 10 บัตรเน้อื หาที่ 1 การวเิ คราะหง์ าน 15 บัตรกจิ กรรมที่ 1 การวิเคราะห์งาน บตั รเนื้อหาท่ี 2 การเขียนผังงานโปรแกรม 1 17 บตั รกจิ กรรมท่ี 2 การเขียนผงั งานโปรแกรม 30 บตั รเนอ้ื หาที่ 3 การเขยี นโปรแกรม บัตรกจิ กรรมท่ี 3 การเขียนโปรแกรม 1 32 แบบทดสอบหลังเรียน บรรณานกุ รม 44 ภาคผนวก 46 แบบบันทึกคะแนนระหว่างเรยี น 49 เฉลยแบบทดสอบกอ่ นเรียน 50 เฉลยบัตรกิจกรรมการเรียนรทู้ ่ี 1 เร่อื ง การวิเคราะห์งาน 51 เฉลยบตั รกิจกรรมการเรยี นรู้ท่ี 2 เรอ่ื ง การเขยี นผงั งานโปรแกรม เฉลยบัตรกิจกรรมการเรยี นร้ทู ่ี 3 เร่อื ง การเขียนโปรแกรม 52 เฉลยแบบทดสอบหลงั เรยี น 53 55 57 59 ชุดกิจกรรมการเรยี นรู้การเขยี นโปรแกรมภาษาคอมพวิ เตอร์ 2 รายวชิ าภาษาซี ง30243 ชัน้ มัธยมศึกษาปที ี่ 5

ชดุ ท1่ี การพัฒนาโปรแกรมและการจาลองความคิด คำแนะนำกำรใช้ชุดกิจกรรมกำรเรยี นรู้สำหรับครู 3 เมื่อครูผู้สอนได้นาชุดกิจกรรมการเรียนรู้การเขียนโปรแกรมภาษาคอมพิวเตอร์ รายวิชาภาษาซี ง30243 ชัน้ มัธยมศึกษาปีท่ี 5 กลมุ่ สาระการเรยี นรกู้ ารงานอาชพี และเทคโนโลยี ไปใช้ควรปฏบิ ตั ิดังนี้ 1. ดาเนินการจัดกิจกรรมการเรียนการสอนโดยใช้ชุดกิจกรรมการเรียนรู้การเขียนโปรแกรม ภาษาคอมพิวเตอร์ รายวิชาภาษาซี ง30243 ชั้นมัธยมศึกษาปีที่ 5 กลุ่มสาระการเรียนรู้การงานอาชีพและ เทคโนโลยี ควบคไู่ ปกบั แผนการจดั การเรียนร้รู ายวชิ าภาษาซี ง30243 ระดบั ช้นั มธั ยมศึกษาปีที่ 5 2. หลงั จากได้ศกึ ษาเน้ือหาแล้วใหน้ กั เรียนตอบคาถามเพื่อประเมนิ ความรู้แต่ละเรอ่ื ง 3. ควรให้นกั เรยี นปฏบิ ตั ิชุดกจิ กรรมการเรยี นรู้การเขียนโปรแกรมภาษาคอมพวิ เตอร์ รายวิชาภาษาซี ง30243 ชั้นมัธยมศึกษาปีที่ 5 กลุ่มสาระการเรียนรู้การงานอาชีพและเทคโนโลยี เพื่อความเข้าใจโดยครูให้ คาแนะนาอย่างใกลช้ ดิ 4. ให้นักเรียนตรวจสอบเฉลยท้ายเล่มเมื่อนักเรียนทากิจกรรมตามชุดการเรียนรู้ชุดที่ 1 เรื่อง การ พัฒนาโปรแกรมและการจาลองความคิด จบแลว้ เพอื่ ทราบผลการเรยี นร้ขู องตนเอง 5. ทดสอบความรู้หลังเรียนจากที่นักเรียนทากิจกรรมการเรียนรู้จบชุดแล้วด้วยการทาแบบทดสอบ หลังเรียนในการเรียนรู้ด้วยชุดกิจกรรมการเรียนรู้การเขียนโปรแกรมภาษาคอมพิวเตอร์ รายวิชาภาษาซี ง30243 ชั้นมัธยมศึกษาปีที่ 5 กลุ่มสาระการเรียนรู้การงานอาชีพและเทคโนโลยี ชุดที่ 1 เรื่อง การพัฒนา โปรแกรมและการจาลองความคิด นกั เรยี นควรปฏบิ ตั ิดังนี้ 1. นกั เรียนจะได้รับชุดกิจกรรมการเรียนรู้การเขียนโปรแกรมภาษาคอมพิวเตอร์ รายวิชาภาษาซี ง30243 ชั้นมัธยมศึกษาปีที่ 5 กลุ่มสาระการเรียนรู้การงานอาชีพและเทคโนโลยี ชุดที่ 1 เรื่อง การพัฒนา โปรแกรมและการจาลองความคดิ 1 เลม่ และซดี ปี ระกอบชุดการเรียนรู้ 1 แผน่ 2. วิธีการสอนในชุดกิจกรรมการเรียนรู้การเขียนโปรแกรมภาษาคอมพิวเตอร์ รายวิชาภาษาซี ง30243 ชั้นมัธยมศึกษาปีที่ 5 กลุ่มสาระการเรียนรู้การงานอาชีพและเทคโนโลยี ชุดที่ 1 เรื่อง การพัฒนา โปรแกรมและการจาลองความคิด นักเรียนเรยี นรู้และทากจิ กรรมการเรียนรู้ ดงั ขนั้ ตอนตอ่ ไปน้ี 2.1 ศึกษาจดุ ประสงคก์ ารเรยี นรู้ ภาระงานประจาหนว่ ย และการประเมินผล 2.2 เรียนรู้ด้วยวิธีการสอนโดยใช้กระบวนการทางวิทยาศาสตร์ การสืบเสาะหาความรู้ การสารวจตรวจสอบ การสบื ค้นขอ้ มลู และอภปิ ราย ข้ันตอนการสอนมี 6 ข้นั ตอนคือ 2.2.1 ข้ันนาเข้าสบู่ ทเรียน - กระตุ้นเรา้ ความสนใจ หรือทบทวนความร้เู กา่ 2.2.2 ขั้นนาเสนอ - นาเสนอความรใู้ หม่ ชุดกจิ กรรมการเรยี นรกู้ ารเขยี นโปรแกรมภาษาคอมพิวเตอร์ รายวชิ าภาษาซี ง30243 ช้นั มัธยมศึกษาปีที่ 5

ชุดท1ี่ การพัฒนาโปรแกรมและการจาลองความคิด 2.2.3 ข้นั ฝึก - เน้นการเรียนรู้โดยใช้กระบวนการทางวิทยาศาสตร์ การสืบเสาะหาความรู้ การสารวจตรวจสอบ การสืบค้นขอ้ มูลและอภปิ ราย 2.2.4 ขนั้ การทาบัตรกจิ กรรม - ในแต่ละแผนการจัดการเรียนรู้ มีภาระงานหรือช้ินงานให้นกั เรยี นได้ทดสอบย่อย ซง่ึ ทกุ คนต้องผา่ นขั้นตอนการทาบัตรกจิ กรรมนีจ้ ึงจะสามารถเรยี นกิจกรรมตอ่ ไปได้ 2.2.5 ขั้นสรปุ - นักเรยี นชว่ ยกนั สรุปความรู้ที่ได้จากบทเรียนโดยมีครคู อยเพิ่มเตมิ 2.2.6 ขัน้ ประยกุ ต์ใช้และสะทอ้ นคดิ - นาความรู้ที่ได้จากแผนการจัดการเรียนรู้ต่าง ๆ ในหน่วยนั้นทาภาระงานและ สะท้อนคิดประจาหน่วยฝึกขั้นตอนนี้ นักเรียนต้องดาเนินการเป็นกลุ่มด้วยการนาเสนอผลงานที่มีกระบวนการ สะทอ้ นคิดภายในกลุ่มเกี่ยวกับงานของตนเองทั้งส่ิงทที่ าไดแ้ ละส่ิงทตี่ ้องปรับปรงุ ดังนั้นในขั้นตอนนี้นักเรียนจึง มีทั้งกระบวนการนาความรู้ที่ได้ไปประยุกต์ใช้ และการสะทอ้ นคิดในผลงานของกันและกันเพ่ือคดั เลือกผลงาน ท่ดี ีที่สุดประจาหน่วยเป็นกาลังใจให้นักเรียนในการทาผลงานในหน่วยต่อไป อีกทั้งยังสามารถนาข้อสะทอ้ นคิด ของเพ่อื นมาปรบั ปรงุ ผลงานของตนเองใหด้ ยี ิ่งขึน้ 3. การประเมนิ ผล 3.1 เนื้อหา - ใช้แบบทดสอบ 3.2 สมรรถนะ - ประเมนิ ตามภาระงาน 3.3 คุณลกั ษณะอันพึงประสงค์ - ประเมินโดยใช้แบบสงั เกตพฤติกรรม ชดุ กิจกรรมการเรยี นรูก้ ารเขยี นโปรแกรมภาษาคอมพิวเตอร์ 4 รายวชิ าภาษาซี ง30243 ช้ันมธั ยมศึกษาปที ่ี 5

ชุดท1ี่ การพัฒนาโปรแกรมและการจาลองความคดิ คำแนะนำกำรใช้ชดุ กิจกรรมกำรเรยี นรู้สำหรับนักเรียน ชดุ กิจกรรมการเรียนรู้การเขียนโปรแกรมภาษาคอมพิวเตอร์ รายวิชาภาษาซี ง30243 ชั้นมธั ยมศึกษา ปีที่ 5 กลุ่มสาระการเรียนรู้การงานอาชีพและเทคโนโลยี ชุดที่ 1 เรื่องการพัฒาโปรแกรมและการจาลอง ความคิด ชุดนี้ใช้ประกอบการจัดการเรียนการสอนของนักเรียน ชั้นมัธยมศึกษาปีที่ 5 โดยมีขั้นตอนการจัด กจิ กรรมการเรยี นการสอนดงั น้ี 1. นกั เรยี นฟังคาชี้แจงการใชช้ ุดกจิ กรรมการเรียนรู้ใหเ้ ขา้ ใจ 2. ให้นักเรียนรับชุดกิจกรรมการเรียนรู้การเขียนโปรแกรมภาษาคอมพิวเตอร์ รายวิชาภาษาซี ง30243 ชั้นมัธยมศึกษาปีที่ 5 กลุ่มสาระการเรียนรู้การงานอาชีพและเทคโนโลยี เล่มที่ 1 เรื่องการพัฒนา โปรแกรมและการจาลองความคิด 3. นักเรียนเริ่มทาแบบทดสอบก่อนเรียนเพื่อประเมินว่านักเรียนมีพื้นฐานความรู้ ความเข้าใจมาก น้อยเพยี งใด 4. ให้นักเรียนศึกษาเนื้อหาทาความเข้าใจให้ดีตั้งแต่หน้าแรกถึงหน้าสุดท้ายตามลาดับอย่าข้าม ข้นั ตอนและทาบตั รกจิ กรรมท้ายเล่ม ชดุ ท่ี 1 เร่อื งการพัฒนาโปรแกรมและการจาลองความคดิ 5. เมื่อพบคาชี้แจงหรือคาถามในแตล่ ะบตั รกจิ กรรมให้นักเรียนอา่ นและทากิจกรรมท่ีกาหนดให้อยา่ ง รอบคอบ 6. สง่ ผลงานการทาบตั รกจิ กรรมการเรยี นร้ทู า้ ยเล่มเพอื่ ใหค้ รูตรวจและบนั ทกึ ผล 7. เมอ่ื ทาบตั รกจิ กรรมเสรจ็ แล้วจดั เกบ็ อปุ กรณ์ให้เรียบรอ้ ย 8. เมื่อนักเรียนทุกคนทากิจกรรมการเรียนรู้ครบแล้วให้นักเรียนทาแบบทดสอบหลังเรียนด้วยความ ตั้งใจและซ่ือสตั ย์ 9. รบั ฟังการบอกคะแนน คาชมเชย และคาแนะนาเพ่มิ เตมิ จากครู ชดุ กจิ กรรมการเรยี นรกู้ ารเขยี นโปรแกรมภาษาคอมพิวเตอร์ 5 รายวชิ าภาษาซี ง30243 ชน้ั มธั ยมศกึ ษาปีที่ 5

ชุดท1่ี การพัฒนาโปรแกรมและการจาลองความคิด มำตรฐำนกำรเรียนร้แู ละตัวช้ีวดั มาตรฐาน ง 3.1 เขา้ ใจ เห็นคุณคา่ และใช้กระบวนการเทคโนโลยสี ารสนเทศในการสืบคน้ ขอ้ มลู การเรยี นรู้ การสอ่ื สาร การแก้ปญั หา การทางาน และอาชีพอย่างมีประสทิ ธิภาพ ประสทิ ธิผลและมคี ุณธรรม ตวั ช้ีวัด ง 3.1 ม.4-6/5 แก้ปญั หาดว้ ยกระบวนการเทคโนโลยีสารสนเทศอย่างมีประสิทธภิ าพ จดุ ประสงคก์ ำรเรียนรู้ 1. อธบิ ายข้ันตอนการพฒั นาซอฟต์แวร์และอธบิ ายถึงวธิ ีการในแตล่ ะขนั้ ตอนได้ 2. อธิบายความหมายและเหตุผลในการเขียนแผนภาพทใ่ี ช้ในการออกแบบโปรแกรมได้ 3. บอกสัญลกั ษณแ์ ละสามารถเขียนผงั งานทใี่ ชใ้ นการออกแบบโปรแกรมได้ ชุดกิจกรรมการเรยี นรกู้ ารเขยี นโปรแกรมภาษาคอมพิวเตอร์ 6 รายวชิ าภาษาซี ง30243 ช้นั มธั ยมศึกษาปที ี่ 5

ชดุ ท1่ี การพฒั นาโปรแกรมและการจาลองความคิด แบบทดสอบก่อนเรียน เร่ือง กำรพฒั นำโปรแกรมและกำรจำลองควำมคิด คาชแี้ จง 1. แบบทดสอบเปน็ แบบปรนยั จานวน 10 ขอ้ 2. ให้นกั เรยี นเลอื กคาตอบทถี่ กู ตอ้ งที่สุดเพียงคาตอบเดยี ว แลว้ ใส่เคร่อื งหมายกากบาท (x) ลงในกระดาษคาตอบ 1. ในการท่ีจะแกป้ ญั หาใดปญั หาหนง่ึ ไดน้ ้ันสิ่งแรกที่ต้องทาคอื ก. วางแผนแก้ปัญหา ข. ดาเนนิ การแกป้ ัญหา ค. ทาความเข้าใจเก่ยี วกับปัญหา ง. แกป้ ญั หาด้วยความรอบคอบ 2. การจาลองความคิดหมายถึงข้อใด ก. การลาดับเหตกุ ารณ์ ข. การบรรยายเหตุการณ์ ค. การกาหนดสถานการณ์ ง. การแสดงขน้ั ตอนของเหตุการณ์ 3. การเขียนโปรแกรมหมายถงึ อะไร ก. การจาลองความคดิ ข. การกาหนดโครงสร้าง ค. การออกแบบโปรแกรม ง. การใชภ้ าษาคอมพวิ เตอรเ์ พอื่ แกป้ ญั หา 4. นลินตี ้องการหาค่าเฉลยี่ ของจานวนเตม็ 3 จานวน 2, 7, 9 สง่ิ แรกทีค่ วรทาคอื ข้อใด ก. การเลอื กเครอื่ งมอื และออกแบบวิธีขน้ั ตอน ข. การวิเคราะหแ์ ละกาหนดรายละเอียดของปญั หา ค. การตรวจสอบและปรบั ปรงุ ง. การดาเนนิ การแกป้ ญั หา 5. การระบุข้อมูลเขา้ ข้อมูลออกอยใู่ นกระบวนการใดของการแก้ปญั หา ก. การวเิ คราะห์และกาหนดรายละเอียดของปญั หา ข. การเลอื กเครื่องมือและออกแบบวธิ ขี ัน้ ตอน ค. การดาเนนิ การแกป้ ญั หา ง. การตรวจสอบและปรับปรุง ชุดกจิ กรรมการเรียนรกู้ ารเขยี นโปรแกรมภาษาคอมพวิ เตอร์ 7 รายวชิ าภาษาซี ง30243 ช้นั มัธยมศึกษาปีท่ี 5

ชดุ ท1่ี การพัฒนาโปรแกรมและการจาลองความคดิ 6. ข้อใดอธิบายความหมาย “ผังงาน” ไดถ้ ูกต้อง ก. แผนภูมแิ สดงการเปรยี บเทยี บการทางานของโปรแกรม ข. แผนภาพแสดงการทางานของระบบงานหรือโปรแกรม ค. แผนงานแสดงลาดบั ขัน้ ตอนของระบบงานคอมพิวเตอร์ ง. แผนผงั แสดงการทางานภายในระบบคอมพิวเตอร์ 7. หลักการทางานขอ้ ใดทีเ่ ปน็ การทางานจากบนลงล่างเขียนคาส่ังเป็นบรรทัดและทาทีละบรรทัด จากบรรทดั บนสุดลงไปจนถงึ บรรทัดล่างสุด ก. การทางานแบบตามลาดับ ข. การเลอื กกระทาตามเงือ่ นไข ค. การทาซา้ ง. การทาตอ่ ไปเรอื่ ยๆ 8. ข้อใดคือสญั ลักษณ์แทน จดุ เรมิ่ ต้น / สนิ้ สดุ ของผังงาน ในโปรแกรมหลกั และโปรแกรมย่อย ก. ข. ค. ง. 9. ภาษาคอมพิวเตอรช์ นิดใดที่สามารถเขยี นและอ่านโปรแกรมง่ายเน่อื งจากมีลักษณะเหมอื น ภาษาองั กฤษทั่วๆไป ก. ภาษาเครื่อง ข. ภาษาแอสเซมบลี ค. ภาษาระดบั สูง ง. ภาษาองั กฤษ 10. รูปแบบของผงั งานมีกร่ี ปู แบบอะไรบา้ ง ก. 3 รปู แบบ คือ แบบการเรยี งลาดบั แบบมีเงอื่ นไข และแบบทาซา้ ข. 3 รูปแบบ คือ แบบการเรยี งลาดับ แบบมเี งอ่ื นไขและแบบการทาในขณะท่ี ค. 2 รูปแบบ คือ แบบการเรยี งลาดับและแบบมีเง่อื นไข ง. 2 รปู แบบ คอื แบบการเรยี งลาดับและแบบทาซ้า ชดุ กิจกรรมการเรยี นร้กู ารเขยี นโปรแกรมภาษาคอมพวิ เตอร์ 8 รายวชิ าภาษาซี ง30243 ชน้ั มัธยมศึกษาปที ี่ 5

ชุดท1่ี การพัฒนาโปรแกรมและการจาลองความคิด กระดำษคำตอบ เรื่อง กำรพัฒนำโปรแกรมและกำรจำลอง ควำมคิด  ก่อนเรยี น  หลงั เรียน ชื่อ .................................................................................... ชั้น ................ เลขที่ .............. ข้อท่ี ก ข ค ง 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. ชุดกจิ กรรมการเรียนรกู้ ารเขยี นโปรแกรมภาษาคอมพิวเตอร์ 9 รายวชิ าภาษาซี ง30243 ชน้ั มธั ยมศกึ ษาปีที่ 5

ชดุ ท1่ี การพฒั นาโปรแกรมและการจาลองความคดิ บตั รเน้ือหำที่ 1 กำรวเิ ครำะหง์ ำน เนอ้ื หาในบทน้ีจะกล่าวถึงขั้นตอนวธิ ีการทางคอมพิวเตอร์ (computer algorithms) เพ่อื เปน็ การให้ ความรู้พื้นฐานก่อนการเขียนโปรแกรมคอมพิวเตอร์ รวมถึงเนื้อหาเกี่ยวกับโครงสร้างภายในโปรแกรมซึ่งจะ ประกอบด้วยเนื้อหาเกี่ยวกับลักษณะของโปรแกรมแบบโครงสร้างและรูปแบบโครงสร้างภายในโปรแกรมเพื่อ ชว่ ยให้ผู้เขียนโปรแกรมสามารถเลือกใช้คาส่ังให้สอดคล้องกับโครงสร้างภายในโปรแกรมได้ซึ่งรายละเอียดของ แต่ละเนอ้ื หามีดงั ตอ่ ไปน้ี ข้นั ตอนวิธีการทางคอมพิวเตอร์ กอ่ นท่เี ราจะเขียนโปรแกรมคอมพิวเตอรภ์ าษาใดภาษาหนึง่ เพื่อแก้ปัญหาทางคอมพวิ เตอร์ เราควร ศกึ ษาข้ันตอนวธิ ีการทางคอมพิวเตอร์ เพอื่ ให้เกิดความรูค้ วามเขา้ ใจทีถ่ กู ต้องตามขน้ั ตอนวิธดี ังนี้ 1) การวิเคราะหง์ าน 2) การเขียนผังงานโปรแกรม 3) การเขยี นโปรแกรม 4) การทดสอบ และแก้ไขโปรแกรม 5) การจดั ทาเอกสารประกอบ และการบารุงรกั ษาโปรแกรม การวิเคราะห์งาน ในการวิเคราะห์งานเราจะต้องกาหนดจุดประสงค์ของการวิเคราะห์งาน และขน้ั ตอนวธิ ีการวเิ คราะห์ งานแต่ละอย่างให้ไดซ้ ่ึงงานแตล่ ะอย่างมีรายละเอยี ดดงั น้ี ชุดกจิ กรรมการเรยี นรูก้ ารเขยี นโปรแกรมภาษาคอมพิวเตอร์ 10 รายวชิ าภาษาซี ง30243 ชั้นมธั ยมศกึ ษาปีท่ี 5

ชุดท1่ี การพัฒนาโปรแกรมและการจาลองความคดิ จดุ ประสงค์ของการวเิ คราะหง์ าน ในการวเิ คราะหง์ านแตล่ ะอยา่ งมีจดุ ประสงค์ของการวิเคราะห์งานท่ีสาคญั ดงั น้ี 1. เพอ่ื หาวตั ถปุ ระสงคข์ องการเขียนโปรแกรม 2. เพอื่ หารปู แบบผลลพั ธท์ ่ตี อ้ งการ 3. เพอ่ื หาข้อมูลนาเข้าท่ีตอ้ งใส่เข้าไปในโปรแกรม 4. เพอ่ื หาตวั แปรที่จาเป็นต้องใช้ในโปรแกรม 5. เพ่อื หาข้นั ตอนวธิ กี ารทางานของโปรแกรม ขน้ั ตอนวธิ ีการวเิ คราะหง์ าน ในการวิเคราะห์งานแต่ละอย่างมขี น้ั ตอนวิธกี ารวเิ คราะหง์ านทส่ี าคญั ดงั นี้ 1. การหาวัตถุประสงคข์ องการเขยี นโปรแกรม ผูเ้ ขียนโปรแกรมจะต้องหาวัตถปุ ระสงคจ์ ากงานทจี่ ะเขยี นโปรแกรมวา่ ต้องการเขียนโปรแกรมเพ่ือ แก้ปัญหาอะไรบ้างซง่ึ จะทาให้เขยี นโปรแกรมได้ตรงกบั ความต้องการหรอื วตั ถุประสงคข์ องงานนนั้ ๆ 2. การหารปู แบบผลลพั ธ์ท่ีตอ้ งการ เมื่อผู้เขียนโปรแกรมหาวัตถุประสงค์ของการเขยี นโปรแกรมไดแ้ ล้ว ข้ันตอนตอ่ มาคอื การกาหนดรปู แบบ ผลลพั ธท์ ี่ต้องการจากโปรแกรมซ่ึงรูปแบบผลลพั ธอ์ าจอยูใ่ นลกั ษณะของข้อความหรือตวั เลข หรอื ตาราง หรอื แผนภมู ิ หรืออาจใช้ผสมกนั ระหวา่ งตัวเลขกับขอ้ ความ หรอื ขอ้ ความกบั ตวั เลข และตารางก็ ได้ ขึน้ อยู่กับผูเ้ ขยี นโปรแกรมเป็นผูก้ าหนดเองแต่โดยส่วนมากนิยมแสดงผลลัพธข์ องโปรแกรมให้อยูใ่ น รูปแบบทีเ่ ขา้ ใจง่ายมากกวา่ รปู แบบท่ซี บั ซอ้ น 3. การหาขอ้ มูลนาเขา้ ที่ต้องใส่เข้าไปในโปรแกรม ผเู้ ขียนโปรแกรมจะต้องหาข้อมลู นาเข้าจากผลลัพธท์ ีไ่ ดจ้ ากโปรแกรม โดยคานึงถึงขน้ั ตอนวธิ ีการ คานวณ และขอ้ มูลที่จาเปน็ ตอ้ งใส่เข้าไปเพ่ือใหไ้ ด้ผลลัพธท์ ี่ต้องการ ตัวอยา่ งท่ี 1.1 ผลลพั ธ์ท่ีต้องการคือพื้นท่สี ามเหลี่ยมมุมฉากขอ้ มูลนาเข้าท่ีต้องใส่เข้าไปในโปรแกรม คือ 1) สูตรคานวณพ้นื ท่สี ามเหลี่ยมมมุ ฉาก พนื้ ที่สามเหลี่ยมมมุ ฉาก = 0.5 x ฐาน x สูง 2) ความยาวของฐานและความสูงของรูปสามเหลย่ี ม ชุดกิจกรรมการเรียนรู้การเขยี นโปรแกรมภาษาคอมพวิ เตอร์ 11 รายวชิ าภาษาซี ง30243 ช้นั มธั ยมศึกษาปีที่ 5

ชุดท1่ี การพฒั นาโปรแกรมและการจาลองความคดิ 4. การหาตัวแปรท่ีจาเปน็ ต้องใช้ในโปรแกรม ตัวแปร หมายถึง ช่อื ทีผ่ เู้ ขียนโปรแกรมสามารถต้ังข้ึนเองตามหลกั การต้งั ชือ่ ตวั แปรของ ภาษาคอมพิวเตอร์ที่นามาเขียนโปรแกรม เพ่อื ใช้ในการอ้างองิ การเกบ็ ข้อมูลและเรียกใชข้ ้อมลู ภายในตวั แปร ดังนัน้ ผู้เขียนโปรแกรมจะต้องต้งั ช่ือตวั แปรท่ีใช้ในการเก็บข้อมูลท้งั หมดภายในโปรแกรมรวมถึงตัวแปรบางตวั ท่ี ใช้ในการนับจานวนรอบของการทางานในโปรแกรมอีกด้วย จากตวั อยา่ งที่ 1.1 สามารถแสดงการวิเคราะหง์ านตั้งแตข่ ั้นตอนที่ 1 ถงึ 4 ไดด้ ังนี้ 1. วตั ถุประสงคข์ องการเขยี นโปรแกรม เพอื่ คานวณหาคา่ พ้ืนท่สี ามเหลี่ยมมมุ ฉาก 2. รปู แบบผลลัพธ์ที่ตอ้ งการ พมิ พ์ผลลพั ธ์ทตี่ อ้ งการออกทางภาพดังน้ี *** output *** Base = 5 High = 4 Area = 10 3. ข้อมูลนาเข้า คือ ความยาวฐานและความสงู 4. ตัวแปรที่ใช้ B = ตัวแปรทเี่ กบ็ ความยาวของสามเหล่ียมมมุ ฉาก H = ตัวแปรที่เก็บความสูงของสามเหลยี่ มมุมฉาก Area = ตัวแปรทีเ่ ก็บผลลพั ธท์ ไ่ี ด้จากการคานวณตามสูตร Area = 1/2*B*H หรอื Area = 0.5*B*H ชุดกจิ กรรมการเรียนรกู้ ารเขยี นโปรแกรมภาษาคอมพวิ เตอร์ 12 รายวชิ าภาษาซี ง30243 ชั้นมัธยมศึกษาปีที่ 5

ชุดท1่ี การพฒั นาโปรแกรมและการจาลองความคดิ ตัวอย่างที่ 1.2 จงเขยี นวเิ คราะหง์ าน เพือ่ เขยี นโปรแกรมคานวณ พน้ื ทส่ี เี่ หล่ยี มผืนผ้า จานวน 1 รูป โดยที่ผใู้ ช้โปรแกรม จะต้องปอ้ นความกว้าง และความยาวของสีเ่ หลย่ี มผืนผ้า เขา้ ไปในโปรแกรม วิธีทา ขั้นตอนการวิเคราะห์งานท้ัง 5 ข้นั ตอน สามารถแสดงได้ดงั นี้ 1. วตั ถุประสงค์ของการเขยี นโปรแกรม : เพื่อคานวณพน้ื ที่สเ่ี หลยี่ มผนื ผ้าจานวน 1 รปู 2. รปู แบบผลลัพธ์ท่ตี อ้ งการ : พมิ พ์ผลลัพธอ์ อกทางจอภาพ ดังน้ี 3. ขอ้ มลู นาเขา้ 13 3.1 สตู รคานวณพน้ื ทสี่ ่ีเหลี่ยมผืนผ้า Area = Width*Length 3.2 รบั ค่าความกว้างและความยาวของส่ีเหลีย่ มผนื ผ้าผา่ นทางคยี บ์ อรด์ 4. ตัวแปรท่ีตั้งขึ้นเพือ่ ใชใ้ นโปรแกรม Width = ตัวแปรทใ่ี ชเ้ ก็บความกว้างของสีเ่ หล่ยี มผืนผ้า Length = ตัวแปรที่ใช้เก็บความยาวของสเ่ี หลีย่ มผืนผ้า Area = ตัวแปรทใ่ี ชเ้ ก็บพนื้ ทขี่ องสเ่ี หลี่ยมผนื ผ้า โดยคานวณได้จากสูตร Area = Width*Length 5. ขนั้ ตอนวิธีการทางานของโปรแกรมมดี ังน้ี 5.1 เรม่ิ ต้นทางาน 5.2 รับข้อมลู ค่าความยาวและความกว้างของส่เี หล่ยี มผืนผ้าผ่านทางคยี บ์ อร์ด 5.3 คานวณพืน้ ท่ีส่เี หล่ยี มผนื ผ้าตามสตู ร Area = Width*Length 5.4 พิมพค์ า่ ความยาว ความกว้าง และพนื้ ท่ีสี่เหลีย่ มผนื ผา้ ออกทางจอภาพ 5.5 จบการทางาน ชุดกจิ กรรมการเรียนร้กู ารเขยี นโปรแกรมภาษาคอมพิวเตอร์ รายวชิ าภาษาซี ง30243 ชั้นมธั ยมศึกษาปที ี่ 5

ชุดท1่ี การพฒั นาโปรแกรมและการจาลองความคดิ 5. การหาขนั้ ตอนวธิ กี ารทางานของโปรแกรม การหาขั้นตอนวิธีการทางานของโปรแกรมจะขึ้นอยู่กับลักษณะของการแก้ปัญหา ดังนั้นนักเขียน โปรแกรมท่ีมีความชานาญในระดับหน่ึงแล้วจะสามารถหาขั้นตอนวิธีการทางานของโปรแกรมไดโ้ ดยไม่ยากแต่ สาหรับผู้ท่ีเร่ิมตน้ ศกึ ษาการเขยี นโปรแกรม ควรหาขนั้ ตอนวิธีการทางานของโปรแกรมตามคาแนะนาโดยเรียง ตามลาดบั ดังน้ี ข้ันตอนวิธกี ารทางานของโปรแกรมท่ีแนะนา 5.1 เรม่ิ ตน้ ทางาน 5.2 กาหนดค่าเรมิ่ ต้นใหก้ ับตัวแปร 5.3 พมิ พห์ ัวรายงาน (ถ้ามรี ายงาน) 5.4 รับขอ้ มลู เข้าทีละเรคอรด์ 5.5 ตรวจสอบข้อมูลวา่ เป็นชุดสดุ ท้ายหรือไม่ 5.5.1 ถา้ เป็นขอ้ มูลชุดสุดท้าย ให้ไปทางานข้อ 5.11 5.5.2 ถา้ ไมใ่ ช่ขอ้ มูลชุดสุดทา้ ย ให้ทางานขอ้ ตอ่ มา (ขอ้ 5.6) 5.6 คานวณผลลพั ธ์ 5.7 เปรยี บเทียบผลลพั ธ์ (ถ้ามี) 5.8 เพิ่มคา่ ตัวแปรสะสม (ถ้ามี) 5.9 พิมพค์ ่าผลลัพธ์ทลี ะเรคอรด์ 5.10 ย้อนกลบั ไปทางานขอ้ 5.4 5.11 พมิ พส์ รปุ (ถา้ ม)ี 5.12 จบการทางาน ทั้งนีก้ ารวเิ คราะห์งานเพอื่ แก้ปญั หาแตล่ ะอย่างอาจมบี างขั้นตอนแตกตา่ งกันไป ดงั นั้นคาแนะนา ข้างตน้ จงึ เป็นเพยี งแนวทางของการหาขัน้ ตอนวธิ กี ารทางานของโปรแกรมเทา่ นั้นซง่ึ เวลาใช้งานจรงิ ผูว้ เิ คราะห์ งานต้องประยุกต์ให้เขา้ กับปญั หาท่ีตอ้ งการแก้ไขต่อไป ชดุ กิจกรรมการเรยี นรู้การเขยี นโปรแกรมภาษาคอมพวิ เตอร์ 14 รายวชิ าภาษาซี ง30243 ชน้ั มัธยมศึกษาปีที่ 5

ชดุ ท1่ี การพัฒนาโปรแกรมและการจาลองความคดิ บตั รกิจกรรมกำรเรยี นรทู้ ่ี 1 10 เร่ือง กำรวเิ ครำะหง์ ำน 1. กจิ กรรม คน้ หาเหรียญปลอม มเี หรยี ญบาทอยู่ 9 เหรียญ เป็นเหรียญปลอม 1 เหรยี ญซึง่ มนี า้ หนักเบากวา่ เหรียญจริง จงหาวธิ ใี น การหาเหรียญปลอม โดยการชงั่ ดว้ ยตาช่ัง 2 แขน เพยี ง 2 คร้ัง จากกิจกรรมข้างต้นให้นกั เรยี นตอบคาถามตอ่ ไปน้ี 1. ปัจจัยและเงอื่ นไขทก่ี าหนด .................................................................................................................................................................. .................................................................................................................................................................. .................................................................................................................................................................. .................................................................................................................................................................. 2. สิ่งท่ีโจทย์ตอ้ งการ .................................................................................................................................................................. .................................................................................................................................................................. .................................................................................................................................................................. .................................................................................................................................................................. 3. ขั้นตอนวิธีในการแกป้ ญั หา .................................................................................................................................................................. .................................................................................................................................................................. .................................................................................................................................................................. .................................................................................................................................................................. 4. ผลทไี่ ดจ้ ากการแกป้ ัญหา .................................................................................................................................................................. .................................................................................................................................................................. .................................................................................................................................................................. .................................................................................................................................................................. ชดุ กจิ กรรมการเรียนรู้การเขยี นโปรแกรมภาษาคอมพวิ เตอร์ 15 รายวชิ าภาษาซี ง30243 ชน้ั มธั ยมศกึ ษาปีท่ี 5

ชุดท1่ี การพฒั นาโปรแกรมและการจาลองความคดิ 16 บัตรกจิ กรรมกำรเรยี นรู้ท่ี 1 เรอื่ ง กำรวเิ ครำะห์งำน 2. จงเขยี นวิเคราะห์งาน เพ่อื เขยี นโปรแกรมคานวณพนื้ ที่วงกลม จานวน 1 รปู .................................................................................................................................................................. ................................................................................................................................................................. .................................................................................................................................................................. ................................................................................................................................................................. .................................................................................................................................................................. ................................................................................................................................................................. .................................................................................................................................................................. ................................................................................................................................................................. .................................................................................................................................................................. ................................................................................................................................................................. .................................................................................................................................................................. .................................................................................................................................................................. ................................................................................................................................................................. .................................................................................................................................................................. .................................................................................................................................................................. ................................................................................................................................................................. .................................................................................................................................................................. .................................................................................................................................................................. ................................................................................................................................................................. .................................................................................................................................................................. ................................................................................................................................................................. .................................................................................................................................................................. .................................................................................................................................................................. ................................................................................................................................................................. .................................................................................................................................................................. .................................................................................................................................................................. ...... ชดุ กิจกรรมการเรยี นรกู้ ารเขยี นโปรแกรมภาษาคอมพวิ เตอร์ รายวชิ าภาษาซี ง30243 ช้นั มธั ยมศึกษาปีท่ี 5

ชุดท1่ี การพฒั นาโปรแกรมและการจาลองความคดิ บัตรเนอื้ หำท่ี 2 กำรเขียนผังงำนโปรแกรม สาหรับหัวข้อการเขียนผังงานโปรแกรมจะประกอบด้วยเนื้อหาท่ีสาคญั ดังนี้คือความหมายของผังงาน ประเภทของผังงานสัญลักษณ์มาตรฐานท่ีใช้เขียนผังงานโปรแกรมหลักการเขียนผังงานโปรแกรมและขั้นตอน การเขียนผังงานโปรแกรมดงั รายละเอียดตอ่ ไปนี้ ความหมายของผังงาน “ผงั งาน” “ผังงาน” (flowchart) ทางคอมพิวเตอร์ หมายถึง แผนภาพที่เขียนขึ้นโดยใช้สัญลักษณ์มาตรฐาน เพอ่ื แสดงขนั้ ตอนวิธีการทางานของโปรแกรม หรอื ระบบงานท่ตี อ้ งการ ประเภทของผังงาน ผงั งานสามารถจาแนกออกได้ 2 ประเภท คอื 1. ผังงานระบบ (system flowchart) หมายถึง ผังงานที่แสดงถึงขั้นตอนวิธีการทางานของ ระบบงานใดระบบหนึ่งซึ่งในผังงานระบบจะแสดงให้เห็นถึงสื่อที่ใช้รับข้อมูลบันทึกข้อมูล วิธีการประมวลผล ขั้นตอนการทางานและความสัมพันธ์ของส่วนต่างๆ ในระบบงานอย่างกว้าง ๆ เพื่อให้เห็น ภาพรวมของระบบงานใดระบบงานหน่ึง เช่น ชดุ กจิ กรรมการเรียนรกู้ ารเขยี นโปรแกรมภาษาคอมพิวเตอร์ 17 รายวชิ าภาษาซี ง30243 ชัน้ มัธยมศึกษาปที ี่ 5

ชุดท1่ี การพัฒนาโปรแกรมและการจาลองความคิด รปู ท่ี 1.1 ผังงานระบบแสดงการตดั เกรด 2. ผังงานโปรแกรม (program flowchart) หมายถึงผังงานที่แสดงขั้นตอน วิธีการทางานของ โปรแกรมท่ตี อ้ งการเขียนขึ้นภายในผงั งานโปรแกรม จะแสดงให้เห็นข้ันตอน วิธกี ารทางาน ของโปรแกรมอยา่ ง ละเอียด เพื่อให้คอมพิวเตอร ์์สามารถทางานตามที่เขียนไว้ในผังงานโปรแกรม ได้อย่างถูกต้อง โดยเรา สามารถนาขั้นตอน วิธีการทางานของโปรแกรมในขั้นการวิเคราะห์งาน มาเขียนเป็นผังงานโปรแกรมได้ ทันที จากนั้นก็สามารถนาผังงานโปรแกรมไปเขียนโปรแกรมตามที่ต้องการได้ ดังนั้นในเรื่องของการเขียนผัง งานท่ีจะกล่าวตอ่ ไปน้ีจะเกยี่ วขอ้ งกบั ผังงานโปรแกรมทง้ั สิ้นเชน่ รูปท่ี 1.2 ผงั งานโปรแกรมแสดงรายละเอียดการทางานของโปรแกรมสาหรับตดั เกรด ชุดกจิ กรรมการเรยี นรูก้ ารเขยี นโปรแกรมภาษาคอมพิวเตอร์ 18 รายวชิ าภาษาซี ง30243 ชัน้ มัธยมศึกษาปีท่ี 5

ชดุ ท1ี่ การพัฒนาโปรแกรมและการจาลองความคดิ สญั ลกั ษณ์มาตรฐานท่ีใช้เขียนผังงานโปรแกรม สถาบันมาตรฐานแห่งชาติของสหรัฐอเมริกา (American National Standard Institute) และ องค์การระหว่างประเทศว่าด้วยการมาตรฐาน (International Organization for Standardization) ได้ รว่ มกันกาหนดสญั ลักษณ์มาตรฐานท่ใี ช้เขียนผังงานโปรแกรม โดยจะนาเสนอสัญลักษณ์ท่ีนิยมนามาใชเ้ ขียนผัง งานโปรแกรม ดังตอ่ ไปนี้ 1. สัญลักษณ์ Process ความหมายของ Process คือ การกาหนดค่าหรือการคานวณคา่ ตวั อย่างท่ี 1.3 แสดงการกาหนดค่าใหต้ วั แปร Total ตัวอยา่ งท่ี 1.4 แสดงการคานวณคา่ ผลรวมของตวั แปร Total ชดุ กจิ กรรมการเรียนรู้การเขยี นโปรแกรมภาษาคอมพิวเตอร์ 19 รายวชิ าภาษาซี ง30243 ชัน้ มัธยมศกึ ษาปที ี่ 5

ชดุ ท1ี่ การพฒั นาโปรแกรมและการจาลองความคิด 2. สญั ลักษณ์ Decision ความหมายของ Decision คือการทดสอบเงื่อนไขหรือเปรยี บเทยี บเงื่อนไข เพื่อตัดสนิ ใจทางานอยา่ งใดอย่างหนงึ่ ตามท่ีต้องการ ตัวอยา่ งที่ 1.5 แสดงการเปรียบเทยี บเง่ือนไข 1 ทางเลือก ชดุ กิจกรรมการเรียนรู้การเขยี นโปรแกรมภาษาคอมพิวเตอร์ 20 รายวชิ าภาษาซี ง30243 ช้นั มัธยมศึกษาปีท่ี 5

ชดุ ท1ี่ การพัฒนาโปรแกรมและการจาลองความคดิ ตัวอยา่ งที่ 1.6 แสดงการเปรียบเทียบเง่อื นไข 2 ทางเลอื ก 3. สัญลกั ษณ์ Start/ Stop program หรือ Terminal Interrupt ความหมายของสญั ลักษณ์ คือ การเรม่ิ ตน้ โปรแกรม หรือการสิ้นสุดการทางานของโปรแกรม หรือหยดุ การทางานช่วั คราว ชุดกจิ กรรมการเรยี นรู้การเขยี นโปรแกรมภาษาคอมพิวเตอร์ 21 รายวชิ าภาษาซี ง30243 ชั้นมัธยมศึกษาปที ่ี 5

ชดุ ท1่ี การพัฒนาโปรแกรมและการจาลองความคดิ ตัวอยา่ งที่ 1.7 แสดงการใชง้ านสัญลักษณ์ Start/ Stop program หรอื Terminal Interrupt 4. สัญลกั ษณ์ Input / Output ความหมายของสัญลกั ษณ์ คอื การรับขอ้ มลู (input) หรือการแสดงผลลพั ธ์ (output)โดยไม่ได้ระบุส่ือทใ่ี ช้ ตวั อย่างท่ี 1.8 แสดงการใชง้ านสัญลกั ษณ์ Input/ Output ชดุ กิจกรรมการเรยี นรกู้ ารเขยี นโปรแกรมภาษาคอมพวิ เตอร์ 22 รายวชิ าภาษาซี ง30243 ชั้นมธั ยมศกึ ษาปที ่ี 5

ชดุ ท1่ี การพัฒนาโปรแกรมและการจาลองความคดิ 5. สัญลกั ษณ์ Display ความหมายของสัญลกั ษณ์ คอื การแสดงผลลัพธท์ างจอภาพ ตวั อยา่ งท่ี 1.9 แสดงการใช้งานสญั ลกั ษณ์ display 6. สญั ลกั ษณ์ Document ความหมายของสัญลักษณ์ คอื การพมิ พผ์ ลลพั ธอ์ อกทางกระดาษพิมพ์ ตัวอย่างท่ี 1.10 แสดงการใช้งานสญั ลกั ษณ์ Document ชดุ กิจกรรมการเรียนรู้การเขยี นโปรแกรมภาษาคอมพิวเตอร์ 23 รายวชิ าภาษาซี ง30243 ชนั้ มัธยมศึกษาปที ี่ 5

ชดุ ท1ี่ การพัฒนาโปรแกรมและการจาลองความคดิ 7. สัญลกั ษณ์ Manual Input ความหมายของสัญลกั ษณ์ คือ การรับขอ้ มูลหรือคาสง่ั ผ่านทางคียบ์ อร์ด ตัวอย่างท่ี 1.11 แสดงการใช้งานสัญลกั ษณ์ Manual Input 8. สญั ลกั ษณ์ Manual Operation ความหมายของสญั ลักษณ์คือการรบั ขอ้ มลู หรือแสดงผลลพั ธโ์ ดยไม่ระบสุ อื่ ชดุ กจิ กรรมการเรยี นรกู้ ารเขยี นโปรแกรมภาษาคอมพิวเตอร์ 24 รายวชิ าภาษาซี ง30243 ช้นั มธั ยมศึกษาปีที่ 5

ชุดท1่ี การพฒั นาโปรแกรมและการจาลองความคิด ตวั อย่างท่ี 1.12 แสดงการใชง้ านสญั ลักษณ์ Manual Operation 9. สญั ลักษณ์ Connector ความหมายของสัญลักษณ์ คือ แสดงจดุ เชอ่ื มต่อจากท่ีหนงึ่ ไปยงั อกี ทห่ี น่งึ ของผงั งาน โดยทจี่ ุดเชอื่ มตอ่ นอ้ี ยู่ในหนา้ เดียวกัน ชุดกิจกรรมการเรียนรู้การเขยี นโปรแกรมภาษาคอมพิวเตอร์ 25 รายวชิ าภาษาซี ง30243 ชั้นมัธยมศกึ ษาปที ่ี 5

ชุดท1ี่ การพฒั นาโปรแกรมและการจาลองความคดิ ตวั อย่างท่ี 1.13 แสดงการใชง้ านสัญลักษณ์ Connector 10. สญั ลกั ษณ์ Off page Connector ความหมายของสัญลกั ษณ์ คือ แสดงจดุ เช่อื มตอ่ จากทหี่ นึง่ ไปยงั อกี ท่ีหนึง่ ของผงั งาน โดยทีจ่ ุดเชื่อมตอ่ น้อี ยู่ต่างหนา้ กัน ตวั อย่างท่ี 1.14 แสดงการใช้งานสญั ลักษณ์ Off page Connector คานวณค่า Avg = Total + N เสรจ็ แลว้ ไปทางานตอ่ ไปที่จุด B โดยทีจ่ ดุ B อยูต่ า่ งหนา้ กนั ชุดกิจกรรมการเรียนร้กู ารเขยี นโปรแกรมภาษาคอมพวิ เตอร์ 26 รายวชิ าภาษาซี ง30243 ชนั้ มัธยมศกึ ษาปที ี่ 5

ชุดท1ี่ การพัฒนาโปรแกรมและการจาลองความคดิ 11. สัญลกั ษณ์ flow line and arrowheads ความหมายของสัญลักษณ์ คอื แสดงทิศทาง การทางานของผังงาน โดยใช้ลูกศร เปน็ ตัวกาหนดทศิ ทางการทางานของผงั งาน ตัวอย่างที่ 1.15 แสดงการใชง้ านสัญลกั ษณ์ flow line and arrowheads 12. สญั ลกั ษณ์ Punched Card ความหมายของสัญลักษณ์คือการรบั ขอ้ มลู หรอื แสดงผลลพั ธ์บนบัตรเจาะรู ชุดกจิ กรรมการเรยี นรู้การเขยี นโปรแกรมภาษาคอมพวิ เตอร์ 27 รายวชิ าภาษาซี ง30243 ชัน้ มธั ยมศกึ ษาปีที่ 5

ชุดท1่ี การพัฒนาโปรแกรมและการจาลองความคดิ ตวั อย่างท่ี 1.16 แสดงการใชง้ านสญั ลกั ษณ์ Punched Card หลักการเขียนผงั งานโปรแกรม การเขียนผงั งานโปรแกรม มหี ลกั การเขียนดังนี้ 1. เขยี นผงั งานจากดา้ นบนลงด้านลา่ ง 2. ใชส้ ัญลกั ษณใ์ ห้ตรงกบั ความหมายของผังงาน 3. ใชเ้ สน้ flow line และ arrowheads แสดงทิศทางการทางานของผงั งาน 4. ใส่คาอธบิ ายลงในสัญลกั ษณส์ ั้น ๆ แตเ่ ข้าใจง่าย จะใช้ภาษาไทยหรอื องั กฤษกไ็ ด้ 5. หลกี เล่ียงการโยงเส้นทิศทางของผงั งานให้ตัดกันเพราะจะทาให้สบั สน ควรใช้จดุ เชือ่ มตอ่ (connector) หนา้ เดียวกันแทน จะเข้าใจไดง้ า่ ยและเป็นระเบยี บ 6. พยายามเขยี นผงั งานใหจ้ บในหน้ากระดาษเดยี วกัน แตถ่ า้ ไม่จบในหนา้ เดยี วกัน ควรใชจ้ ุดเช่อื ม ต่อต่างหนา้ กระดาษ (off page connector) ชดุ กิจกรรมการเรียนรกู้ ารเขยี นโปรแกรมภาษาคอมพิวเตอร์ 28 รายวชิ าภาษาซี ง30243 ช้ันมัธยมศกึ ษาปีที่ 5

ชุดท1่ี การพัฒนาโปรแกรมและการจาลองความคดิ ข้นั ตอนการเขียนผังงานโปรแกรม เพ่ือความเขา้ ใจเกี่ยวกบั ข้ันตอนการเขยี นผังงานโปรแกรมได้ถกู ต้องใหศ้ กึ ษาจากตวั อยา่ งดังต่อไปน้ี ตวั อย่างท่ี 1.17 จงเขียนผังงานโปรแกรมท่ีไดว้ เิ คราะหง์ านมาแลว้ ในตวั อย่างที่ 1.2 วธิ ีทา จากการวิเคราะห์งานในตวั อย่างที่ 1.2 จะได้ว่า 1. เร่ิมตน้ ทางาน 2. รบั ขอ้ มลู ค่าความยาว และความกว้างของสเี่ หลยี่ มผืนผ้าผ่านทางคีย์บอร์ด 3. คานวณพื้นทสี่ ี่เหลีย่ มผนื ผ้าตามสตู ร Area = Width * Length 4. พมิ พ์คา่ ความยาว ความกว้าง และพืน้ ท่สี ่ีเหลี่ยมผืนผา้ ออกทาง จอภาพ 5. จบการทางาน การเขียนผังงานโปรแกรม จะนาข้นั ตอนวิธกี ารทางานของโปรแกรม ท่ไี ดจ้ ากการวเิ คราะหง์ าน มาเขียนผังงานได้ดังน้ี รปู ท่ี 1.3 แสดงผงั งานขั้นตอนวธิ กี ารทางานของโปรแกรม 29 ชุดกิจกรรมการเรียนรกู้ ารเขยี นโปรแกรมภาษาคอมพวิ เตอร์ รายวชิ าภาษาซี ง30243 ช้นั มัธยมศึกษาปีท่ี 5

ชุดท1ี่ การพัฒนาโปรแกรมและการจาลองความคิด บัตรกจิ กรรมกำรเรยี นรูท้ ี่ 2 10 เรื่อง กำรเขียนผังงำนโปรแกรม 1. ให้นักเรียนพิจารณาขอ้ ความที่กาหนดให้ แล้วนามาเขยี นโดยใหเ้ รยี งลาดบั เปน็ ขั้นตอนทีถ่ กู ต้องใน รปู แบบของผังงานโปรแกรม เริม่ ตน้ จบ รับประทาน ตม้ นา้ ให้เดอื ด ตม้ ประมาณ 1 นาที ใส่เคร่อื งปรุง ผงั งานโปรแกรม ..................................................................................................................................................................... ..................................................................................................................................................................... ..................................................................................................................................................................... ..................................................................................................................................................................... ..................................................................................................................................................................... ..................................................................................................................................................................... ..................................................................................................................................................................... ..................................................................................................................................................................... ..................................................................................................................................................................... ..................................................................................................................................................................... ..................................................................................................................................................................... ..................................................................................................................................................................... ..................................................................................................................................................................... ..................................................................................................................................................................... ..................................................................................................................................................................... ..................................................................................................................................................................... ..................................................................................................................................................................... ..................................................................................................................................................................... ชุดกิจกรรมการเรียนรกู้ ารเขยี นโปรแกรมภาษาคอมพิวเตอร์ 30 รายวชิ าภาษาซี ง30243 ชั้นมธั ยมศกึ ษาปีท่ี 5

ชุดท1ี่ การพฒั นาโปรแกรมและการจาลองความคดิ บัตรกิจกรรมกำรเรยี นร้ทู ่ี 2 31 เรอ่ื ง กำรเขยี นผงั งำนโปรแกรม 1. ใหน้ กั เรียนพิจารณาขอ้ ความทกี่ าหนดให้ แล้วนามาเขยี นโดยใหเ้ รยี งลาดบั เป็นข้ันตอนท่ถี ูกตอ้ งใน รูปแบบของผังงานโปรแกรม เร่ิมต้น จบ รบั คา่ จานวนเต็มเก็บทต่ี ัวแปร N N mod 2 เท่ากบั 0 หรอื ไม่ ถา้ N mod 2 เทา่ กับ 0 แสดงข้อความ “EVEN” ถา้ N mod 2 เทา่ กบั 0 แสดงข้อความ “ODD” ผังงานโปรแกรม ..................................................................................................................................................................... ..................................................................................................................................................................... ..................................................................................................................................................................... ..................................................................................................................................................................... ..................................................................................................................................................................... ..................................................................................................................................................................... ..................................................................................................................................................................... ..................................................................................................................................................................... ..................................................................................................................................................................... ..................................................................................................................................................................... ..................................................................................................................................................................... ..................................................................................................................................................................... ..................................................................................................................................................................... ..................................................................................................................................................................... ..................................................................................................................................................................... ..................................................................................................................................................................... ..................................................................................................................................................................... ..................................................................................................................................................................... ..................................................................................................................................................................... ชดุ กิจกรรมการเรียนรู้การเขยี นโปรแกรมภาษาคอมพวิ เตอร์ รายวชิ าภาษาซี ง30243 ชนั้ มธั ยมศึกษาปที ่ี 5

ชดุ ท1ี่ การพัฒนาโปรแกรมและการจาลองความคิด บัตรเนื้อหำที่ 3 กำรเขยี นโปรแกรม ในหวั ขอ้ เรอื่ งการเขยี นโปรแกรมจะกล่าวถึงเน้ือหา 2 สว่ น คอื ความหมายของโปรแกรมคอมพวิ เตอร์ และภาษาคอมพิวเตอรด์ ังมีรายละเอยี ดตอ่ ไปนี้ ความหมายของโปรแกรมคอมพวิ เตอร์ โปรแกรมคอมพิวเตอร์ (computer program) หมายถึง ชุดของคาสั่งที่เขียนขึ้นเพื่อสั่งให้ คอมพิวเตอร์ทางานตามที่ต้องการ ส่วนการเขียนโปรแกรม (programming) หมายถึง การเขียนชุดคาส่ังด้วย ภาษาคอมพิวเตอร์ภาษาใดภาษาหนึ่งเพื่อให้คอมพิวเตอร์ทางานตามโปรแกรมที่เราเขียนขึ้น ดังนั้นผู้เขียน โปรแกรม (programmer) จึงจาเป็นต้องเรียนรู้ภาษาคอมพิวเตอร์ภาษาใดภาษาหนึ่งหรือหลายภาษาแล้ว ฝึกฝนทกั ษะการเขยี นโปรแกรมดว้ ยภาษาคอมพิวเตอรท์ ่ีต้องการใช้งานให้เกิดความชานาญจึงจะสามารถเขียน โปรแกรมคอมพวิ เตอรไ์ ดอ้ ยา่ งมปี ระสทิ ธิภาพ ภาษาคอมพิวเตอร์ ภาษาคอมพิวเตอร์ (computer language) หมายถึง ภาษาที่สามารถนามาใช้เขียนโปรแกรม 32 คอมพิวเตอรไ์ ด้ ซง่ึ แต่ละภาษามีรายละเอียดดงั ตอ่ ไปนี้ 1. ภาษาเครื่อง (machine language) ภาษาเครื่องจัดเปน็ ภาษาคอมพวิ เตอร์ภาษาเดียวที่สามารถติดต่อกับคอมพิวเตอร์ได้โดยตรงเพราะว่า การเขยี นคาส่ังและข้อมลู ในภาษาเคร่อื งใช้ระบบเลขฐานสอง (binary number system) คอื ใช้ตัวเลข 0 และ 1 เท่านั้น ทาให้เครื่องคอมพิวเตอร์สามารถทางานได้รวดเร็วส่วนข้อเสียของภาษาเครื่อง คือ เครื่อง คอมพิวเตอร์ต่างชนิดกันมีลักษณะการเขยี นภาษาเคร่ืองที่แตกตา่ งกันไป และเกิดความยุ่งยากในการปรับปรุง แกไ้ ข ทาให้เกิดความไม่สะดวกในการใช้งาน ดังนั้นภาษานจ้ี ึงไมเ่ หมาะกบั ผู้เริม่ ต้นเขียนโปรแกรม ชุดกิจกรรมการเรยี นรกู้ ารเขยี นโปรแกรมภาษาคอมพิวเตอร์ รายวชิ าภาษาซี ง30243 ชนั้ มธั ยมศึกษาปีท่ี 5

ชุดท1่ี การพฒั นาโปรแกรมและการจาลองความคดิ ตัวอย่างที่ 1.18 แสดงคาสง่ั ของภาษาเครอ่ื งมีดังน้ี ถา้ เราตอ้ งการสัง่ ให้เครื่องทางานตามคาสง่ั 9 + 3 แสดงไดด้ งั นี้ การบวกแทนด้วยรหัส 10101010 เลข 9 เปลี่ยนเปน็ เลขฐานสอง 00001001 เลข 3 เปลีย่ นเปน็ เลขฐานสอง 00000011 ดงั นัน้ คาสง่ั 9 + 3 เขียนเป็นภาษาเครอ่ื งไดด้ งั น้ี 00001001 10101010 00000011 2. ภาษาแอสเซมบลี (assembly language) ภาษาแอสเซมบลีหรือจะเรียกชื่ออีกอย่างว่าภาษาระดับต่าซึ่งเป็นภาษาคอมพิวเตอร์ท่ีพัฒนา ขึ้นมา เพอื่ ใหผ้ ูเ้ ขยี นโปรแกรมสามารถเขียนโปรแกรมติดตอ่ กับคอมพิวเตอร์ได้ง่ายกวา่ ภาษาเครอ่ื งส่วนการเขยี นคาส่ัง ในภาษาแอสเซมบลีจะใช้คาย่อของภาษาอังกฤษและอ้างถึงตาแหน่งที่อยู่ภายในคอมพิวเตอร์เป็นส่วนใหญ่ ไดแ้ ก่ MOVE, DC, DS, CL10 เป็นต้น ผทู้ ่ีต้องใช้ภาษาแอสเซมบลีส่วนมากจะเป็นวิศวกรคอมพิวเตอร์ ดังนั้น ภาษาแอสเซมบลจี งึ ไมเ่ หมาะกับผเู้ ริ่มต้นเขียนโปรแกรม ตัวอย่างท่ี 1.19 แสดงคาสงั่ ของภาษาแอสเซมบลีมีดงั น้ี ถ้าเราตอ้ งการส่งั ใหเ้ ครื่องทางานตามคาส่งั 9 + 3 แสดงไดด้ งั นี้ MOV AX, 9 MOV BX, 3 ADD AX, BX 3. ภาษาระดบั สงู (high level language) 33 ภาษาระดบั สงู เป็นภาษาท่ีผู้เขยี นโปรแกรมสามารถเขา้ ใจได้ง่ายกว่าภาษาแอสเซมบลีและภาษาเคร่ือง ทั้งนี้ก็เพราะการเขียนคาสั่งของภาษาระดับสูงมีลักษณะเป็นภาษาอังกฤษซึ่งอ่านแล้วเข้าใจได้ง่ายกว่า ภาษาแอสเซมบลี เช่น ใช้คาว่า READ, WRITE, PRINT, COMPUTE เป็นต้น ตัวอยา่ งของภาษาระดับสูงได้แก่ ภาษาฟอร์แทรน (FORTRAN), ภาษาโคบอล (COBOL), ภาษาเบสกิ (BASIC), ภาษาปาสคาล (PASCAL) และ ภาษาซี (C) เป็นต้น ซงึ่ แตล่ ะภาษามีประวตั ิพอสังเขปดงั ต่อไปน้ี - ภาษาฟอรแ์ ทรน (FORTRAN ยอ่ มาจาก FORmula TRANslator) พฒั นาโดยบรษิ ทั IBM ระหว่าง ปี ค.ศ.1954 ถึง ค.ศ.1957 ภาษานี้ใช้สาหรับการพัฒนาโปรแกรมประยุกต์ด้านวิทยาศาสตร์และ ชดุ กจิ กรรมการเรยี นรู้การเขยี นโปรแกรมภาษาคอมพวิ เตอร์ รายวชิ าภาษาซี ง30243 ชัน้ มธั ยมศกึ ษาปีท่ี 5

ชดุ ท1่ี การพัฒนาโปรแกรมและการจาลองความคดิ วิศวกรรมศาสตร์ ท่ตี ้องใช้ในการคานวณสมการคณิตศาสตรท์ ี่ซับซอ้ นปัจจบุ ันภาษาฟอร์แทรนยงั เป็นที่นยิ มใช้ ในการพัฒนาโปรแกรมดา้ นวทิ ยาศาสตร์และวศิ วกรรมศาสตร์ - ภาษาโคบอล (COBOL ย่อมาจาก Common Business Oriented Language) พฒั นาขนึ้ ใน ปี ค.ศ.1959 เป็นภาษาที่พัฒนาขึ้นมาเพื่อใช้ในการพัฒนาโปรแกรมประยุกต์ด้านธุรกิจและการค้า ปัจจุบัน โปรแกรมท่ใี ชใ้ นดา้ นธุรกจิ จานวนมากยังเปน็ โปรแกรมทพ่ี ัฒนามาจากภาษาโคบอล - ภาษาเบสิก (BASIC ย่อมาจาก Beginners All- purpose Symbolic Instructional Code) เป็นภาษาที่พัฒนาขึ้นโดยมีจุดประสงค์เพื่อให้ผู้เริ่มต้นพัฒนาโปรแกรมสามารถเรียนรู้และเข้าใจการพัฒนา โปรแกรมอย่างง่าย ภาษาเบสกิ เปน็ ภาษาคอมพวิ เตอรภ์ าษาแรกท่ีใชเ้ คร่ืองไมโครคอมพวิ เตอร์ ภาษาคอมพวิ เตอร์ที่พัฒนาขึ้นในยคุ แรกยังมีข้อจากัดในการที่จะพัฒนาโปรแกรมขนาดใหญท่ ้ังนี้เนื่องจาก ภาษาคอมพิวเตอร์เหล่านั้นขาดโครงสร้างที่ดีทาให้การพัฒนาโปรแกรมที่มีขนาดใหญ่และมีความซับซ้อน เป็นไปได้ยากในช่วงต้นปี ค.ศ.1970 จึงมีภาษาคอมพิวเตอร์ที่เป็นภาษาเชิงกระบวนการ (Procedural หรือ Structural Language) เกิดขึ้นภาษาคอมพิวเตอร์ประเภทนี้จะมีความยืดหยุ่นในการ พัฒนาโปรแกรมทาให้สามารถแก้ไขและบารุงรักษาได้ง่ายเนื่องจากโปรแกรมถูกแยกออกเป็นส่วน ๆ ภาษาคอมพวิ เตอร์ทเี่ ปน็ ภาษาเชงิ กระบวนการท่สี าคัญคือ - ภาษาปาสคาล (Pascal) พัฒนาโดย Niclaus Wirth ในปี ค.ศ.1971 โดยมีจุดประสงค์เพื่อใช้ในการ สอนการเขียนโปรแกรมภาษาเชิงกระบวนการ ในมหาวทิ ยาลัยแตเ่ น่ืองจากภาษาปาสคาลไม่มีคณุ ลักษณะท่ีจะ สนบั สนนุ การพัฒนาโปรแกรมด้านธุรกิจและอตุ สาหกรรมจงึ ไม่ได้รบั ความนยิ มมากนัก - ภาษาซี (C) พัฒนาขึ้นในช่วงเดียวกับภาษาปาสคาลโดยนักวิจัยที่ห้องปฏิบัติการ AT&T Bell ซึ่งได้ นาเอาจุดเด่นของภาษา BCPL และภาษา B มาใช้และได้เพิ่มคุณลักษณะและชนิดข้อมูลอื่นเข้ามาด้วยเดิม ภาษาซีถือว่าเป็นภาษาคอมพิวเตอร์ที่สาคัญในการพัฒนาโปรแกรมบนระบบปฏิบัติการยูนิกส์ (Unix) ซึ่งเป็น ภาษาคอมพิวเตอร์ที่สามารถสร้างโปรแกรมประยุกต์ท่ีทางานได้รวดเร็วมากเมื่อเทียบกับภาษาคอมพิวเตอร์ อ่ืนๆ 4. ภาษาระดบั สูงมาก (very high level language) ภาษาระดับสูงมาก บางคร้ังเรียกว่า Fourth Generation Languages (4GLs) เปน็ ภาษาท่ีมีลักษณะ สาคัญคือผู้เขียนโปรแกรมไม่ต้องบอกวิธีการทางานโดยละเอียดเพียงแต่ระบุคาสั่งให้ทางานสั้น ๆ ให้ภาษา ระดับสูงมากเข้าใจก็เพียงพอส่วนวิธีการคานวณหรือการทางานภาษาระดับสูงมากจะเป็นผู้จัดการเองทั้งสิ้น บางคร้ังเรียกว่า non-procedure language ตัวอย่างภาษาระดับสูงมาก ได้แก่ ภาษา SQL (Structured Query Language) ซึ่งนิยมใช้กันในซอร์ฟแวร์ พฒั นาระบบจัดการฐานขอ้ มลู เช่น ORACLE เป็นต้น ชุดกิจกรรมการเรยี นรู้การเขยี นโปรแกรมภาษาคอมพิวเตอร์ 34 รายวชิ าภาษาซี ง30243 ช้นั มัธยมศึกษาปที ี่ 5

ชุดท1ี่ การพัฒนาโปรแกรมและการจาลองความคิด 5. ภาษาระดบั ธรรมชาติ (natural language) ภาษาธรรมชาติจะเกี่ยวข้องกับระบบฐานความรู้ (knowledge based system ) และกฎ อ้างอิง (inference rules) เพียงแต่ผู้ใช้ภาษาธรรมชาติป้อนคาถามผ่านเข้าไปในคอมพิวเตอร์ที่มี ภาษาธรรมชาติก็จะทาการวิเคราะห์คาถามแล้วไปค้นหาคาตอบจากระบบฐานความรู้ที่เก็บไว้ตัวอย่างของ ภาษาธรรมชาติ ได้แก่ ภาษา PROLOG และภาษา LISP (List Processing Language) การทดสอบและแกไ้ ขโปรแกรม หลังจากที่เราเขียนโปรแกรมเสร็จแล้วขั้นตอนต่อไป คือ การทดสอบโปรแกรมที่เขียนขึ้นซึ่งอาจพบ ความผิดพลาดได้ 2 ชนดิ ดงั น้ี 1. ความผิดพลาดทางไวยากรณ์ภาษา (syntax error) เป็นความผิดพลาดที่เกิดจากการเขียน คาสั่งของภาษาคอมพิวเตอร์ผิด ตัวอย่างเช่น คาสั่ง printf( ) ในภาษาซี ต้องเขียนด้วยตัวอักษรตัวเล็กแต่ เขียนเป็น PRINTF( ) เป็นต้น โดยส่วนมากความผิดพลาดทางไวยากรณ์จะถูกตรวจสอบพบเมื่อมีการแปล โปรแกรม (compile) ให้เปน็ ภาษาเคร่ือง ซงึ่ เราสามารถแก้ไขโดยการเขยี นคาส่ังใหถ้ ูกตอ้ งตามไวยากรณ์ของ ภาษานนั้ ๆ 2. ความผิดพลาดทางตรรกะ (logical error) เป็นความผิดพลาดที่เกิดจากการลาดับการทางาน ผิดหรือป้อนสูตรคานวณผิด ตัวอย่างเช่น ต้องการหาค่า X = X + Y แต่ป้อนสูตรเป็น X = X * Y อย่าง นี้ เป็นต้น วิธีการตรวจหาความผิดพลาดแบบนี้คือตรวจสอบการคานวณผลลัพธ์ของโปรแกรมว่าตรงกับ ผลลัพธ์ท่ีคานวณด้วยมือหรือเครื่องคิดเลขหรือไม่ถ้าไม่ตรงกันแสดงว่าเกดิ ความผิดพลาดทางตรรกะข้ึนวิธีการ แก้ไขก็คือการแก้ไขสูตรให้ถูกต้อง หรือแก้ไขลาดับการทางานให้ถูกต้องดังนั้นจะเห็นได้ว่าผู้เขียนโปรแกรม จะต้องทาการทดสอบโปรแกรมและแก้ไขโปรแกรมให้สามารถทางานได้ตามทต่ี อ้ งการ ชุดกิจกรรมการเรยี นรูก้ ารเขยี นโปรแกรมภาษาคอมพวิ เตอร์ 35 รายวชิ าภาษาซี ง30243 ชัน้ มธั ยมศกึ ษาปีท่ี 5

ชุดท1ี่ การพัฒนาโปรแกรมและการจาลองความคิด การจดั ทาเอกสารประกอบ และการบารุงรกั ษาโปรแกรม เมื่อผู้เขียนโปรแกรมได้ทาการทดสอบโปรแกรมและแก้ไขความ ผิดพลาดที่เกิดขึ้นเรียบร้อยแล้ว ข้ันตอนต่อไปก็ควรจัดทาคู่มือการใช้โปรแกรมเพราะจะทาให้ผู้ใช้โปรแกรมสามารถใช้งานได้ถูกต้อง โดยคู่มือ การใชโ้ ปรแกรมทด่ี คี วรจัดทาในลกั ษณะท่ีแสดงการทางานเป็นข้นั ตอน ผู้ใชโ้ ปรแกรมสามารถปฏบิ ัติตามไดจ้ ริง ส่วนการบารุงรักษาโปรแกรมที่พัฒนาขึ้นก็ต้องมีคาแนะนาให้ผู้ใช้โปรแกรมปฏิบัติ ตัวอย่างเช่น การเก็บ โปรแกรมต้นฉบับ ควรเก็บไว้ในกล่องที่มิดชิดป้องกันฝุ่นได้ไม่ควรเก็บไว้บนโต๊ะทางานไม่ควรเก็บไว้ในรถยนต์ เพราะอาจถูกอากาศร้อนทาให้เสยี ได้ นอกจากนี้ต้องมีการสาเนาโปรแกรมต้นฉบบั เอาไว้อย่างน้อย 1 ชุด แล้ว นาชุดที่สาเนาไปใช้ไม่ควรใช้โปรแกรมต้นฉบับโดยตรงควรเก็บเอาไว้สาหรับกรณีที่โปรแกรมสาเนาเกิดปัญหา จะไดน้ าโปรแกรมตน้ ฉบับมาทาสาเนาและใชง้ านได้ทันที โครงสรา้ งภายในโปรแกรม เนื้อหาในหัวข้อนี้จะกล่าวถึงรูปแบบโครงสร้างภายในโปรแกรมที่ผู้เขียนโปรแกรมจาเป็นต้องทราบ 36 เพราะช่วยให้ผู้เขียนโปรแกรมสามารถเลือกใช้คาสั่งให้สอดคล้องกับโครงสร้างภายในโปรแกรมได้ ซึ่งมี เนื้อหา 2 ส่วนคือ ลักษณะของโปรแกรมแบบโครงสร้าง และรูปแบบโครงสร้างภายในโปรแกรม ดัง รายละเอยี ดต่อไปน้ี ลักษณะของโปรแกรมแบบโครงสร้าง การเขียนโปรแกรมแบบโครงสร้าง (structured programming) หมายถึงการเขียนโปรแกรมที่มี การนาโครงสร้างของคาสั่งหลาย ๆ รูปแบบมาใช้ในโปรแกรมเพื่อให้โปรแกรมที่เขียนขึ้นมีขั้นตอนที่แน่นอน และสะดวกตอ่ การแก้ไขโปรแกรมโดยหลีกเล่ียงการใช้คาส่ัง goto หรอื ใช้ใหน้ ้อยท่ีสุดเพราะคาสั่ง goto จะทา ให้โปรแกรมมีการย้ายการทางานจากจุดหนึ่งไปยังอีกจุดหนึ่งที่กาหนดไว้ ซึ่งอาจเกิดความสับสนในการ ตรวจสอบการทางานของโปรแกรมได้ โดยทั่วไปแล้วภาษาคอมพิวเตอร์ที่เหมาะสมสาหรับการนามาเขียน โปรแกรมแบบโครงสร้างมีหลายภาษาตัวอย่างเช่น ภาษาปาสคาล (PASCAL) ภาษาโคบอล (COBOL) และ ภาษาซี เป็นต้นสาหรับในเอกสารนี้จะกล่าวถงึ ลักษณะของโปรแกรมแบบโครงสร้างท่ีเขียนด้วยภาษาซี เทา่ น้ัน เพื่อความเข้าใจเกี่ยวกับลักษณะของโปรแกรมแบบโครงสร้างมากยิ่งขึ้นให้ศึกษาจากตัวอย่างโปรแกรม ภาษา C ดงั ตอ่ ไปน้ี ชดุ กิจกรรมการเรียนรู้การเขยี นโปรแกรมภาษาคอมพิวเตอร์ รายวชิ าภาษาซี ง30243 ชั้นมธั ยมศึกษาปีท่ี 5

ชดุ ท1ี่ การพฒั นาโปรแกรมและการจาลองความคดิ โปรแกรมตัวอยา่ งที่ 1.1 แสดงตัวอยา่ งโปรแกรมภาษาซี ท่เี ป็นแบบโครงสรา้ งอย่างง่าย /* strucpro.c */ #include<stdio.h> void main(void) { /* สว่ นที่ 1 ประกาศตวั แปรและกาหนดค่าเริ่มตน้ ให้ตัวแปร */ int k= 1 ; float sum=0 , avg; /* สว่ นท่ี 2 คานวณคา่ ผลรวมของตัวเลข 1+2+3+…+10 */ while ( k<=10) { sum+=k; k++; } /* คานวณค่าเฉลีย่ ของตัวเลข */ avg = sum/10; /* สว่ นท่ี 3 พิมพ์ผลลัพธอ์ อกทางจอภาพ */ printf(“N=%d , SUM=%.2f , AVERAGE=%.2f\\n” , 10,sum,avg); } จากตัวอย่างโปรแกรมภาษาซี ข้างต้นจะเห็นว่าโปรแกรมนี้สามารถแบ่งส่วนของการทางาน 37 ออกเปน็ 3 ส่วนทสี่ าคัญดังนี้ ส่วนท่ี 1 คือ ส่วนของการประกาศตัวแปรและค่าเริ่มต้นของตัวแปรที่จาเป็นต้องใช้ในโปรแกรม ซง่ึ กค็ อื คาสงั่ int k=1; และคาสง่ั float = sum=0, avg; ส่วนท่ี 2 คือ ส่วนของการคานวณคา่ ผลรวม และค่าเฉล่ยี ของตัวเลข ซง่ึ ก็คอื คาสัง่ while และ คาส่ัง avg = sum/10; สว่ นท่ี 3 คอื ส่วนของการแสดงผลลพั ธท์ างจอภาพ ซึง่ กค็ ือคาสง่ั printf( ); สาหรับการแก้ไขโปรแกรมข้างต้นสามารถทาได้ง่ายและสะดวกมากตัวอย่างเช่น ผู้เขียนโปรแกรม ต้องการแก้ไขส่วนของการแสดงผลลัพธ์ก็สามารถแก้ไขในส่วนที่ 3 คือแก้ไขคาสั่ง printf( ); เท่านั้นส่วน ชุดกจิ กรรมการเรียนร้กู ารเขยี นโปรแกรมภาษาคอมพวิ เตอร์ รายวชิ าภาษาซี ง30243 ชัน้ มธั ยมศกึ ษาปีที่ 5

ชุดท1่ี การพฒั นาโปรแกรมและการจาลองความคดิ ท่ี 1 และส่วนที่ 2 ไม่ต้องแก้ไขหรือทานองเดียวกันถ้าต้องการแก้ไขค่าเร่ิมต้นของตัวแปร k ให้มีค่าเป็น 10 ก็ สามารถทาได้งา่ ยมากโดยแก้ไขส่วนที่ 1 คือคาส่ัง int k=1; แก้เป็น int k=10; ดังนั้นจะเห็นได้ว่าลักษณะของโปรแกรม แบบโครงสร้างจะมีการทางานเป็นข้ันตอนท่ีสามารถเข้าใจ การทางานของโปรแกรมไดง้ ่ายและสะดวกในการแกไ้ ขโปรแกรมภายหลงั 1.2.2 โรคูปรแงบสบร้าโงคแรบงสบรเ้ารงียภงลายาดในับโปรแกรม รปู ที่ 1.4 แสดงโครงสร้างแบบเรยี งลาดับ การทางานของโครงสร้างแบบเรียงลาดบั คอื จะทางานตามคาสัง่ ที่ 1, คาสงั่ ที่ 2, …, คาสั่งที่ n ตามลาดบั ชุดกิจกรรมการเรียนรู้การเขยี นโปรแกรมภาษาคอมพิวเตอร์ 38 รายวชิ าภาษาซี ง30243 ช้ันมธั ยมศกึ ษาปที ่ี 5

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

ชดุ ท1ี่ การพฒั นาโปรแกรมและการจาลองความคิด โครงสรา้ งแบบทดสอบเง่ือนไข 2 ทาง รูปที่ 1.6 แสดงโครงสร้างแบบทดสอบเง่ือนไข 2 ทาง การทางานของโครงสร้างแบบทดสอบเงื่อนไข 2 ทางคือทาการทดสอบเงื่อนไขว่าเป็นจริงหรือเท็จถ้าเงื่อนไข เป็นจริง ให้ทางานตามคาสั่ง A ที่กาหนดไว้แล้วออกจากการทางาน แต่ถ้าเงื่อนไขเป็นเท็จให้ทางานตาม คาสง่ั B ที่กาหนดไวแ้ ล้วออกจากการทางาน ชุดกิจกรรมการเรยี นรู้การเขยี นโปรแกรมภาษาคอมพิวเตอร์ 40 รายวชิ าภาษาซี ง30243 ชัน้ มธั ยมศกึ ษาปที ี่ 5

ชุดท1่ี การพฒั นาโปรแกรมและการจาลองความคิด โครงสรา้ งแบบทดสอบเงอ่ื นไขมากกว่า 2 ทางข้นึ ไป รปู ท่ี 1.7 แสดงโครงสร้างแบบทดสอบเง่ือนไขมากกว่า 2 ทางขน้ึ ไป การทางานของโครงสร้างแบบทดสอบเงือ่ นไขมากกว่า 2 ทางขึ้นไปมลี ักษณะดังต่อไปน์์ี ้ 1. ทาการทดสอบเงื่อนไขที่ 1 ว่าเปน็ จรงิ หรอื เทจ็ ถา้ เงอื่ นไขเปน็ จรงิ ให้ทางานตามคาส่ัง A ทีก่ าหนดไว้ แลว้ ออกจากการทางาน แตถ่ ้าเงือ่ นไขเป็นเท็จ ให้ทางานในข้อ 2. 2. ทาการทดสอบเงอ่ื นไขที่ 2 ว่าเปน็ จรงิ หรอื เทจ็ ถ้าเง่ือนไขเป็นจรงิ ให้ทางานตามคาสัง่ B ทก่ี าหนดไวแ้ ล้วออกจากการทางาน แต่ถา้ เง่ือนไขเป็นเทจ็ ให้ทางานในขอ้ 3. 3. ทาการทดสอบเงอ่ื นไขใหม่อกี โดยทาซ้าเช่นนีไ้ ปเร่อื ย ๆ จนกวา่ จะถงึ เงอ่ื นไขสดุ ทา้ ย (เงอื่ นไขที่ n) ถา้ เง่ือนไขเปน็ จรงิ ให้ทางานตามคาสัง่ N ที่กาหนดไวแ้ ลว้ ออกจากการทางาน แตถ่ า้ เงอ่ื นไขเป็นเทจ็ ให้ออกจากการทางาน ชดุ กิจกรรมการเรยี นร้กู ารเขยี นโปรแกรมภาษาคอมพิวเตอร์ 41 รายวชิ าภาษาซี ง30243 ชั้นมธั ยมศกึ ษาปีท่ี 5

ชุดท1ี่ การพฒั นาโปรแกรมและการจาลองความคดิ โครงสร้างแบบทางานวนลปู โครงสร้างแบบทางานวนลูป หมายถึง โครงสร้างของคาส่งั ทม่ี กี ารทางานซ้า ๆ เปน็ วงจรปดิ จน กวา่ เงอ่ื นไขทที่ ดสอบจะตรงกบั คา่ จริงหรอื เท็จตามโครงสร้างท่ใี ช้ จงึ สามารถออกจากการทางานได้ ซง่ึ สามารถแบ่งออกเปน็ 2 ชนดิ ดงั น้ี 1. โครงสรา้ งแบบ DO UNTIL รปู ที่ 1.8 แสดงโครงสร้างแบบ DO UNTIL การทางานของโครงสร้างแบบ DO UNTIL คือเริ่มต้นด้วยการทางานตามคาสั่งที่ต้องการภายในลูปจนหมด คาสั่งไป 1 รอบ จากน้ันจึงทาการทดสอบเงื่อนไขว่าเป็นจริงหรือเท็จ ถ้าเงื่อนไขเป็นเท็จให้กลับไปทางานตาม คาสั่งภายในลูปอีก ทางานซ้า ๆ เช่นนี้จนกว่าเงื่อนไขเป็นจริง จึงออกจากการทางานแบบนี้ได้ ลักษณะของ โครงสร้างแบบ DO UNTIL นี้จะตรงกับคาส่ัง REPEAT UNTIL ในภาษาปาสคาล ชดุ กิจกรรมการเรยี นรกู้ ารเขยี นโปรแกรมภาษาคอมพวิ เตอร์ 42 รายวชิ าภาษาซี ง30243 ช้นั มัธยมศึกษาปที ี่ 5

ชดุ ท1่ี การพฒั นาโปรแกรมและการจาลองความคดิ 2. โครงสร้างแบบ DO WHILE รูปท่ี 1.9 แสดงโครงสร้างแบบ DO WHILE การทางานของโครงสรา้ งแบบ DO WHILE คือเร่มิ ตน้ ดว้ ยการทดสอบเงื่อนไขว่าเปน็ จริงหรอื เท็จถ้าเงอื่ นไขเป็น จรงิ ให้ทางานตามคาส่งั ท่ีตอ้ งการภายในลปู จนหมดคาสง่ั จากนน้ั จงึ ยอ้ นกลับไปทาการทดสอบเงอื่ นไขอีกคร้ัง วา่ เปน็ จริงหรือเท็จ ถา้ เงอ่ื นไขเปน็ จรงิ ใหท้ างานตามคาสัง่ ภายในลูปอกี ทางานซา้ ๆ เชน่ นจ้ี นกวา่ เง่อื นไขเป็น เทจ็ จงึ ออกจากการทางานแบบนี้ได้ลักษณะของโครงสรา้ ง DO WHILE นี้จาตรงกบั คาส่ัง while ในภาษาซี ข้อควรระวงั ของโครงสรา้ งแบบทางานวนลูป การทาสอบเง่ือนไขจะต้องมที ง้ั 2 กรณี คือเป็นจริง และเป็นเทจ็ ตวั อย่างเช่น โครงสร้างแบบ DO UNTIL ถ้าเงอ่ื นไขที่ทดสอบไม่มกี รณีท่ีเปน็ จริง จะทาใหก้ ารทางานของโปรแกรมทางานซา้ ๆแบบไม่มีทางออกได้ ใน ทานองเดียวกนั โครงสรา้ งแบบ DO WHILE ถ้าเงอ่ื นไขทท่ี ดสอบไม่มกี รณีทเี่ ป็นเทจ็ จะทาใหก้ ารทางานของ โปรแกรมวนทางานซ้า ๆ แบบไมม่ ีทางออกได้ ชดุ กจิ กรรมการเรียนร้กู ารเขยี นโปรแกรมภาษาคอมพวิ เตอร์ 43 รายวชิ าภาษาซี ง30243 ชน้ั มธั ยมศึกษาปที ี่ 5

ชุดท1่ี การพัฒนาโปรแกรมและการจาลองความคิด บตั รกิจกรรมกำรเรยี นรูท้ ี่ 3 10 เรื่อง กำรเขียนโปรแกรม 1. ใหน้ กั เรยี นพมิ พ์ คอมไพล์และรันโปรแกรมตามที่กาหนดให้ดว้ ยภาษาซี แล้วตอบคาถามตอ่ ไปนี้ 44 /* 1 */ //Program : Rectangle.c /* 2 */ # include <stdio.h> /* 3 */ void main() { /* 4 */ int width , length ,RecArea; /* 5 */ printf(pInput width : r); /* 6 */ scanf(p%dr, &width); /* 7 */ printf(p\\n Input length : r); /* 8 */ scanf(p%dr, &length); /* 9 */ RecArea = width*length; /* 10 */ printf(p\\n Area of rectangle is %5d \\nr, RecArea); /* 11 */ } 1.1 เขียนผลลัพธ์จากการรนั โปรแกรม ..................................................................................................................................................................... 1.2 โปรแกรมนม้ี ีตัวแปรก่ตี วั อะไรบ้าง ชนิดของตวั แปรแตล่ ะตัวคอื อะไร ..................................................................................................................................................................... ..................................................................................................................................................................... 1.3 คาสั่งใดในโปรแกรมทท่ี าหน้าทีแ่ สดงผลทางจอภาพ ..................................................................................................................................................................... 1.4 คาสัง่ ใดในโปรแกรมที่ทาหนา้ ที่รบั ขอ้ มลู จากผู้ใชโ้ ดยป้อนผ่านแผงอักขระ ..................................................................................................................................................................... ..................................................................................................................................................................... 1.5 ชดุ อกั ขระใดมีความหมายให้ขึ้นบรรทัดใหม่ ..................................................................................................................................................................... ..................................................................................................................................................................... ..................................................................................................................................................................... ..................................................................................................................................................................... ..................................................................................................................................................................... ..................................................................................................................................................................... รชาดุ ย..ก..ว....ิจ..ชิ....ก..า....ร..ภ..ร....า..ม....ษ..ก....า..า....ซ..ร....เี....รง....ีย..3....น0......2..ร....ู้ก4......า3......ร....ชเ....ข..นั้....ยี..ม....น....ัธ..โ..ย..ป....ม....ร....ศแ......กึ ก......ษร......มา......ปภ......ทีา......ษ..่ี ..5....า....ค......อ......ม......พ........ิว......เ....ต......อ......ร....์..................................................................................................

ชดุ ท1่ี การพัฒนาโปรแกรมและการจาลองความคดิ บตั รกจิ กรรมกำรเรยี นร้ทู ่ี 3 45 เรื่อง กำรเขยี นผงั งำนโปรแกรม 1. ให้นกั เรยี นพมิ พ์ คอมไพล์และรันโปรแกรมตามทีก่ าหนดให้ดว้ ยภาษาซี แลว้ ตอบคาถามต่อไปน้ี /* 1 */ // Program : while.cpp /* 2 */ #include <stdio.h> /* 3 */ /* 4 */ void main(){ /* 5 */ int i=0; /* 6 */ while (i<5){ /* 7 */ printf(\"i=%d\\n\",i); /* 8 */ i=i+1; /* 9 */ } /* 10 */ } 1.1 จากการทางานข้างต้น นักเรยี นคิดวา่ เปน็ การตรวจสอบเงอื่ นไขกอ่ นการวนซา้ หรือตรวจสอบเง่อื นไข หลังการวนซ้า ..................................................................................................................................................................... ..................................................................................................................................................................... ..................................................................................................................................................................... ..................................................................................................................................................................... 1.2 คาส่งั ที่ใชใ้ นการวนซา้ ในโปรแกรมนี้ ได้แกค่ าสง่ั ใด ..................................................................................................................................................................... ..................................................................................................................................................................... ..................................................................................................................................................................... ..................................................................................................................................................................... 1.3 มกี ารวนซ้าก่ีรอบ ..................................................................................................................................................................... ..................................................................................................................................................................... ..................................................................................................................................................................... ..................................................................................................................................................................... ..................................................................................................................................................................... ชุดกิจกรรมการเรยี นรกู้ ารเขยี นโปรแกรมภาษาคอมพวิ เตอร์ รายวชิ าภาษาซี ง30243 ชั้นมัธยมศึกษาปที ี่ 5

ชุดท1่ี การพัฒนาโปรแกรมและการจาลองความคิด แบบทดสอบหลังเรียน เร่ือง กำรพัฒนำโปรแกรมและกำรจำลองควำมคดิ คาชีแ้ จง 1. แบบทดสอบเปน็ แบบปรนยั จานวน 10 ข้อ 2. ให้นกั เรยี นเลอื กคาตอบทถ่ี ูกต้องท่ีสุดเพียงคาตอบเดยี ว แล้วใส่เคร่อื งหมายกากบาท (x) ลงในกระดาษคาตอบ 1. ข้อใดอธิบายความหมาย “ผงั งาน” ไดถ้ กู ต้อง ก. แผนภมู ิแสดงการเปรยี บเทียบการทางานของโปรแกรม ข. แผนภาพแสดงการทางานของระบบงานหรือโปรแกรม ค. แผนงานแสดงลาดบั ขนั้ ตอนของระบบงานคอมพิวเตอร์ ง. แผนผังแสดงการทางานภายในระบบคอมพวิ เตอร์ 2. การจาลองความคิดหมายถึงขอ้ ใด ก. การลาดับเหตุการณ์ ข. การบรรยายเหตกุ ารณ์ ค. การกาหนดสถานการณ์ ง. การแสดงขั้นตอนของเหตกุ ารณ์ 3. ภาษาคอมพิวเตอรช์ นิดใดท่ีสามารถเขยี นและอ่านโปรแกรมงา่ ยเน่อื งจากมีลกั ษณะเหมือนภาษาองั กฤษ ทว่ั ๆไป ก. ภาษาเคร่อื ง ข. ภาษาแอสเซมบลี ค. ภาษาระดบั สูง ง. ภาษาอังกฤษ 4. รูปแบบของผงั งานมกี ีร่ ูปแบบอะไรบา้ ง ก. 3 รูปแบบ คือ แบบการเรียงลาดับ แบบมเี งอ่ื นไข และแบบทาซ้า ข. 3 รปู แบบ คือ แบบการเรียงลาดับ แบบมเี งอื่ นไขและแบบการทาในขณะที่ ค. 2 รูปแบบ คือ แบบการเรยี งลาดับและแบบมีเงอื่ นไข ง. 2 รปู แบบ คือ แบบการเรียงลาดับและแบบทาซา้ ชดุ กจิ กรรมการเรียนรู้การเขยี นโปรแกรมภาษาคอมพวิ เตอร์ 46 รายวชิ าภาษาซี ง30243 ช้นั มัธยมศกึ ษาปีที่ 5

ชุดท1่ี การพัฒนาโปรแกรมและการจาลองความคิด 5. การระบุข้อมูลเขา้ ขอ้ มูลออกอยูใ่ นกระบวนการใดของการแกป้ ญั หา ก. การวเิ คราะห์และกาหนดรายละเอยี ดของปัญหา ข. การเลือกเครื่องมอื และออกแบบวิธีข้ันตอน ค. การดาเนินการแกป้ ญั หา ง. การตรวจสอบและปรับปรุง 6. ในการที่จะแกป้ ญั หาใดปัญหาหนง่ึ ได้น้ันสิ่งแรกทตี่ ้องทาคือ ก. วางแผนแกป้ ัญหา ข. ดาเนินการแกป้ ัญหา ค. ทาความเข้าใจเกย่ี วกบั ปัญหา ง. แกป้ ญั หาด้วยความรอบคอบ 7. หลกั การทางานข้อใดทเี่ ป็นการทางานจากบนลงลา่ งเขยี นคาส่งั เป็นบรรทัดและทาทีละบรรทัด จากบรรทัดบนสุดลงไปจนถงึ บรรทดั ล่างสุด ก. การทางานแบบตามลาดับ ข. การเลอื กกระทาตามเงือ่ นไข ค. การทาซ้า ง. การทาตอ่ ไปเรอ่ื ยๆ 8. ขอ้ ใดคือสญั ลักษณแ์ ทน จดุ เร่ิมต้น / สน้ิ สุด ของผงั งาน ในโปรแกรมหลักและโปรแกรมย่อย ก. ข. ค. ง. 9. การเขียนโปรแกรมหมายถงึ อะไร ก. การจาลองความคดิ ข. การกาหนดโครงสรา้ ง ค. การออกแบบโปรแกรม ง. การใชภ้ าษาคอมพวิ เตอรเ์ พื่อแกป้ ญั หา 10. นลนิ ตี ้องการหาค่าเฉล่ยี ของจานวนเต็ม3 จานวน 2, 7, 9 สิง่ แรกที่ควรทาคือขอ้ ใด ก. การเลือกเคร่ืองมอื และออกแบบวธิ ีขนั้ ตอน ข. การวเิ คราะห์และกาหนดรายละเอียดของปัญหา ค. การตรวจสอบและปรับปรงุ ง. การดาเนนิ การแก้ปัญหา ชุดกิจกรรมการเรียนร้กู ารเขยี นโปรแกรมภาษาคอมพวิ เตอร์ 47 รายวชิ าภาษาซี ง30243 ช้ันมธั ยมศึกษาปีที่ 5

ชุดท1ี่ การพฒั นาโปรแกรมและการจาลองความคดิ กระดำษคำตอบ เรอ่ื ง กำรพฒั นำโปรแกรมและกำรจำลองควำมคดิ  กอ่ นเรียน  หลงั เรยี น ช่ือ .................................................................................... ช้ัน ................ เลขที่ .............. ขอ้ ที่ ก ข ค ง 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. ชดุ กจิ กรรมการเรยี นรกู้ ารเขยี นโปรแกรมภาษาคอมพวิ เตอร์ 48 รายวชิ าภาษาซี ง30243 ชัน้ มธั ยมศกึ ษาปีท่ี 5

ชดุ ท1่ี การพฒั นาโปรแกรมและการจาลองความคดิ บรรณำนกุ รม กติ ตชิ ยั ชีวาสุขถาวร. (2550). ภาษาซีทีละกา้ ว. กรุงเทพฯ : เคทพี ี คอมพ์ แอนด์ คอนซัลท.์ กุลรพี ศวิ าพรรักษ์. (2557). เทคโนโลยีสารสนเทศและคอมพวิ เตอร์ 4-6. กรงุ เทพฯ : สานกั พิมพ์เอมพันธ.์ ธีรวฒั น์ ประกอบผล. (2550). การเขยี นโปรแกรมระบบปฏิบัตกิ ารเท็กโหมด(ดว้ ยภาษาซ)ี . กรุงเทพฯ : ซัคเซสมีเดีย. นริ ุธ อานวยศิลป.์ (ม.ป.ป.). C Programming เขยี นโปรแกรมภาษาซีฉบบั สมบรู ณ์. ม.ป.ท. : ดา่ นสุทธาการพมิ พ์ พัฒพงษ์ อมรวงศ.์ (2554). การเขียนโปรแกรมภาษาซ.ี ปทมุ ธานี : มีเดยี อนิ เทลลเิ จนซ์ เทคโนโลยี. มัณฑนา ปราการสมุทร. (2534). การเขยี นชดุ คาสั่งภาษาซี. กรงุ เทพมหานคร : ดวงกมลสมัย. สถาบันสง่ เสรมิ การสอนวทิ ยาศาสตร์และเทคโนโลยี กระทรวงศึกษาธิการ. (2551). ภาษาซี ช่วงชนั้ ท่ี 4 ช้นั มัธยมศกึ ษาปที ี่ 4 - 6. กรงุ เทพฯ : โรงพมิ พ์คุรสุ ภาลาดพร้าว. สมชาย รัตนเลิศนุสรณ์. (2545). การเขียนโปรแกรมคอมพวิ เตอร์ดว้ ยภาษาซี. กรุงเทพฯ : สมาคมส่งเสรมิ เทคโนโลยี (ไทย-ญป่ี ุน่ ) โอภาส เอ่ยี มสิรวิ งศ.์ (2552). การเขียนโปรแกรมด้วยภาษาซี (Programming with C). กรงุ เทพมหานคร : ซีเอ็ด. ชดุ กจิ กรรมการเรยี นรู้การเขยี นโปรแกรมภาษาคอมพวิ เตอร์ 49 รายวชิ าภาษาซี ง30243 ชน้ั มัธยมศึกษาปีที่ 5


Like this book? You can publish your book online for free in a few minutes!
Create your own flipbook