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 ชุดกิจกรรมที่1 เรื่องการพัฒนาโปรแกรมและการจำลองความคิด

ชุดกิจกรรมที่1 เรื่องการพัฒนาโปรแกรมและการจำลองความคิด

Published by cp.suwanna, 2018-06-30 20:58:19

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

Keywords: ภาษาซี

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 = 5High = 4Area = 103. ข้อมูลนาเขา้ คือ ความยาวฐานและความสูง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 Interrupt4. สัญลักษณ์ Input / Output ความหมายของสัญลกั ษณ์ คือ การรับข้อมูล (input) หรือการแสดงผลลพั ธ์ (output)โดยไม่ไดร้ ะบสุ ่ือทใ่ี ช้ตวั อย่างท่ี 1.8 แสดงการใชง้ านสัญลกั ษณ์ Input/ Outputชดุ กจิ กรรมการเรยี นรกู้ ารเขียนโปรแกรมภาษาคอมพวิ เตอร์ 22รายวชิ าภาษาซี ง30243 ชั้นมธั ยมศกึ ษาปที ี่ 5

ชดุ ที่1 การพฒั นาโปรแกรมและการจาลองความคดิ 5. สญั ลักษณ์ Display ความหมายของสัญลกั ษณ์ คอื การแสดงผลลัพธท์ างจอภาพ ตัวอย่างท่ี 1.9 แสดงการใชง้ านสญั ลักษณ์ display6. สัญลักษณ์ 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 Operation9. สัญลักษณ์ Connector ความหมายของสัญลักษณ์ คือ แสดงจดุ เชื่อมต่อจากท่ีหนึ่งไปยงั อกี ท่ีหน่งึ ของผังงาน โดยทจี่ ุดเชอื่ มต่อน้ีอยู่ในหนา้ เดียวกันชุดกิจกรรมการเรียนรกู้ ารเขียนโปรแกรมภาษาคอมพิวเตอร์ 25รายวิชาภาษาซี ง30243 ชั้นมัธยมศกึ ษาปที ่ี 5

ชุดที่1 การพัฒนาโปรแกรมและการจาลองความคิด ตัวอยา่ งที่ 1.13 แสดงการใชง้ านสัญลกั ษณ์ Connector10. สัญลกั ษณ์ 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 arrowheads12. สัญลกั ษณ์ 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 การพฒั นาโปรแกรมและการจาลองความคิด 31 บัตรกิจกรรมกำรเรียนรทู้ ่ี 2 เร่ือง กำรเขียนผงั งำนโปรแกรม 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 000000112. ภาษาแอสเซมบลี (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 การพฒั นาโปรแกรมและการจาลองความคดิ 45 บตั รกิจกรรมกำรเรยี นรทู้ ่ี 3 เรือ่ ง กำรเขยี นผงั งำนโปรแกรม 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