แผนการจดั การเรยี นรู้ 78
ชือ่ วิชา การเขียนโปรแกรมคอมพิวเตอร์เบ้ืองต้น รหัสวชิ า 20901 - 1002
หน่วยท่ี 5 ชื่อหนว่ ย โครงสรา้ งภาษาคอมพิวเตอร์ จานวน 3 ชม. สอนคร้งั ท่ี 9
1. หวั ข้อการเรียนรู้
1. ประวัติของภาษาซี
2. โครงสรา้ งภาษาซี
2. สาระสาคัญ
ภาษาทใี่ ชส้ าหรบั การพัฒนาโปรแกรมในระบบคอมพิวเตอร์ เรียกวา่ ภาษาคอมพิวเตอร์ หมายถึง
สัญลักษณ์ อักขระบนคอมพิวเตอร์ที่ถูกกาหนดข้ึนมา เพื่อให้มนุษย์สามารถส่ังงาน และควบคุมให้
คอมพิวเตอร์ทางานได้ตรงกับตามที่ต้องการ ซ่ึงภาษาคอมพิวเตอร์น้ันมีอยู่หลายชนิด หลายแบบท่ีนามา
พัฒนาโปรแกรม
3. สมรรถนะประจาหนว่ ย
แสดงความรู้เกีย่ วกบั ประวัตขิ องภาษาซี โครงสร้างของภาษาซี ขน้ั ตอนในการสร้างโปรแกรมด้วย
ภาษาซี วิธีการทางานของตวั ประมวลผลกอ่ นในภาษาซี และหน้าทข่ี องการเขียนคาอธิบายโปรแกรมได้
4. จุดประสงค์การเรยี นรู้
4.1 จดุ ประสงคท์ ว่ั ไป
1. ประวตั ิของภาษาซี
2. โครงสรา้ งภาษาซี
4.2 จุดประสงคเ์ ชิงพฤติกรรม
1. อธบิ ายประวัติของภาษาซีได้
2. จาแนกโครงสร้างภาษาซีได้
5. กจิ กรรมการจดั การเรยี นรู้
ในการเรียนการสอนของหน่วยท่ี 5 คร้งั ที่ 9 (จานวน 3 ชั่วโมง)
ขัน้ นาเขา้ สูบ่ ทเรียน
1. ตรวจสอบรายช่อื ของนักเรียนท่ีเขา้ เรยี น
2. ครูและนกั เรียนร่วมกนั สนทนาและแสดงความคดิ เหน็ เกี่ยวกบั โครงสร้างภาษาคอมพิวเตอร์
3. ครแู สดงความคิดเหน็ เพิ่มเตมิ
79
ขนั้ สอน
1. ครบู รรยาย อธิบาย ยกตัวอยา่ งในแตล่ ะหัวข้อการเรยี น
2. ครสู าธติ การเขียนโครงสรา้ งให้นักเรียนดเู ป็นตวั อยา่ ง
3. เปดิ โอกาสให้นักเรยี นซักถามครูผู้สอน
4. ประเมินพฤติกรรมรายบคุ คลโดยครจู ะซักถามในแตล่ ะคน
ข้ันสรปุ
1. ครแู ละนักเรียนรว่ มกนั สรปุ สาระสาคัญ
2. เปดิ โอกาสใหน้ ักเรียนซักถามข้อสงสัย
3. มอบหมายให้ไปหดั ทาและศกึ ษาเพิ่มเตมิ
4. ทาแบบทดสอบหลังเรียนและเฉลยแบบทดสอบ
6. ส่ือการจดั การเรยี นรู้
1. หนังสือเรียนวชิ า การเขยี นโปรแกรมคอมพิวเตอร์เบ้ืองต้น ของ บริษัท วงั อักษร จากดั
2. แบบฝึกหดั ทา้ ยบท
3. ใบงานปฏิบัติ
4. Google Classroom
7. การวดั ผลและประเมินผล
วิธวี ดั ผล
1. ผู้เรยี นปฏิบัติภาระงานท่ีมอบหมายเสรจ็ ทันเวลาท่ีกาหนด
2. การสังเกตและประเมนิ ผลพฤติกรรมดา้ นคุณธรรม จรยิ ธรรม ค่านิยม และคุณลักษณะอันพึง
ประสงค์
เครือ่ งมอื วัดผล
1. แบบฝึกหัดท้ายบท
2. แบบสงั เกตคณุ ธรรม จรยิ ธรรม ค่านิยม และคุณลักษณะอันพงึ ประสงค์ โดยครแู ละนักเรียน
รว่ มกนั ประเมิน
8. แหล่งการเรียนรเู้ พม่ิ เติม
1. ห้องสมดุ วิทยาลัยการอาชีพสว่างแดนดิน
2. อินเทอร์เนต็
9. กจิ กรรมเสนอแนะ (ถา้ มี)
1. นักเรยี นเขา้ ไปคน้ ควา้ ข้อมูลเพมิ่ เติมจากหอ้ งสมุด
2. ทาแบบฝกึ ปฏิบัติและแบบประเมินผลการเรยี นรู้
80
สัปดาห์ท.่ี ................
บันทึกหลงั การสอน
รหสั วิชา..............................วชิ า.............................................................ระดบั ................. ชนั้ ปที ่ี...........
แผนกวชิ า.......................................................จานวนนกั เรียน.................คน มาเรียน...........................คน
ขาดเรียน...........คน มาสาย................คน ลา.............คน สอนเมื่อวันที่..........เดือน......................พ.ศ.........
หน่วยท.่ี ..................... ชอ่ื หนว่ ย............................................................................จานวน.................ชว่ั โมง
เน้ือหาวตั ถุประสงค์และส่อื การสอน
......................................................................................................................................................................
............................................................................................................................. .........................................
............................................................................................................................. .........................................
...................................................................................... ................................................................................
............................................................................................................................. .........................................
....................................................................................................................................... ...............................
.................................................................................................... ..................................................................
ปญั หาทเ่ี กิดขน้ึ ในระหว่างการเรียนการสอน
............................................................................................................................. .........................................
............................................................................................................................. .........................................
......................................................................................................................................................................
............................................................................................................................. .........................................
............................................................................................................................. .........................................
....................................................................................... ...............................................................................
แนวทางการแก้ไขปญั หาของครผู ู้สอน และผลท่ีได้
............................................................................................................................. .........................................
............................................................................................................................. .........................................
......................................................................................................................................................................
............................................................................................................................. .........................................
............................................................................................................................. .........................................
......................................................................................................................................................................
ลงช่อื ............................................ครผู สู้ อน ลงชอื่ ................................................หัวหนา้ แผนก
(นางสวุ ิมล อักษรกลาง) (นางสกุ ญั ญา ดนยั สวัสดิ)์
วนั ท่ี......................................................
วันท่ี..........................................................
81
ใบความรู้ / ใบเนื้อหา
หนว่ ยที่ 5 เรื่อง โครงสรา้ งภาษาคอมพิวเตอร์
ภาษาซีเป็นโปรแกรมพ้ืนฐานสาหรับผู้เริ่มต้นเขียนโปรแกรม เพื่อพัฒนาไปเรียนรูการเขียน
โปรแกรมด้วยภาษาอนื่ เช่น จาวา PHP จึงจาเปน็ ต้องเรยี นรู้ต้นกาเนดิ ของภาษาซีวา่ มีประวัตคิ วามเป็นมา
อย่างไร มีโครงสร้างภาษาอย่างไร ข้ันตอนการสร้างโปรแกรมภาษาซี การเขียนตัวประมวลผลก่อน การ
เขียนคาอธิบายโปรแกรม การประกาศตัวแปร กฎการต้ังชื่อตัวแปรและคาสงวน เป็นการเรียนรู้ขั้น
พ้ืนฐานทีจ่ ะเร่มิ ตน้ เขียนโปรแกรมภาษาซีต่อไป
5.1 ประวตั ิภาษาซี
ในยุคแรกๆ ของภาษาคอมพวิ เตอร์ท่ไี ดม้ ีการนาเอาภาษาเครื่องมาใช้ในการพัฒนาโปรแกรมและ
ระบบปฏิบัติการ (OS) และได้มีการสร้างภาษาบีซีพีแอล (BPCL) โดยเคนส์ ทอมป์สัน (Ken Thomson)
เพ่ือให้สามารถเขียนโปรแกรมได้ง่ายขึ้น และในปี ค.ศ. 1972 พัฒนาต่อจนเป็นภาษาซี (C Language)
โดยเดนนิส ริชชี่ (Dennis Ritchie) ท่ีห้องแลปเบลล์ (Bell Laboratories) ในยุคน้ันภาษาซีทางานบน
ระบบปฏิบัติการยูนิกซ์ (UNIX) เน่ืองจากขณะน้ันระบบปฏิบัติการวินโดวส์ (Windows) ยังไม่เกิดขึ้น ซ่ึง
ขณะนั้นระบบปฏิบัติการยูนิกซ์เขียนด้วยภาษาแอสเซมบลี (Assembly) ซึ่งเป็นภาษาท่ียึดติดกับ
ฮาร์ดแวร์ของเครื่อง จึงเป็นการยากหากจะย้ายระบบปฏิบัติการไปใช้งานเครื่องอื่น จากที่ภาษาซีเป็น
ภาษาที่ไม่ยึดติดกับฮาร์ดแวร์และสามารถนาไปสร้างโปรแกรมเพ่ืองานได้หลากหลายประเภท เช่น งาน
คานวณ งานควบคมุ การทางานของอปุ กรณ์ต่างๆ จัดการฐานขอ้ มูล เป็นต้น
ภาษาซีได้รับความนิยมมาก จึงถกพัฒนาใหส้ ามารถใช้งานได้บนเครื่องคอมพิวเตอรไ์ อบีเอ็ม/พีซี
(IBM/PC) เนื่องจากมคี วามยดื หยนุ่ ของภาษา เช่น สามารถเขยี นรวบคาสัง่ จากทยี่ าว 2-3 บรรทดั ใหเ้ หลือ
บรรทัดเดียว โดยที่ผลการทางานยงั คงเหมือนเดิม จากจุดนี้ภาษาซีจึงถกู พัฒนาเปน็ ซีพลัสพลัส (C++) ซ่ึง
เอาแนวความคิดในการเขียนโปรแกรมเชงิ วตั ถุเพม่ิ เข้ามา
จาวา (Java) และซชี าร์ป (C#) ถูกพฒั นาตอ่ ยอดมาจากภาษาซี สรา้ งข้นึ มารองรับการทางานบน
แพลทฟอร์มดอทเน็ต (.NET) ของไมโครซอฟต์ ทาให้โปรแกรมเมอร์ไม่ต้องศึกษารูปแบบการเขียน
โปรแกรมอ่นื ๆ ใหมท่ ัง้ หมด
5.2 โครงสรา้ งของโปรแกรม
5.2.1 โครงสรา้ งภายในแบง่ ออกเป็น 5 ส่วน
5.2.1.1 ส่วนหัวโปรแกรม (Header Part) เป็นส่วนที่ทุกโปรแกรมจะต้องมี ใช้ในการ
เรียกไฟล์ที่โปรแกรมต้องการใช้ในการทางาน และกาหนดค่าต่างๆ โดยคอมไพเลอร์จะกระทาตามคาส่ัง
ก่อนทีจ่ ะคอมไพลโ์ ปรแกรม ซ่ึงจะต้องเร่ิมต้นด้วยเครื่องหมาย ไดเรกทีฟ (Directive: #) และตามดว้ ยช่ือ
โปรแกรมหรอื ตัวแปรทต่ี อ้ งการกาหนดค่าสาหรบั ทใ่ี ช้กนั บอ่ ยๆ ได้แก่
82
#include เปน็ การแจ้งใหค้ อมไพเลอรอ์ า่ นไฟล์อืน่ เข้ามาคอไพลร์ ่วมดว้ ย
รปู แบบ
#include ช่ือไฟล์
ตัวอย่าง
#include “stdio.h” อา่ นไฟล์ stdio.h เข้ามาดว้ ย
#include “Test1.c” อ่านไฟล์ Test1.c เข้ามาด้วย
การกาหนดช่ือไฟล์ที่ตามหลัง #include อาจใช้เคร่ืองหมาย < > คร่อมชื่อไฟล์ได้ ซ่ึงเป็นการ
อ่านไฟล์จากไดเรกทอรีที่กาหนดไว้ก่อน แต่ถ้าใช้ “ ” เป็นการอ่านไฟล์จากไดเรกทอรีปัจจุบันท่ีกาลัง
ติดต่ออยู่ และไฟลท์ ่ีจะ include เข้ามานีต้ ้องไม่มฟี ังก์ชนั main() โดยสว่ นมากจะประกอบดว้ ยโปรแกรม
ย่อย ค่าคงท่หี รอื ขอ้ กาหนดตา่ ง ๆ
#define เปน็ การกาหนดค่านพิ จน์ตา่ ง ๆ ให้กบั ชอื่ ของตัวแปร
รปู แบบ #define NAME VALUE
ตวั อยา่ ง
#define number 10; หมายความวา่ กาหนด number มคี ่าเท่ากบั 10
#define A 2*3+10; หมายความวา่ กาหนด A มีค่าเป็น 2*3+10
5.2.1.2 ส่วนประกาศ (Global declarations) เป็นส่วนท่ีจะใช้ในการประกาศค่าตัว
แปรหรือฟังก์ชันท่ีใช้ในโปรแกรม โดยทุก ๆ ส่วนของโปรแกรมจะสามารถเรียกใช้ดูข้อมูลท่ีประกาศไว้ใน
สว่ นน้ี บางโปรแกรมอาจไม่มกี ไ็ ด้
5.2.1.3 ส่วนฟังก์ชันหลัก (main() function) เป็นสิ่งท่ีทุกโปรแกรมต้องมี ซ่ึงจะ
ประกอบด้วยประโยคคาสั่งต่าง ๆ ที่จะให้โปรแกรมทางานโดยนาคาสั่งมาเรียงต่อกัน และแต่ละประโยค
คาส่ังจะต้องจบประโยคด้วยเคร่ืองหมายเซมิโคลอน (semicolon : ;) โดยโปรแกรมหลักนี้จะเร่ิมต้นด้วย
main() ตามด้วยเครื่องหมายปกี กาเปิด { และปีกกาปิด }
5.2.1.4 ส่วนกาหนดฟังก์ชันขน้ึ ใชเ้ อง (Use-defined function) เป็นการเขยี นคาส่ังแล
ฟังก์ชันต่าง ๆ ขึ้นใช้ในโปรแกรมโดยต้องอยู่ในเครื่องหมาย { } และต้องสร้างฟังก์ชันหรือคาใหม่ท่ีให้
ทางานตามท่ตี ้องการให้กบั โปรแกรมและสามารถเรียกใช้งานได้ภายในโปรแกรม
83
ตวั อยา่ ง
#include <stdio.h>
#include <conio.h>
main()
{
function(); /*เรียกใชฟ้ งั ก์ชันท่ีสรา้ งข้นึ ใหม่*/
}
function() /*สรา้ งฟังก์ชันใหม่ โดยใชช้ อื่ ว่า fuction*/
{
return;
}
5.2.1.5 สว่ นอธิบายโปรแกรม (Program comment) เป็นส่วนทใี่ ช้ในการเขียน
คาอธิบายการทางานของโปรแกรมตา่ งๆ ทาให้ผทู้ ่ีมาดโู ปรแกรมภายหลังสามารถเข้าใจคาสง่ั ตา่ ง ๆ ท่ใี ช้
ในการทางานของโปรแกรมได้ง่ายข้นึ เม่ือคอมไพล์โปรแกรมสว่ นนีจ้ ะถกู มองข้าม ไม่มผี ลกบั การเขียน
โปรแกรมจะมหี รือไมม่ ีโปรแกรมก็สามารถทางานได้
84
ใบงานปฏบิ ตั ิ
เร่ือง โครงสร้างภาษาคอมพิวเตอร์
คาส่งั /คาชแ้ี จง
1. ให้นักเรยี นแบง่ กลุ่ม กลุ่มละ 3 คน
2. ค้นคว้าขอ้ มูลเกี่ยวกบั ประวตั ิของภาษาซีและโครงสรา้ งของภาษาซี
3. นาเสนอหน้าชนั้ เรียน
85
แบบฝึกหดั ทา้ ยบท
เรอ่ื ง โครงสร้างภาษาคอมพิวเตอร์
คาส่งั /คาชี้แจง จงอธบิ าย
1. ภาษาซมี ีประวตั ิความเป็นมาอยา่ งไร อธบิ ายพอเข้าใจ
............................................................................................................................. .........................................
.......................................................................................... ............................................................................
............................................................................................................................. .........................................
........................................................................................................................................... ...........................
........................................................................................................ ..............................................................
......................................................................
2. โครงสร้างของภาษาซีมีกีส่ ่วน อะไรบา้ ง
......................................................................................................................................................................
............................................................................................................................. .........................................
.................................................................................................................................... ..................................
................................................................................................. .....................................................................
............................................................................................................................. .........................................
......................................................................
3. การสร้างโปรแกรมภาษาซี (C) มีกข่ี น้ั ตอน อะไรบ้าง
............................................................................................................................. .........................................
.......................................................................................... ............................................................................
............................................................................................................................. .........................................
..........................................
4. ในภาษาซี (C) มวี ธิ กี ารทางานอย่างไร และมวี ิธกี ารเขียนอย่างไร
............................................................................................................................. .........................................
............................................................................................................................. .........................................
........................................................................................ ..............................................................................
..........................................
86
5. การเขียนคาอธิบายโปรแกรมมหี น้าที่อย่างไร อธิบายพอสังเขป
แผนการจัดการเรียนรู้ หน่วยท่ี 5
รหสั วชิ า 20901 - 1002 ชอ่ื วิชา การเขยี นโปรแกรมคอมพิวเตอรเ์ บอ้ื งต้น
ชอื่ หน่วย โครงสรา้ งภาษาคอมพิวเตอร์ จานวน 3 ชั่วโมง
รายการหัวข้อการเรียนรู้ จดุ ประสงค์การสอนหรือจดุ ประสงค์เชงิ พฤติกรรม
1. ขัน้ ตอนการสร้างโปรแกรมภาษาซี
2. ตวั ประมวลผลก่อน 1. จาแนกข้ันตอนการสรา้ งโปรแกรมภาษาซีได้
3. การเขียนคาอธิบายโปรแกรม 2. อธบิ ายวิธกี ารทางานของตัวประมวลผลได้
หวั ข้อการเรียนรู้ 3. บอกหน้าที่ของการเขยี นคาอธิบายโปรแกรมได้
1. ขนั้ ตอนการสรา้ งโปรแกรมภาษาซี
2. ตวั ประมวลผลกอ่ น
3. การเขยี นคาอธบิ ายโปรแกรม
วธิ กี ารสอน : บรรยายและสาธิต
สอ่ื การสอน :
1. หนังสือเรียนวิชา การเขยี นโปรแกรมคอมพิวเตอร์เบ้ืองต้น ของ บริษัท วงั อกั ษร จากัด
2. ใบงานปฏบิ ัติ
3. Google Classroom
การประเมิน :
1. เกณฑผ์ า่ นการสังเกตพฤติกรรมการปฏบิ ัตงิ านรายบุคคล ตอ้ งไมม่ ีช่องปรับปรุง
2. แบบประเมินผลการเรยี นรกู้ ่อนเรียนไม่มีเกณฑผ์ า่ น เก็บคะแนนไว้เปรียบเทยี บกบั คะแนนท่ี ได้
จากการทดสอบหลงั เรยี น
3. แบบสงั เกตคุณธรรม จรยิ ธรรม ค่านิยม และคุณลกั ษณะอนั พึงประสงค์ คะแนนขนึ้ อยกู่ ับการ
ประเมินตามสภาพจริง
แผนการจดั การเรยี นรู้ 87
ชอื่ วิชา การเขียนโปรแกรมคอมพิวเตอรเ์ บอ้ื งต้น รหัสวชิ า 20901 - 1002
หน่วยท่ี 5 ช่ือหนว่ ย โครงสร้างภาษาคอมพิวเตอร์ จานวน 6 ชม. สอนครัง้ ที่ 10
1. หัวข้อการเรียนรู้
1. ข้นั ตอนการสร้างโปรแกรมภาษาซี
2. ตวั ประมวลผลกอ่ น
3. การเขยี นคาอธบิ ายโปรแกรม
2. สาระสาคัญ
ภาษาท่ใี ชส้ าหรับการพฒั นาโปรแกรมในระบบคอมพวิ เตอร์ เรียกว่า ภาษาคอมพิวเตอร์ หมายถึง
สัญลักษณ์ อักขระบนคอมพิวเตอร์ที่ถูกกาหนดขึ้นมา เพื่อให้มนุษย์สามารถส่ังงาน และควบคุมให้
คอมพิวเตอร์ทางานได้ตรงกับตามท่ีต้องการ ซึ่งภาษาคอมพิวเตอร์น้ันมีอยู่หลายชนิด หลายแบบที่นามา
พฒั นาโปรแกรม
3. สมรรถนะประจาหนว่ ย
แสดงความรเู้ กย่ี วกบั ประวตั ขิ องภาษาซี โครงสรา้ งของภาษาซี ขั้นตอนในการสร้างโปรแกรมด้วย
ภาษาซี วธิ ีการทางานของตวั ประมวลผลกอ่ นในภาษาซี และหนา้ ท่ขี องการเขยี นคาอธิบายโปรแกรมได้
4. จุดประสงค์การเรียนรู้
4.1 จดุ ประสงคท์ ัว่ ไป
1. ปฏบิ ัติขนั้ ตอนการสร้างโปรแกรมภาษาซี
2. เขา้ ใจตวั ประมวลผลก่อน
3. รกู้ ารเขยี นคาอธิบายโปรแกรม
4.2 จุดประสงค์เชงิ พฤติกรรม
1. จาแนกข้ันตอนการสร้างโปรแกรมภาษาซีได้
2. อธิบายวิธกี ารทางานของตัวประมวลผลได้
3. บอกหนา้ ท่ีของการเขียนคาอธบิ ายโปรแกรมได้
5. กิจกรรมการจัดการเรยี นรู้
ในการเรยี นการสอนของหน่วยท่ี 5 ครั้งท่ี 10 (จานวน 3 ชั่วโมง)
ขั้นนาเข้าสู่บทเรยี น
1. ตรวจสอบรายชื่อของนักเรียนที่เข้าเรยี น
88
2. ครูและนักเรยี นร่วมกนั สนทนาทบทวนเน้ือหาทเ่ี รียนผา่ นมาและแสดงความคิดเหน็ เก่ียวกบั
โครงสรา้ งการสร้างโปรแกรมภาษาซี การทางานของตวั ประมวลผลกอ่ น
3. ครูแสดงความคิดเหน็ เพิ่มเติม
ขั้นสอน
1. ครูบรรยาย อธิบาย ยกตวั อย่างในแตล่ ะหวั ข้อการเรียน
2. เปิดโอกาสใหน้ ักเรยี นซักถามครผู ้สู อน
3. ประเมินพฤติกรรมรายบุคคลโดยครูจะซักถามในแตล่ ะคน
ขัน้ สรปุ
1. ครแู ละนกั เรียนร่วมกนั สรปุ สาระสาคัญ
2. เปิดโอกาสให้นกั เรียนซักถามข้อสงสยั
3. มอบหมายให้ไปหดั ทาและศกึ ษาเพิม่ เตมิ
6. สือ่ การจัดการเรยี นรู้
1. หนังสอื เรยี นวชิ า การเขยี นโปรแกรมคอมพิวเตอรเ์ บ้ืองต้น ของ บรษิ ัท วงั อกั ษร จากัด
2. ใบงานปฏิบตั ิ
3. Google Classroom
7. การวัดผลและประเมินผล
วธิ วี ดั ผล
1. ผเู้ รยี นปฏบิ ตั ิภาระงานทม่ี อบหมายเสร็จทันเวลาที่กาหนด
2. การสังเกตและประเมินผลพฤติกรรมด้านคุณธรรม จรยิ ธรรม ค่านยิ ม และคุณลกั ษณะอันพงึ
ประสงค์
เครือ่ งมอื วัดผล
1. ใบงานปฏบิ ตั ิ
2. แบบสังเกตคณุ ธรรม จรยิ ธรรม ค่านยิ ม และคณุ ลักษณะอันพงึ ประสงค์ โดยครแู ละนักเรียน
ร่วมกนั ประเมนิ
8. แหลง่ การเรยี นร้เู พิม่ เติม
1. หอ้ งสมดุ วทิ ยาลยั การอาชีพสวา่ งแดนดิน
2. อนิ เทอร์เน็ต
9. กจิ กรรมเสนอแนะ (ถา้ มี)
-
89
สปั ดาห์ท่.ี ................
บนั ทึกหลงั การสอน
รหสั วชิ า..............................วชิ า..............................................................ระดบั ................. ชนั้ ปีท่ี...........
แผนกวิชา.......................................................จานวนนกั เรยี น...................คน มาเรยี น...........................คน
ขาดเรียน..............คน มาสาย.............คน ลา.............คน สอนเมื่อวันท่.ี .........เดอื น......................พ.ศ.........
หนว่ ยที.่ ..................... ชอ่ื หนว่ ย.............................................................................จานวน.................ชวั่ โมง
เนื้อหาวัตถุประสงค์และสือ่ การสอน
............................................................................................................................. .........................................
............................................................................................................................. .........................................
......................................................................................................................................................................
............................................................................................................................. .........................................
...................................................................................................................................... ................................
................................................................................................... ...................................................................
............................................................................................................................. .........................................
ปัญหาทเี่ กิดขน้ึ ในระหว่างการเรียนการสอน
............................................................................................................................. .........................................
......................................................................................................................................................................
............................................................................................................................. .........................................
............................................................................................................................. .........................................
...................................................................................... ................................................................................
............................................................................................................................. .........................................
แนวทางการแกไ้ ขปัญหาของครูผสู้ อน และผลท่ีได้
............................................................................................................................. .........................................
......................................................................................................................................................................
............................................................................................................................. .........................................
............................................................................................................................. .........................................
......................................................................................................................................................................
............................................................................................................................. .........................................
ลงชื่อ............................................ครผู ู้สอน ลงชื่อ................................................หวั หนา้ แผนก
(นางสวุ มิ ล อักษรกลาง) (นางสุกญั ญา ดนัยสวัสดิ์)
วันท่.ี ......................................................... วนั ท.่ี .....................................................
90
ใบความรู้ / ใบเนอ้ื หา
หนว่ ยท่ี 5 เร่ือง โครงสร้างภาษาคอมพิวเตอร์
5.3 โปรแกรมภาษาซีเบ้ืองต้น
ภาษาซีเป็นภาษาที่เขียนโปรแกรมเปน็ แบบโครงสรา้ งโมดูล โดยจะมกี ารเขียนโมดลู ต่าง ๆ เก็บไว้
ใช้ ซึง่ แตล่ ะโมดูลสามารถเรยี กใช้งานในภายหลังได้ การเขียนโปรแกรมเบื้องตน้ อยา่ งง่าย ๆ ก่อนท่จี ะ
พฒั นาเป็นโปรแกรมท่ีใหญ่ขึน้ จะมโี ครงสร้างหลกั ๆ อยู่ 2 ส่วน
#include <stdio.h> สว่ นหวั ของโปรแกรม
#include <conio.h>
main() สว่ นตัวโปรแกรม
{
printf (“C Language”);
printf (“********************”);
}
ส่วนหวั ของโปรแกรม จะเริ่มตั้งแต่บรรทัดแรกของโปรแกรมจนถงึ ก่อนบรรทดั ฟังก์ชนั หลัก โดย
ส่วนหัวของโปรแกรมมีไว้เพื่อเขียนคาสง่ั พเิ ศษบางอย่างหรือ “พรโี ปรเซสเซอร์ไดเรกทฟี (Preprocessor
Directive)” และยงั เป็นสว่ นทีก่ าหนดข้อมูลและตวั แปรที่จะใชใ้ นโปรแกรม
สว่ นตัวโปรแกรม จะเร่มิ ตง้ั แตบ่ รรทดั main ซ่งึ เปน็ ชอ่ื ฟังกช์ ันหลักของภาษาซีเป็นต้นไปจนกว่า
จะจบโปรแกรม ซงึ่ ตรงส่วนนี้จะประกอบด้วยคาส่ังทั้งหมดในภาษาซี
5.4 ภาษาซี (C Language)
ภาษา C เป็นภาษาคอมพิวเตอร์เพื่อวัตถุประสงค์ท่ัวไป เป็นภาษาที่มีความจาเป็นมาก มัน
สนับสนุนการเขียนโปรแกรมที่มีโครงสร้าง การกาหนดขอบเขตของตัวแปร และการเรียกใช้ตัวเอง
(Recusion) และมันเป็นภาษาทอ่ี ยู่ในระดับต่า (Low level) นน่ั คือ มันเป็นภาษาท่ีสามารถทางานได้ดใี น
ระดับของฮาร์ดแวร์ ภาษา C เป็นสามารถท่ีออกแบบมาให้สามารถที่จะทางานกับคาสั่งพื้นฐานของ
คอมพิวเตอร์ได้อย่างมีประสิทธิภาพ เพราะฉะนั้นมันจึงถูกพบบ่อยในการใช้สร้างแอพพลิเคชันใน
สมัยก่อนท่ีเขียนโดยภาษาแอสเซมบลี รวมถงึ ระบบปฏิบัติการ เช่นเดียวกันกับซอฟตแ์ วร์ประยุกต์สาหรับ
คอมพวิ เตอร์ ซปุ เปอร์คอมพิวเตอร์ และระบบฝงั ตัว
5.5 ขน้ั ตอนการสรา้ งโปรแกรมภาษาซี
ในภาษาซจี ะมีการเขียนโปรแกรมเปน็ ฟังกช์ นั โดยมีข้ันตอนดงั นี้
91
5.5.1 การสร้างโปรแกรม (Source Code) ภาษาซีสามารถใช้เอดเิ ตอร์ เชน่ Notepad เพ่ือ
สร้างโปรแกรมและบันทกึ ไฟล์ใหม้ นี ามสกุลเปน็ .c หรือ .cpp
5.5.2 การคอมไพลโ์ ปรแกรม (Compile) เม่อื โปรแกรมถูกสร้างข้ึน ลาดบั ต่อไปกค็ ือการทา
คอมไพลโ์ ปรแกรมเพ่ือตรวจสอบข้อผดิ พลาด โดยคอมไพเลอรจ์ ะนาชดุ คาส่งั ที่มนุษยเ์ ราเขา้ ใจ มาผ่าน
การแปลเป็นภาษาเคร่ืองทค่ี อมพวิ เตอร์เข้าใจ หากโปรแกรมมีข้อผิดพลาดตวั คอมไพเลอรจ์ ะแจง้ ข่าวสาร
ให้รบั ทราบวา่ ได้พบข้อผิดพลาดของคาสงั่ นั้น ๆ ตรงตาแหนง่ บรรทดั น้นั ๆ ซึง่ เราจะตอ้ งกลบั ไปแก้ไข
ชุดคาสงั่ ให้ถกู ต้อง แล้วคอมไพลใ์ หมจ่ นกระทั่งไม่พบข้อผิดพลาด เมือ่ ถูกคอมไพลแ์ ล้วจะได้ออบเจ็กต์ไฟล์
.obj
5.5.3 การเชื่อมโยงโปรแกรม (Link) เมอ่ื ได้ออบเจ็กต์ไฟล์ซงึ่ เปน็ ภาษาเครื่องแล้ว ขน้ั ตอน
ต่อไปก็คือ การลงิ คด์ ้วยการนาออบเจ็กต์ไฟลเ์ ช่ือมโยงเขา้ กับไลบราลี (Library) ท่ีเกีย่ วข้อง จนได้เอก็ ซี
ควิ ตไ์ ฟล์ การเชือ่ มโยงโปรแกรม ตามปกติตวั โปรแกรมจะทาการเชื่อมโยงใหเ้ ราโดยอัตโนมตั ภิ ายหลงั จาก
การคอมไพล์โปรแกรมเสรจ็ เรียบรอ้ ย (โปรแกรมต้องไม่มขี ้อผดิ พลาด)
5.5.4 การสั่งรนั โปรแกรม (Run) เม่ือได้เอ็กซีคิวต์ไฟลแ์ ลว้ ไฟล์ดงั กล่าวเราสามารถเรียกใชง้ าน
(ดบั เบลิ คลกิ ทชี่ ่ือไฟล)์ เพ่ือสั่งรันหรือประมวลผลโปรแกรมได้ทันที
6. ตัวประมวลผลก่อน (Preprocessor Directive)
ตวั ประมวลผลก่อน หรอื พรโี พรเซสเซอร์ไดเรกทีฟ คือ รปู แบบคาส่ังพิเศษแบบหน่ึง ถ้าภายใน
โปรแกรมมีโพรเซสเซอร์ไดเรกทีฟ โปรแกรมจะทาการแปลพรีโพรเซสเซอร์ไดเรกทีฟก่อนเป็นอันดบั แรก
ก่อนคาส่ังอน่ื ๆ ในโปรแกรม การเขยี นคาสัง่ พรโี พรเซสเซอรไ์ ดเรกทีฟต้องข้นึ ต้นด้วยเคร่ืองหมาย # แต่
ไม่ต้องลงทา้ ยดว้ ยเครื่องหมาย ; คาส่ังที่อยูใ่ นกลุ่มของพรีโพรเซสเซอร์ไดเรกทีฟ มีดังน้ี
#include #define #error #if #endif
#elif #else #ifdef #ifndef #undef
#line #program
#include เป็นพรีโพรเซสเซอร์ไดเรกทีฟท่ีใชส้ าหรบั ใหต้ ัวแปรภาษาซี นาไฟลท์ ่ีกาหนดชื่อไว้ต่อ
จาก #include เขา้ มารวมกับโปรแกรมก่อนท่ีจะแปลภาษา เนอื่ งจากในบางคร้งั ทมี่ ีการเรียกคาส่ังจาก
ไฟล์อน่ื ๆ
รปู แบบ
#include <ช่อื ไฟล์> หรอื #include “ชอ่ื ไฟล์”
92
การใช้เครอื่ งหมาย < > ระบุชอื่ ไฟล์ เพอ่ื ใหต้ วั แปลภาษาค้นหาไฟลจ์ ากโฟลเดอร์ท่ตี วั แปล
ภาษาซีกาหนดไวก้ ่อน (โฟลเดอร์ include) ถ้าไม่พบจะกลับมาค้นหาต่อท่โี ฟลเดอรป์ ัจจุบนั (โฟลเดอร์ท่ี
บนั ทึกไฟลโ์ ปรแกรมเอาไว้) แตถ่ า้ ใช้เครื่องหมาย “ ” ระบุชื่อไฟล์ ตวั แปลภาษาซจี ะค้นหาไฟล์จาก
โฟลเดอร์ปจั จุบนั ก่อน ถา้ ไม่พบจึงจะไปค้นหาต่อในโฟลเดอร์ทต่ี ัวแปลภาษากาหนดไว้
#define เป็นพรีโพรเซสเซอร์ไดเรกทีฟท่ีใชใ้ นการกาหนดค่าคงที่ (Constant) เพอ่ื ความสะดวก
ในการใชง้ าน ตัวแปรท่ีกาหนดให้เปน็ คา่ คงที่ ตัวแปรน้จี ะไม่สามารถเปล่ียนแปลงค่าได้
รปู แบบ
#define ตวั แปร ค่าคงท่ี
ตัวอยา่ ง
#define PI 3.14159
#define MESSAGE “Program by Nooyui”
#define N1 10
#define N2 N1+20
7. การเขยี นคาอธิบายโปรแกรม (Comment)
ในการเขยี นโปรแกรม สามารถแทรกคาอธิบายหรอื คอมเมนต์ (Comment) ลงไปในโปรแกรมได้
เพอ่ื ช่วยเตอื นความจาวา่ แตล่ ะบรรทดั ทางานอะไร ในส่วนของการเขียนคาอธิบายจะไม่ถูกตัวแปลภาษา
นามาคอมไพล์ รปู แบบการเขียนคาอธิบายโปรแกรม มี 2 รูปแบบคอื
7.1 /*......*/ ใช้เขียนคาอธบิ ายโปรแกรมแบบหลายบรรทัด โดยขอ้ ความที่ต้องการอธิบายอยู่
ระหวา่ งเครื่องหมาย /* กบั */
7.2 // ใชเ้ ขียนคาอธบิ ายโปรแกรมแบบบรรทดั เดยี ว
93
ใบงานฝกึ ปฏิบตั ิ
เรอ่ื ง โครงสร้างภาษาคอมพิวเตอร์
คาสั่ง/คาช้ีแจง
1. ใหน้ กั เรยี นสรปุ เนื้อหาเกีย่ วกับโครงสรา้ งภาษาของคอมพวิ เตอร์
2. สรปุ เปน็ ใจความสาคัญลงในสมดุ แลว้ สง่ ครเู พ่ือบันทึกคะแนน
94
แผนการจดั การเรยี นรู้ หน่วยที่ 6
รหัสวชิ า 20901 - 1002 ช่ือวิชา การเขยี นโปรแกรมคอมพิวเตอร์เบือ้ งต้น
ช่อื หน่วย การใช้ประบวนการเขียนโปรแกรมคาสง่ั การคานวณ เงื่อนไขกรณี
และการทาซา้ จานวน 3 ช่วั โมง
รายการหวั ข้อการเรียนรู้
1. การเขยี นโปรแกรมแสดงข้อความด้วยคาสง่ั cout
2. การเขยี นโปรแกรมรบั ขอ้ มลู ดว้ ยคาสงั่ cin
3. การแสดงผลดว้ ยคาสั่งตา่ ง ๆ
4. การรบั ข้อมูลด้วยคาสง่ั ต่าง ๆ
5. นพิ จน์(Expression)
6. ตัวดาเนนิ การ(Operators)
หัวข้อการเรยี นรู้ จุดประสงคก์ ารสอนหรือจุดประสงคเ์ ชงิ พฤติกรรม
1. การเขียนโปรแกรมแสดงข้อความด้วยคาสั่ง 1. เขียนโปรแกรมแสดงข้อความด้วยคาสง่ั cout ได้
cout
2. การเขียนโปรแกรมรับขอ้ มูลด้วยคาสัง่ cin 2. เขียนโปรแกรมแสดงข้อความดว้ ยคาสั่ง cin ได้
3. การแสดงผลดว้ ยคาสง่ั ต่าง ๆ 3. เขยี นโปรแกรมแสดงผลด้วยคาส่ังตา่ ง ๆได้
4. การรับข้อมลู ดว้ ยคาสง่ั ตา่ ง ๆ 4. เขียนโปรแกรมรับข้อมูลดว้ ยคาส่งั ต่าง ๆได้
5. นพิ จน์(Expression) 5. บอกความหมายของนิพจน์ได้
6. ตัวดาเนนิ การ(Operators) 6. จาแนกประเภทของตัวดาเนินการได้
วธิ ีการสอน : บรรยายและสาธติ
สอ่ื การสอน :
1. หนังสอื เรียนวิชา การเขียนโปรแกรมคอมพิวเตอร์เบ้ืองต้น ของ บรษิ ัท วงั อักษร จากัด
2. หนังสอื พน้ื ฐานการเขยี นโปรแกรมคอมพวิ เตอร์ ของบรษิ ทั ซเี อ็ดยเู คชนั่ จากดั (มหาชน)
3. ใบงานปฏิบัติ
4. Google Classroom
การประเมนิ :
1. เกณฑ์ผ่านการสงั เกตพฤตกิ รรมการปฏิบัตงิ านรายบุคคล ตอ้ งไม่มชี ่องปรบั ปรุง
2. แบบสังเกตคุณธรรม จรยิ ธรรม ค่านยิ ม และคุณลกั ษณะอนั พึงประสงค์ คะแนนขน้ึ อยกู่ ับการ
ประเมินตามสภาพจริง
95
แผนการจดั การเรียนรู้
ชื่อวิชา การเขียนโปรแกรมคอมพิวเตอรเ์ บ้อื งต้น รหสั วชิ า 20901 - 1002 สอนครัง้ ที่ 11
หน่วยท่ี 6 ช่อื หน่วย การใช้ประบวนการเขียนโปรแกรมคาสงั่ เง่อื นไขกรณีและการทาซา้ จานวน 3 ชม.
1. หัวขอ้ การเรยี นรู้
1. การเขียนโปรแกรมแสดงข้อความดว้ ยคาสงั่ cout
2. การเขียนโปรแกรมรบั ข้อมูลด้วยคาสงั่ cin
3. การแสดงผลดว้ ยคาสง่ั ตา่ ง ๆ
4. การรบั ขอ้ มลู ด้วยคาสงั่ ต่าง ๆ
5. นพิ จน(์ Expression)
6. ตัวดาเนินการ(Operators)
2. สาระสาคญั
ขั้นตอนการเขียนโปรแกรมต้องเริ่มต้นจากการรับข้อมูล การคานวณ เงื่อนไขต่างๆ และการทาซ้า
วิธีการประมวลผลเพื่อให้ได้มาซ่ึงผลลัพธ์ท่ีต้องการ การเขียนนิพจน์และตัวดาเนินการจึงเป็นสิ่งสาคัญท่ี
จะต้องเรียนรู้ เพื่อให้ทราบถึงวิธีการที่จะเขียนวิธีการเขียนคานวณในรูปแบบที่ถูกต้องตามรูปแบบของ
ภาษาซี ตัวดาเนินการในภาษาซีมีหลายแบบ ได้แก่ ตัวดาเนินการทางคณิตศาสตร์ ตัวดาเนินการเพ่ิมและ
ลดค่า ตัวดาเนินการเปรียบเทียบ และการเขียนโปรแกรมคอมพิวเตอร์มักจะต้องมีคาส่ังให้โปรแกรมเลือก
ทาอย่างใดอย่างหนึ่งเสมอ ซึ่งจะต้องนาคาสั่งในการเลือกทามาใช้ การทางานย่อมมีการเลือกการทางาน
หลายทาง
3. สมรรถนะประจาหนว่ ย
แสดงความรู้เกย่ี วกับการเขียนโปรแกรมแสดงข้อความดว้ ยคาสง่ั cout การเขยี นโปรแกรมรบั
ข้อมลู ดว้ ยคาสั่ง cin นิพจน์ ตัวดาเนนิ การ การเขยี นโปรแกรมโดยใชค้ าสง่ั เงื่อนไขเพ่ือเปรียบเทียบเงื่อนไข
และการเขยี นโปรแกรมโดยใช้โครงสร้างการทาซ้าได้
4. จดุ ประสงค์การเรยี นรู้
4.1 จดุ ประสงคท์ ัว่ ไป
1. การเขียนโปรแกรมแสดงข้อความดว้ ยคาส่ัง cout
2. การเขียนโปรแกรมรับข้อมลู ด้วยคาสัง่ cin
3. การแสดงผลดว้ ยคาสัง่ ต่าง ๆ
4. การรบั ขอ้ มูลดว้ ยคาสงั่ ต่าง ๆ
5. นิพจน(์ Expression)
96
6. ตวั ดาเนินการ(Operators)
4.2 จดุ ประสงค์เชงิ พฤติกรรม
1. เขยี นโปรแกรมแสดงข้อความดว้ ยคาสัง่ cout ได้
2. เขียนโปรแกรมแสดงข้อความดว้ ยคาสงั่ cin ได้
3. เขยี นโปรแกรมแสดงผลด้วยคาสั่งต่าง ๆได้
4. เขยี นโปรแกรมรบั ขอ้ มูลด้วยคาสั่งตา่ ง ๆได้
5. บอกความหมายของนิพจน์ได้
6. จาแนกประเภทของตัวดาเนินการได้
5. กิจกรรมการจดั การเรยี นรู้
ในการเรยี นการสอนของหน่วยที่ 6 ครงั้ ที่ 11 (จานวน 3 ชว่ั โมง)
ข้นั นาเข้าสบู่ ทเรยี น
1. ตรวจสอบรายช่อื ของนักเรียนท่เี ขา้ เรียน
2. ครูและนักเรียนรว่ มกนั สนทนาและแสดงความคิดเห็นเก่ียวกับการเขยี นโปรแกรมคาสั่งแสดงผล
รับข้อมูล ว่ามรี ปู แบบการเขียนอยา่ งไร
3. ครแู สดงความคิดเหน็ เพ่ิมเติม
ขัน้ สอน
1. ครบู รรยาย อธิบาย ยกตัวอย่างในแต่ละหัวข้อการเรียน
2. เปดิ โอกาสให้นักเรียนซักถามครผู สู้ อน
3. ประเมินพฤตกิ รรมรายบุคคลโดยครูจะซักถามในแต่ละคน
ขั้นสรปุ
1. ครูและนกั เรียนร่วมกันสรุปสาระสาคญั
2. เปดิ โอกาสให้นักเรียนซักถามขอ้ สงสัย
3. มอบหมายให้ไปหัดทาและศึกษาเพิม่ เตมิ
4. ทาแบบทดสอบหลังเรียนและเฉลยแบบทดสอบ
6. ส่อื การจัดการเรียนรู้
1. หนงั สือเรยี นวิชา การเขียนโปรแกรมคอมพิวเตอร์เบื้องต้น ของ บริษัท วังอกั ษร จากดั
2. หนงั สอื พนื้ ฐานการเขียนโปรแกรมคอมพิวเตอร์ ของบริษัทซเี อด็ ยูเคช่นั จากัด(มหาชน)
3. ใบงานปฏบิ ตั ิ
4. Google Classroom
97
7. การวัดผลและประเมนิ ผล
วิธีวัดผล
1. ผเู้ รียนปฏบิ ตั ิภาระงานที่มอบหมายเสร็จทันเวลาที่กาหนด
2. การสังเกตและประเมินผลพฤติกรรมด้านคุณธรรม จริยธรรม ค่านิยม และคุณลักษณะอนั พึง
ประสงค์
เคร่อื งมอื วดั ผล
1. ใบงานปฏิบัติ
2. แบบสงั เกตคุณธรรม จรยิ ธรรม ค่านยิ ม และคุณลักษณะอันพงึ ประสงค์ โดยครแู ละนักเรยี น
ร่วมกันประเมนิ
8. แหล่งการเรียนร้เู พิม่ เติม
1. หอ้ งสมุดวทิ ยาลัยการอาชีพสวา่ งแดนดิน
2. อนิ เทอร์เนต็
9. กจิ กรรมเสนอแนะ (ถ้ามี)
1. ทาแบบฝกึ ปฏิบตั แิ ละแบบประเมนิ ผลการเรียนรู้
98
สปั ดาหท์ ่ี.................
บันทกึ หลงั การสอน
รหัสวชิ า..............................วชิ า......................................................................ระดบั ................. ช้นั ปีท่.ี ..........
แผนกวิชา.......................................................จานวนนักเรียน......................คน มาเรียน...........................คน
ขาดเรียน..............คน มาสาย................คน ลา.............คน สอนเม่ือวนั ท่ี..........เดอื น......................พ.ศ.........
หน่วยท่.ี ..................... ชอื่ หนว่ ย................................................................................จานวน.................ชวั่ โมง
เนอื้ หาวตั ถุประสงคแ์ ละส่ือการสอน
............................................................................................................................. ...........................................
...................................................................................................................................................................... ..
............................................................................................................................. ...........................................
............................................................................................................................. ...........................................
........................................................................................................................................................................
............................................................................................................................. ...........................................
............................................................................................................................. ...........................................
ปญั หาทีเ่ กดิ ขนึ้ ในระหว่างการเรยี นการสอน
............................................................................................................................. ...........................................
........................................................................................................................................................................
............................................................................................................................. ...........................................
............................................................................................................................. ...........................................
........................................................................................................................................................................
............................................................................................................................. ...........................................
แนวทางการแก้ไขปัญหาของครผู ู้สอน และผลท่ีได้
............................................................................................................................. ...........................................
........................................................................................................................................................................
............................................................................................................................. ...........................................
............................................................................................................................. ...........................................
........................................................................................................................................................................
............................................................................................................................. ...........................................
ลงช่อื ............................................ครูผสู้ อน ลงชื่อ................................................หัวหนา้ แผนก
(นางสุวมิ ล อักษรกลาง) (นางสกุ ญั ญา ดนยั สวัสด)์ิ
วนั ท.ี่ ......................................................... วันที่......................................................
99
ใบความรู้ / ใบเนอื้ หา
หนว่ ยที่ 6 เรือ่ ง การใช้ประบวนการเขียนโปรแกรมคาสั่งเงือ่ นไขกรณีและการทาซ้า
6.1 การเขยี นโปรแกรมแสดงขอ้ ความดว้ ยคาสั่ง cout
cout เป็นคาสั่งท่ีใชใ้ นการแสดงขอ้ ความ โดยทก่ี ่อนจะใชค้ าสง่ั นไ้ี ด้ต้อง #include <iostream>
ท่สี ว่ นหัวของโปรแกรมก่อน
รปู แบบ cout<< “ข้อความท่ตี ้องการแสดง” ;
ตัวอย่าง 6.1 แสดงข้อความด้วยคาสั่ง cout
#include <iostream> ประกาศพรโี พรเซสเซอร์ไดเรกทีฟ
#include <conio.h>
using namespace std;
int main() ฟังก์ชนั หลกั
{
cout<< “My name is Siriporn” << endl; แสดงข้อความด้วยคาสงั่ cout
cout<< “I love students”;
getch(); ฟังกช์ ันท่ีใชร้ ับขอ้ มลู จากคียบ์ อรด์
return 0; คนื ค่าฟังกช์ นั หลกั และจบการทางาน
}
ผลลัพธ์ My name is Siriporn
I love student
คาอธบิ าย
using namespace std เป็นการเรียกใช้งาน class std เพื่อความสะดวกในการใชง้ านคาส่ัง
cout หรือ cin ถา้ หากไม่ใส่ เวลาท่ใี สค่ าส่งั cout หรือ cin จะตอ้ งพมิ พ์ std::cout หรือ std::cin ทุกครง้ั ที่
ใช้งานคาส่งั
endl มาจากคาว่า end line เป็นคาส่งั ใหข้ ้ึนบรรทัดใหม่
getch เปน็ คาส่ังรับข้อมลู 1 ตวั อกั ษรจากแปน้ คียบ์ อรด์ ต้อง #include <conio.h> กอ่ นจงึ จะใช้
คาส่งั นี้ได้
return เป็นการย้อนกลบั ไปยังจดุ ทีเ่ รยี กฟังกช์ นั main ถ้าประกาศ int main จะตอ้ ง return คา่
integer มิฉะนน้ั จะผิดไวยากรณ์ (syntax) แต่กรณีท่ปี ระกาศฟงั ก์ชนั main เป็น void main ไมต่ ้อง
return ก็ได้
100
6.2 การเขยี นโปรแกรมรบั ข้อมูลด้วยคาสงั่ cin
cin เปน็ คาสั่งทใี่ ชใ้ นการรบั ข้อมูลทางแป้นพิมพ์ เมอื่ รับข้อมูลแลว้ จะนาไปเกบ็ ไว้ในตวั แปรท่ีอยู่
ขา้ งหลังคาส่งั คาสัง่ นี้ต้อง #include <iostream> กอ่ นจึงจะใชค้ าส่ังได้
รูปแบบ cin>>ตวั แปร;
ตัวอย่าง 6.2 รบั ข้อมูลด้วยคาส่ัง cin
#include <iostream> ประกาศพรโี พรเซสเซอร์ไดเรกทฟี
#include <conio.h>
using namespace std;
int main() ฟงั ก์ชันหลกั
{
string name; ประกาศตัวแปร
cout<< “A: What is your name?” << endl; แสดงขอ้ ความดว้ ยคาสง่ั cout
cout<< “B: My name is ”;
cin>>name;
cout<< “A: Glad to meet you” <<name; แสดงขอ้ ความและคา่ ทีเ่ กบ็ ไว้ในตัวแปร
getch(); ฟงั กช์ นั ที่ใช้รบั ขอ้ มลู จากคยี บ์ อร์ด
return 0; คืนค่าฟังก์ชันหลกั และจบการทางาน
}
ผลลพั ธ์ Siriporn เปน็ คา่ ท่รี ับข้อมลู แปน้ พิมพไ์ ปเก็บในตัวแปร name
A: What is your name?
B: My name is Siriporn Siriporn เปน็ ค่าที่เกบ็ ไว้ในตวั แปร name ใช้คาสง่ั cout ใน
A: Glad to meet you Billy การแสดงผลลพั ธ์
6.3 การแสดงผลด้วยคาส่ังต่าง ๆ
6.3.1 การแสดงผลทลี ะตัวอักษรดว้ ยคาส่ัง putchar()
putchar() เปน็ คาสั่งสาหรบั แสดงผลทีละตวั ออกทางหน้าจอ ซ่งึ สามารถแสดงผลจาก
คา่ ตวั อกั ขระหรือแสดงจากค่าตวั แปรก็ได้ โดยมรี ูปแบบการใชง้ านดงั น้ี
รปู แบบ putchar(var);
101
ตวั อยา่ ง 6.3 การใชค้ าสง่ั putchar() เพื่อแสดงผลข้อมูลตัวอกั ษรทางจอภาพ
1 #include <stdio.h>
2 #include <conio.h>
3
4 void main()
5{
6 char ch= ‘I’;
7
8 putchar(ch);
9 putchar(‘D’);
10 putchar(67);
11 getch();
12 }
อธบิ ายการทางานของโปรแกรม
บรรทัดที่ 6 ประกาศตวั แปร I เปน็ ชนดิ ตัวอักขระพร้อมกาหนดค่าเทา่ กบั I
บรรทัดที่ 8 แสดงคา่ ตวั แปร ch ทางจอภาพ
บรรทดั ท่ี 9 แสดงค่าตวั อักษร D ทางจอภาพ
บรรทัดที่ 10 แสดงตวั อกั ขระจากค่า ASCII Code ทางจอภาพซึ่งคา่ 67 เปน็ ตวั อักษร C
6.3.2 การแสดงผลเป็นข้อความด้วยคาสั่ง puts()
puts() เปน็ คาสงั่ สาหรบั แสดงขอ้ ควาออกทางจอภาพซงึ่ สามารถแสดงผลจากข้อความ
หรอื แสดงคา่ จากตัวแปรกไ็ ดโ้ ดยมีรปู แบบการใชง้ านดงั น้ี
รูปแบบ puts(var);
102
ตวั อยา่ งที่ 6.4 การใช้คาสงั่ puts() เพือ่ แสดงผลขอ้ ความทางจอภาพ
1 #include <stdio.h>
2 #include <conio.h>
3
4 void main()
5{
6 char ch[30]= “C Programming”;
7 puts(ch);
8 puts(“ ”);
9 puts(“Computer”);
10 getch();
11 }
คาอธิบายโปรแกรม
บรรทัดท่ี 6 ประกาศตัวแปร ch เปน็ ชนิดขอ้ ความ พร้อมกาหนดคา่ เท่ากับ C Programming
บรรทัดท่ี 7 แสดงคา่ ตัวแปร ch ทางจอภาพ
บรรทัดที่ 8 แสดงชอ่ งว่างทางจอภาพ
บรรทดั ที่ 10 แสดงข้อความ Computer ออกทางจอภาพ
6.3.3 การแสดงผลข้อมลู ทกุ ชนิดดว้ ยคาส่ัง printf()
เปน็ คาสง่ั สาหรับแสดงผลออกทางจอภาพและสามารถแสดงผลข้อมูลได้ทุกชนดิ ไมว่ ่าจะเป็น
ตวั อักษร ข้อความ ตวั เลข ทศนยิ ม
รปู แบบ printf(“format”,var_1,var_2,…,var_n);
103
ตัวอยา่ ง 6.5 การใช้คาสง่ั printf() เพ่อื แสดงผลข้อมลู ทางจอภาพ
1 #include <stdio.h>
2 #include <conio.h>
3
4 void main()
5{
6 char ch[30]= “C Programming”;
7 int intTest;
8
9 intTest=5+3;
10
11 printf(“DEV BOOK\n”);
12 printf(“Computer %s\n”,ch);
13 printf(“5+3=%d”,intTest);
14 getch();
15 }
คาอธบิ ายโปรแกรม
บรรทดั ท่ี 6 ประกาศตวั แปร ch เป็นชนิดข้อความ พร้อมกาหนดค่าเทา่ กบั C Programming
บรรทดั ท่ี 7 ประกาศตัวแปร intTest เปน็ ชนิดจานวนเต็ม
บรรทัดที่ 9 กาหนดคา่ ตวั แปร intTest เท่ากับ 5+3
บรรทัดท่ี 11 แสดงข้อความ DEV BOOK และขนึ้ บรรทัดใหมท่ างจอภาพ
บรรทัดท่ี 12 แสดงข้อความ C Programming และขน้ึ บรรทดั ใหม่โดยแทนคา่ ตวั แปร ch ที่รหัสรูปแบบ
แสดงผล ซึ่งในคาสง่ั นคี้ ือ %s ซง่ึ เปน็ รหสั รูปแบบแสดงผลข้อความ
บรรทัดท่ี 13 แสดงข้อความ 5+3 =8 โดยแทนค่าตวั แปร intTest ทร่ี หัสรปู แบบแสดงผล ซง่ึ ในคาส่งั นี้
คอื %d ซ่ึงเป็นรหสั รูปแบบแสดงผลจานวนเต็ม
6.3.4 รหัสรูปแบบการแสดงผลข้อความของคาสงั่ printf()
การแสดงผลด้วยคาส่ัง printf() สามารถแสดงผลได้ทุกชนดิ โดยใช้รปู แบบการแสดงผลแทนคา่ ตัว
แปรหรือนิพจนห์ รือค่าคงท่ีชนดิ ตา่ งๆ ในข้อความซ่ึงมีรหสั รปู แบบการแสดงผลที่ผู้อา่ นควรรจู้ ักดังนี้
104
รหสั รูปแบบ ชนดิ ขอ้ มูล
%c ตัวอกั ษรหนึง่ ตัว
%d จานวนเตม็ ชนิด int
%ld จานวนเต็มชนดิ long
จานวนจริงแบบเอก็ ซโ์ พเนนต์
%e , %E จานวนทศนยิ ม
%f จานวนทศนยิ ม
จานวนเต็มชนดิ int
%g , %G เลขฐานแปด
%i พอยนเ์ ตอร์
%o ขอ้ ความ
%p จานวนเตม็ ทม่ี คี ่าบวก
%s เลขฐานสิบหก
%u
%x , %X
6.3.5 การกาหนดการแสดงผลขอ้ มูลของคาสั่ง printf()
ในการแสดงผลการทางานของโปรแกรม บ่อยครง้ั ทีเ่ ราต้องการแสดงอกั ขระพิเศษทางจอภาพ ซง่ึ
ภาษา C ได้กาหนดรูปแบบการแสดงผลอักขระพิเศษต่าง ๆ ดังนี้
อกั ขระพิเศษ ความหมาย
\b เลอ่ื นเคอร์เซอร์ถอยหลังไป 1 ตวั อกั ษร
\n ขน้ึ บรรทัดใหม่
\r เลอ่ื นเคอรเ์ ซอร์ไปทางซ้ายสดุ
\t แสดงแทบ็ ตามแนวนอน
\’ แสดงเคร่อื งหมาย ’
\” แสดงเคร่ืองหมาย ”
\\ แสดงเคร่อื งหมาย \
6.4 การรับค่าด้วยคาส่ังต่าง ๆ
6.4.1 การรบั ข้อมลู ทีละตวั อักษรดว้ ยคาส่ัง getch() และ getchar()
getch() และ getchar() เปน็ คาส่ังรับข้อมูลทีละตวั อักษรจากคยี ์บอรด์ ซ่งึ มีรปู แบบการใช้งานดงั น้ี
รปู แบบ ch = getch();
ch = getchar();
105
6.4.2 การรบั ข้อมูลชนดิ ข้อความด้วยคาส่ัง gets()
เปน็ คาสั่งรับข้อมูลชนิดข้อความจากคยี บ์ อร์ด ซึ่งมรี ปู แบบการใชง้ านดังนี้
รูปแบบ gets(str);
6.4.3 การรบั ขอ้ มลู ทุกชนดิ ด้วยคาส่งั scanf()
เป็นคาสงั่ รับข้อมูลได้ทกุ ชนิดทางคยี บ์ อร์ด โดยกาหนดรปู แบบการรับข้อมูลทตี่ วั คาสง่ั ซง่ึ มีรปู แบบ
คาสัง่ ดงั น้ี
รปู แบบ scanf(“format”, &var1,&var2,…var_n);
** กรณรี บั ข้อมลู ชนิดขอ้ ความด้วยคาส่ัง scanf() ไมจ่ าเปน็ ตอ้ งเครอื่ งหมาย &
นาหน้าตวั แปรทีใ่ ช้รับค่าข้อมูลก็ได้
ตารางแสดงรหัสรูปแบบการรับขอ้ มูล
รหัสรูปแบบ ชนิดข้อมลู
%c ตัวอกั ษรหน่ึงตัว
%d จานวนเต็มชนิด int
%ld จานวนเต็มชนิด long
%e จานวนจรงิ แบบเอ็กซโ์ พเนนต์
%f จานวนทศนยิ ม
%g จานวนทศนิยม
%i จานวนเตม็ ชนิด int
%o เลขฐานแปด
%p พอยน์เตอร์
%s ข้อความ
%u จานวนเตม็ ท่มี ีค่าบวก
%x เลขฐานสิบหก
6.4.4 การกาหนดลาดบั การรับข้อมูลของคาสง่ั scanf()
ในการรบั ข้อมูลทางคยี บ์ อร์ดของคาส่ัง scanf() สามารถกาหนดลาดบั การรบั ข้อมลู มาเก็บ
ไวใ้ นตวั แปรไดโ้ ดยใช้เครื่องหมาย * ซงึ่ หากลาดับของข้อมูลทร่ี ับเขา้ มาใช้เครอ่ื งหมาย * จะเปน็ การบ่งบอก
ว่าข้อมูลทีร่ บั คา่ ในลาดับดังกลา่ วจะไมถ่ ูกจัดเก็บไว้ในตัวแปร
106
ตัวอยา่ งท่ี 6.6 การใชค้ าสัง่ scanf() กาหนดลาดับการรับขอ้ มูลทางคีย์บอร์ด
1 #include <stdio.h>
2 #include <conio.h>
3
4 void main()
5{
6 int n;
7 scanf(“%d %d”,&n);
8 printf(“output : %d\n”,n);
9 getch();
10 }
คาอธบิ ายโปรแกรม
บรรทัดที่ 6 ประกาศตัวแปร n เป็นชนิดจานวนเตม็
บรรทัดที่ 7 กาหนดใหร้ ับขอ้ มูลทางคียบ์ อร์ด 2 จานวน โดยกาหนดให้ไม่เก็บคา่ ขอ้ มูลของการปอ้ น
ขอ้ มูลในครัง้ แรก เนือ่ งจากมีการใช้เครื่องหมาย * แต่กาหนดใหเ้ ก็บค่าข้อมลู ของการป้อนขอ้ มูลในครง้ั ท่ี 2
ไว้ท่ีตัวแปร n
บรรทดั ที่ 8 แสดงค่าข้อมูลของตวั แปรชนิดจานวนเตม็ ชอื่ n ทางจอภาพ
6.5 การแสดงค่าจากตัวแปร
ในการเขียนโปรแกรม เราจาเป็นตอ้ งแสดงค่าหรอื ขอ้ มูลท่ีอยใู่ นตัวแปร เราสามารถแสดงคา่ จากตัว
แปรได้ด้วยคาสั่ง cout
การแสดงคา่ ข้อมลู จากตัวแปร
#include <iostream> ประกาศพรโี พรเซสเซอร์ไดเรกทฟี
#include <conio.h>
using namespace std; ฟังก์ชันหลัก
int main()
{ ประกาศตัวแปร
รบั ขอ้ มลู ดว้ ยคาสั่ง cin
int a,b,c;
cout<< “Input a number ”;cin>> a; คานวณ
cout<< “Input a number again ”;cin>>b; แสดงผลลัพธ์
c = a + b; ฟงั กช์ นั ที่ใช้รับขอ้ มูลจากคบี อร์ด
cout<< “Output plus num =”; << c คืนค่าฟังก์ชนั หลักและจบการทางาน
getch();
return 0;
}
107
ผลลัพธ์
Input a number 50
Input a number again 27
Output Plus num = 77
6.6 นิพจน์
นพิ จน์ คือ รปู แบบการเขียนคาสั่งระหวา่ งตวั ดาเนนิ การ (Operators) และตวั ถกู กระทา
(Operand) เชน่ การกาหนดคา่ ให้กบั ตวั แปร สามารถเขียนนพิ จนไ์ ด้ดังน้ี int x = 7+5; เปน็ การเขียน
นิพจน์ 7+5 ซึง่ มเี ครอื่ งหมาย + เป็นตวั ดาเนินการและตวั ถูกกระทาคือ 7 และ 5 จากการคานวณได้ผล
ลพั ธ์เท่ากับ 12 ซึ่งถูกกาหนดค่าให้กบั ตัวแปร x ดงั ตัวอย่างเชน่
ans = 100-50
score = midterm + final + quiz
income = salary +(ot * RATE) + bonus - tax
จากนิพจน์คณิตศาสตร์ข้างต้น จะพบว่าท้ัง ans,score และ income จะเป็นตัวแปรท่ีใช้เก็บ
ผลลัพธ์จากการคานวณ สว่ นนพิ จนด์ า้ นขวาก็จะเป็นนิพจน์แบบหลายตัวแปร ซึ่งสามารถมไี ดท้ ง้ั ตัวแปรและ
ค่าคงท่ี รวมถึงตัวดาเนินการคณิตศาสตร์ เช่น + - * / เป็นต้น อย่างไรก็ตาม ในการสร้างสูตรคานวณค่า
ตัวเลขโดยเฉพาะสูตรคานวณที่มีความซับซ้อนต้องระมัดระวังในการจัดลาดับนิพจน์เพื่อให้คอมพิวเตอร์
ประมวลผลได้อย่างถูกต้อง ท้ังนี้ตัวดาเนินการต่างๆท่ีนามาใช้เพ่ือการคานวณนั้น แต่ละตัวจะมีลาดับ
ความสาคัญที่แตกต่างกัน เช่น เม่ือพบเครื่องหมาย + และ * การประมวลผลจะกระทาที่ตัวดาเนินการ *
กอ่ น เพราะ * จะมีลาดับความสาคญั สูงกว่า + เช่น result = 5 + 2 * 4 คาตอบคอื 13
6.7 ตวั ดาเนนิ การ (Operators)
ตวั ดาเนนิ การ หมายถึง กลุ่มเครอ่ื งหมายหรือสัญลักษณท์ ่ีใชท้ างานเหมอื นกับฟงั กช์ นั แต่แตกต่าง
กนั ตรงไวยากรณห์ รอื ความหมายในการใชง้ าน ในภาษาซีมีตวั ดาเนินการหลากหลายชนิดดงั นี้
6.7.1 ตัวดาเนินการคณติ ศาสตร์
6.7.2 ตวั ดาเนนิ การยูนารี
6.7.3 ตัวดาเนินการเปรยี บเทียบ
6.7.4 ตวั ดาเนนิ การตรรกะ
6.7.5 ตัวดาเนนิ การกาหนดค่าแบบผสม
6.7.6 ตัวดาเนินการเงอ่ื นไข
108
6.7.1 ตัวดาเนนิ การคณิตศาสตร์ จัดเป็นตวั ดาเนนิ การพ้ืนฐานทน่ี ามาใช้เพื่อการคานวณ เช่น
บวก ลบ คณู หาร และโมดลู ัส(หารเพือ่ เอาเศษ) โดยตัวดาเนินการดังกลา่ วเป็นไปดังนี้
ตวั ดาเนนิ การ ความหมาย
+ การบวก
- การลบ
* การคณู
/ การหาร
% การหารเอาเศษ
ตวั อยา่ ง 6.7 โปรแกรมส่ังพิมพ์นิพจน์
1: #include<stdio.h> //ผนวกเฮดเดอร์ไฟล์<stdio.h>
2: main() //ฟังกช์ ัน main()
3: {
4: int a=10,b=2; //ประกาศตัวแปร a และ b มีชนิดขอ้ มูลเป็น int พรอ้ ม
กาหนดค่า
5: printf("a=10,b=2\n\n"); //พมิ พข์ ้อความให้ทราบวา่ คา่ a = 10 และ b = 2
6: printf("a+b=%d\n",a+b); //ส่ังพิมพผ์ ลลัพธ์ของนิพจน์ a+b
7: printf("a-b-3=%d\n",a-b-3); //ส่ังพมิ พ์ผลลพั ธข์ องนิพจน์ a-b-3
8: printf("a*b=%d\n",a*b); //สั่งพิมพ์ผลลพั ธข์ องนิพจน์ a*b
9: printf("a/b=%d\n",a/b); //สง่ั พมิ พผ์ ลลพั ธ์ของนิพจน์ a/b
10: printf("a mod b=%d",a%b); //สง่ั พมิ พผ์ ลลพั ธ์ของนิพจน์ a%b
11: }
6.7.2 ตัวดาเนินการยนู ารี
ตัวดาเนินการยูนารตี วั แรกทีจ่ ะกล่าวถึง คือ เครื่องหมายลบทีน่ ามาใช้นาหนา้ คา่ ตัวเลขหรือนาหนา้
คา่ ตัวแปร ซ่งึ จะส่งผลให้คา่ ถูกเปล่ียนเป็นค่าติดลบทันที เชน่ กาหนดให้ a =10,b =2
นิพจน์ ผลลพั ธ์
a+b 12
-a+b -8
-a*b -20
a- -b 12
109
ตัวดาเนินการยนู ารตี ัวถดั มาคือ ตวั ดาเนนิ การเพิม่ ค่าและตัวดาเนินการลดคา่ ดว้ ยการใช้
เคร่อื งหมาย – เพอื่ ลดลงทลี ะ 1 คา่ และเคร่ืองหมาย ++ เพื่อเพม่ิ ค่าทลี ะ 1 ค่า โดยเขียนนาหนา้ ตัวแปร
(prefix) หรอื หลงั ตัวแปร (postfix) ก็ได้ เชน่ ++a a--
นพิ จน์ ความหมาย
++a เพม่ิ ค่าอีกหนง่ึ ใหก้ ับ a ก่อน แล้วจึงนาค่าใหม่ของ a ไปใช้งาน
a++ นาคา่ เดิมของ a ไปใช้งานก่อนแลว้ จงึ เพ่มิ ค่า a อีกหน่งึ
--a ลดคา่ ลงหนึง่ ให้กบั a กอ่ น แลว้ จึงนาค่าใหมข่ อง a ไปใช้งาน
a-- นาค่าเดิมของ a ไปใชง้ านก่อนแล้วจงึ ลดคา่ a อีกหนึ่ง
6.7.3 ตัวดาเนินการเปรียบเทียบ ในภาษาซีจะมีตัวดาเนนิ การทน่ี ามาใชเ้ พื่อการเปรียบเทยี บ ซ่งึ
ประกอบด้วย
ตัวดาเนนิ การ ความหมาย
< นอ้ ยกวา่
<= นอ้ ยกวา่ หรอื เท่ากบั
> มากกว่า
>= มากกวา่ หรือเท่ากับ
== เท่ากบั
!= ไมเ่ ท่ากบั
ตัวอยา่ งที่ 6.8 โปรแกรมทดสอบการใชต้ ัวดาเนินการเปรยี บเทียบและผลลพั ธท์ ไี่ ด้
1: #include <stdio.h>
2: main()
3: {
4: printf(“100 > 8 = %d\n”,100 > 8); //พมิ พผ์ ลลัพธ์จากการเปรยี บเทยี บคา่ 100>8 ผลท่ไี ด้
เป็นจรงิ
5: printf(“-5 > 5 = %d\n\n”,+5 > 5); //พมิ พ์ผลลพั ธจ์ ากการเปรยี บเทียบค่า -5<5 ผลทไ่ี ดเ้ ปน็
เทจ็
6:
7: int result1, result2; //ประกาศตัวแปร result1 และ result2 มีชนดิ ขอ้ มูลเปน็ int
8: float a = 9.0, b = 9.01; //ประกาศตวั แปร a และ b มีชนิดขอ้ มลู เปน็ float พร้อม
กาหนดคา่
9: result1 = a > b; //กาหนดให้ result1 เกบ็ ผลลัพธจ์ ากการเปรียบเทยี บค่า a>b
10: result = a < b; //กาหนดให้ result2 เกบ็ ผลลัพธจ์ ากการเปรยี บเทียบค่า a<b
11:
110
12: printf(“result1 = %d\n”,result1); //พิมพค์ า่ result1 ผลทไ่ี ด้เป็นเทจ็
13: printf(“result2 = %d\n\n”,result2); //พมิ พค์ า่ result2 ผลทไี่ ดเ้ ป็นจรงิ
14: }
6.7.4 ตัวดาเนินการตรรกะ นอกจากตวั ดาเนินการเปรียบเทียบแลว้ ยังสามารถนาตวั ดาเนนิ การ
ตรรกะมาใช้ร่วมกนั ได้ ซึ่งตัวดาเนินการตรรกะ ประกอบดว้ ย
ตวั ดาเนนิ การ ความหมาย
&& และ (and)
|| หรือ (or)
! ไม่ใช่ (not)
โดยผลลัพธ์จะเป็นไปตามตารางคา่ ความจริงดงั น้ี (T = True ,F = False)
ตัวเปรียบเทียบ ผลลัพธ์
a b a && b a || b !a
T T TTF
T F FTF
F T FTT
F F FFT
6.7.5 ตัวดาเนินการกาหนดค่าแบบผสม ในภาษาซีมีตวั ดาเนินการกาหนดคา่ แบบผสม ซึ่ง
ประกอบดว้ ย +=, -=, *=, /=, %= โดยสามารถแสดงได้ดงั ตวั อย่างต่อไปนี้
นิพจนท์ ีเ่ ขียนแบบทั่วไป นิพจน์ทใ่ี ชด้ าเนินการกาหนดค่าแบบผสม
i=i+5 i+=5
f = f -g f -=g
j = j*(i-3) j*=(i-3)
f=f/3 f/=3
i=i%(j-2) i%=(j-2)
6.7.6 ตวั ดาเนนิ การเงื่อนไข นามาใช้เพ่ือทดสอบคา่ นิพจน์ทางตรรกะว่าจรงิ หรอื เท็จมีรูปแบบดงั น้ี
รูปแบบ expression1 ? expression2 : expression3
expression1 หมายถึง นิพจน์เงื่อนไข
expression2 หมายถึง นพิ จน์กรณีเปน็ จริง
expression3 หมายถงึ นิพจน์กรณีเปน็ เทจ็
111
ตัวดาเนนิ การกับลาดบั ความสาคญั
ตวั ดาเนินการแตล่ ะตวั จะมลี าดบั ความสาคญั กอ่ นหลังที่แตกตา่ งกันโดยการประมวลผลจะกระทา
กบั ตวั ดาเนินการที่มลี าดับความสาคัญสงู ก่อน แต่ถา้ กรณีมีความสาคญั เท่ากันจะกระทากบั ตัวดาเนนิ การ
จากซา้ ยไปขวา
ลาดบั ความสาคัญ ตวั ดาเนินการ ความหมาย
1 ( ) เครอื่ งหมายวงเล็บ
2 ++,-- ตวั ดาเนนิ การยนู ารี
3 -,! ยนู ารลี บและตรรกะ NOT
4 *,/,% คูณ หาร โมดูลสั
5 +,- บวก ลบ
การเปลี่ยนชนิดข้อมูล
ในภาษาซยี งั มีตวั ดาเนนิ การท่ีเรยี กว่า การแคสต์ (casting) เพ่อื แปลงชนิดข้อมูลจากชนิดหนงึ่ มา
เป็นอกี ชนิดหน่งึ ได้ วธิ ที าคือ ให้ระบชุ นิดข้อมูลทต่ี ้องการภายในเครือ่ งหมายวงเลบ็ หนา้ นิพจนท์ ่ีต้องการ
เชน่
float x = 1.20, y = 3.51;
int ans;
ans = (x + y) %2
จากตัวอยา่ งเม่ือคอมไพลแ์ ลว้ พบข้อผดิ พลาด เน่ืองจากผลรวมของ x และ y ทโ่ี มดลู สั ดว้ ย 2
จะต้องเปน็ คา่ จานวนเตม็ บวก ดังนัน้ สามารถแก้ไขดว้ ยการเปลย่ี นชนดิ ขอ้ มลู ของผลรวมของ x และ y เป็น
เลขจานวนเต็มก่อนแลว้ จงึ นาไปโมดูลสั กับ 2
112
ใบงานฝกึ ปฏิบัติ
เรอ่ื ง ขน้ั ตอนการแก้ไขปญั หา (Algorithm)
คาสัง่ /คาชแี้ จง
1. ให้นกั เรยี นออกแบบโปรแกรมโดยใช้ตัวดาเนนิ การอยา่ งน้อย 2 ชนิด
2. อธบิ ายโปรแกรมทน่ี ักเรียนออกแบบให้ครูผ้สู อนฟังหนา้ ชั้นเรยี น
3. ครูซักถามเกีย่ วกับโปรแกรมทีน่ ักเรียนออกแบบเพื่อทดสอบความเขา้ ใจ
113
แผนการจดั การเรยี นรู้ หน่วยท่ี 6
รหสั วิชา 20901 - 1002 ชอื่ วิชา การเขียนโปรแกรมคอมพิวเตอร์เบื้องตน้
ชอื่ หน่วย การใช้ประบวนการเขยี นโปรแกรมคาส่ัง การคานวณ เง่อื นไขกรณี
และการทาซ้า จานวน 3 ช่วั โมง
รายการหวั ข้อการเรยี นรู้
1. คาสงั่ เงื่อนไข
หวั ข้อการเรียนรู้ จุดประสงคก์ ารสอนหรือจุดประสงคเ์ ชิงพฤตกิ รรม
1. คาสั่งเง่อื นไข 1. เปรียบเทียบเงอ่ื นไขด้วยคาสงั่ เงือ่ นไขได้
วธิ กี ารสอน : อธบิ ายและสาธิต
ส่อื การสอน :
1. หนังสอื เรียนวิชา การเขยี นโปรแกรมคอมพิวเตอรเ์ บื้องต้น ของ บรษิ ัท วังอักษร จากดั
2. หนังสือ พน้ื ฐานการเขยี นโปรแกรมคอมพวิ เตอร์ ของบริษทั ซเี อด็ ยูเคช่ัน จากัด(มหาชน)
3. ใบงานปฏบิ ัติ
4. Google Classroom
การประเมิน :
1. เกณฑ์ผ่านการสังเกตพฤติกรรมการปฏิบตั ิงานรายบุคคล ต้องไม่มีช่องปรับปรุง
2. แบบสังเกตคุณธรรม จริยธรรม คา่ นยิ ม และคุณลกั ษณะอนั พึงประสงค์ คะแนนข้ึนอย่กู ับการ
ประเมนิ ตามสภาพจรงิ
114
แผนการจัดการเรียนรู้
ชอ่ื วิชา การเขยี นโปรแกรมคอมพิวเตอรเ์ บือ้ งต้น รหสั วชิ า 20901 - 1002 สอนครัง้ ท่ี 12
หนว่ ยท่ี 6 ชือ่ หน่วย การใชป้ ระบวนการเขียนโปรแกรมคาสง่ั เงอ่ื นไขกรณแี ละการทาซ้า จานวน 3 ชม.
1. หัวข้อการเรยี นรู้
1. คาสัง่ เงือ่ นไข
2. สาระสาคญั
ขั้นตอนการเขียนโปรแกรมต้องเร่ิมต้นจากการรับข้อมูล การคานวณ เง่ือนไขต่างๆ และการทาซ้า
วิธีการประมวลผลเพ่ือให้ได้มาซ่ึงผลลัพธ์ท่ีต้องการ การเขียนนิพจน์และตัวดาเนินการจึงเป็นส่ิงสาคัญท่ี
จะต้องเรียนรู้ เพื่อให้ทราบถึงวิธีการท่ีจะเขียนวิธีการเขียนคานวณในรูปแบบที่ถูกต้องตามรูปแบบของ
ภาษาซี ตัวดาเนินการในภาษาซีมีหลายแบบ ได้แก่ ตัวดาเนินการทางคณิตศาสตร์ ตัวดาเนินการเพิ่มและ
ลดค่า ตัวดาเนินการเปรียบเทียบ และการเขียนโปรแกรมคอมพิวเตอร์มักจะต้องมีคาส่ังให้โปรแกรมเลือก
ทาอย่างใดอย่างหน่ึงเสมอ ซึ่งจะต้องนาคาส่ังในการเลือกทามาใช้ การทางานย่อมมีการเลือกการทางาน
หลายทาง
3. สมรรถนะประจาหนว่ ย
แสดงความรู้เกยี่ วกบั การเขยี นโปรแกรมแสดงข้อความด้วยคาส่งั cout การเขยี นโปรแกรมรบั
ขอ้ มูลด้วยคาส่งั cin นิพจน์ ตัวดาเนนิ การ การเขยี นโปรแกรมโดยใชค้ าสงั่ เงอื่ นไขเพื่อเปรียบเทียบเงอื่ นไข
และการเขยี นโปรแกรมโดยใช้โครงสรา้ งการทาซ้าได้
4. จดุ ประสงค์การเรยี นรู้
4.1 จดุ ประสงค์ทว่ั ไป
1. คาสง่ั เงอ่ื นไข
4.2 จุดประสงคเ์ ชงิ พฤติกรรม
1. เปรยี บเทียบเง่ือนไขด้วยคาส่งั เงือ่ นไขได้
5. กิจกรรมการจัดการเรียนรู้
ในการเรยี นการสอนของหน่วยท่ี 6 ครง้ั ท่ี 12 (จานวน 3 ช่ัวโมง)
ข้ันนาเขา้ สู่บทเรียน
1. ตรวจสอบรายช่อื ของนักเรียนท่ีเข้าเรียน
2. ครแู ละนักเรียนรว่ มกันสนทนา ทบทวนเนอื้ หาเดิมทีเ่ คยเรยี นผ่านมาแลว้ และแสดงความคิดเหน็
เกย่ี วกับการเขียนโปรแกรมเง่ือนไขกรณี
3. ครูแสดงความคิดเห็นเพิ่มเตมิ
115
ขั้นสอน
1. ครบู รรยาย อธบิ าย ยกตวั อย่างในแต่ละหัวข้อการเรียน
2. เปิดโอกาสให้นักเรียนซักถามครผู ู้สอน
3. ประเมนิ พฤตกิ รรมรายบคุ คลโดยครจู ะซกั ถามในแต่ละคน
ขน้ั สรุป
1. ครูและนักเรยี นรว่ มกนั สรุปสาระสาคญั
2. เปดิ โอกาสให้นกั เรยี นซักถามขอ้ สงสัย
3. มอบหมายให้ไปหัดทาและศกึ ษาเพิม่ เตมิ
6. สื่อการจดั การเรียนรู้
1. หนงั สือเรียนวชิ า การเขียนโปรแกรมคอมพวิ เตอรเ์ บื้องต้น ของ บริษัท วังอกั ษร จากัด
2. หนงั สือ พนื้ ฐานการเขยี นโปรแกรมคอมพวิ เตอร์ ของบริษัทซีเอ็ดยเู คชั่น จากัด(มหาชน)
3. ใบงานปฏบิ ตั ิ
4. Google Classroom
7. การวัดผลและประเมินผล
วธิ วี ัดผล
1. ผเู้ รียนปฏบิ ตั ิภาระงานทม่ี อบหมายเสร็จทันเวลาท่ีกาหนด
2. การสงั เกตและประเมินผลพฤติกรรมดา้ นคุณธรรม จริยธรรม คา่ นิยม และคุณลกั ษณะอันพงึ
ประสงค์
เคร่ืองมือวดั ผล
1. ใบงานปฏบิ ตั ิ
2. แบบสังเกตคุณธรรม จรยิ ธรรม ค่านิยม และคุณลักษณะอันพงึ ประสงค์ โดยครแู ละนักเรยี น
ร่วมกนั ประเมนิ
8. แหลง่ การเรยี นร้เู พิม่ เติม
1. ห้องสมุดวิทยาลยั การอาชีพสวา่ งแดนดนิ
2. อนิ เทอรเ์ นต็
9. กิจกรรมเสนอแนะ (ถา้ มี)
1. นักเรียนเขา้ ไปค้นคว้าข้อมูลเพิ่มเตมิ จากห้องสมดุ
2. ทาแบบฝึกปฏบิ ัตแิ ละแบบประเมินผลการเรียนรู้
116
สปั ดาห์ท.ี่ ................
บนั ทกึ หลงั การสอน
รหัสวิชา..............................วชิ า......................................................................ระดับ................. ช้นั ปีที่...........
แผนกวชิ า.......................................................จานวนนักเรยี น......................คน มาเรยี น...........................คน
ขาดเรียน..............คน มาสาย................คน ลา.............คน สอนเม่ือวนั ท่.ี .........เดอื น......................พ.ศ.........
หน่วยที.่ ..................... ช่อื หนว่ ย................................................................................จานวน.................ชัว่ โมง
เนื้อหาวตั ถปุ ระสงค์และสื่อการสอน
................................................................................................................. .......................................................
............................................................................................................................. ...........................................
.............................................................................................................................................................. ..........
......................................................................................................................... ...............................................
............................................................................................................................. ...........................................
...................................................................................................................................................................... ..
............................................................................................................................. ...........................................
ปัญหาทีเ่ กิดขึน้ ในระหวา่ งการเรยี นการสอน
............................................................................................................................. ...........................................
..................................................................................................................................... ...................................
................................................................................................ ........................................................................
............................................................................................................................. ...........................................
............................................................................................................................................. ...........................
........................................................................................................ ................................................................
แนวทางการแกไ้ ขปญั หาของครผู สู้ อน และผลท่ีได้
............................................................................................................................. ...........................................
........................................................................................................................................................................
............................................................................................................................. ...........................................
............................................................................................................................. ...........................................
........................................................................................................................................................................
............................................................................................................................. ...........................................
ลงชือ่ ............................................ครผู ้สู อน ลงชอื่ ................................................หัวหน้าแผนก
(นางสุวมิ ล อักษรกลาง) (นางสุกัญญา ดนัยสวัสดิ)์
วนั ท่.ี ......................................................... วนั ท่ี......................................................
117
ใบความรู้ / ใบเน้ือหา
หน่วยที่ 6 เร่อื ง การใช้ประบวนการเขียนโปรแกรมคาส่ังเงอื่ นไขกรณแี ละการทาซ้า
6.8 คาส่ังเงื่อนไข
ภาษาซีจะใชป้ ระโยค if ในการสร้างเง่อื นไขซ่ึงสามารถตรวจสอบเงื่อนไขว่าตรงกบั ความจรงิ หรือ
ความเท็จได้ นอกจากประโยค if แล้ว ในภาษาซยี งั มีการกาหนดทางเลือกด้วยประโยค switch อกี ดว้ ย
6.8.1 การใช้เง่ือนไข if-statement ในการใช้ประโยคคาสั่ง if-statement เพื่อตรวจสอบ
เง่อื นไขมีอยู่ 4 รปู แบบคือ
6.8.1.1 การสรา้ งเง่อื นไขประโยคเดียว เป็นการตรวจสอบเง่อื นไขวา่ เปน็ จรงิ หรอื เท็จ แล้ว
ใหท้ าชุดคาสงั่ น้ัน ๆ
รูปแบบ if (condition)
statement;
6.8.1.2 การสรา้ งเงื่อนไข if…else เป็นการตรวจสอบวา่ หากเงอ่ื นไขเปน็ จรงิ กจ็ ะ
ดาเนินการกบั ชุดคาส่งั ท่ีกาหนดไว้และหากเง่อื นไขเปน็ เท็จ กจ็ ะดาเนนิ การชดุ คาส่งั หลังประโยค else ถ้ามี
ชดุ คาสั่งหลายประโยคภายใต้เงือ่ นไข จาเปน็ ต้องเพิ่มบล็อก {…} เข้าไปด้วย
รูปแบบ if (condition)
statement;
else
statement;
6.8.1.3 การสรา้ งเง่ือนไข if…else แบบหลายกรณี หากรูปแบบการสรา้ งเงื่อนไขท่ตี ้อง
ตรวจสอบหลายๆ กรณีก็จะใช้ประโยค else if เพื่อตรวจสอบเป็นลาดับข้ันย่อย ๆ ต่อไป
6.8.1.4 การสรา้ งเงือ่ นไขแบบซ้อน (Nested if) เปน็ รปู แบบการสรา้ งเง่ือนไขทซ่ี ับซ้อน
ยง่ิ ขึน้ โดยจะมีการตรวจสอบเงอื่ นไขซ้อนย่อยลงไปอีก ซึ่งการสร้างประโยคซ้อนเงอื่ นไขดังกลา่ ว
จาเป็นต้องตรวจสอบให้รอบคอบมฉิ ะนน้ั อาจเกดิ ผลลพั ธท์ ผ่ี ิดพลาดได้ เชน่ การตรวจสอบคา่ a,b,c ว่าค่า
ใดมากทส่ี ุด
if (a>b)
if (a>c)
printf(“A is Max”);
else
printf(“C is Max”);
else
118
if(b>c)
printf(“B is Max”);
else
printf(C is Max);
6.8.2 การควบคมุ เง่ือนไขดว้ ย switch
นอกจาก if-else แลว้ ภาษาซียังมีคาสง่ั ควบคุมเงื่อนไขอีกตัวหนึง่ คือ switch ซง่ึ สามารถนามาใช้
งานไดด้ ีกับโปรแกรมทีม่ ีรายการเมนใู หเ้ ลือก โดยมีรูปแบบการใช้งานดงั น้ี
รูปแบบ switch(integer_expression)
{
case constant1:
statement1;
statement2;
statement;
break;
case constant2:
statement1;
statement2;
statementn;
break;
default:
statement;
}
integer_expression คอื ค่าจานวนเต็มทนี่ ามาใชต้ รวจสอบเงอ่ื นไข
case คือเงื่อนไขที่อย่ใู นแตล่ ะกรณีที่เป็นไปตาม constant นั้น ๆ
default กรณที ่เี งื่อนไขตรวจสอบไม่อยู่ในทกุ กรณี กจ็ ะอยู่ในกรณีของ default
โดยอตั โนมัติ
break แต่ละ case จาเป็นต้องใส่ break ทกุ ครั้งเพอื่ ใหห้ ลดุ ออกจาก case
มิฉะน้นั จะมีการตรวจสอบใน case ถดั ไป สง่ ผลให้ผลลพั ธ์ผิดพลาดได้
119
แต่คาสัง่ break ไมจ่ าเป็นต้องใสล่ งในกรณีของ default
ขอ้ แตกต่างระหว่าง if กับ switch
1. switch ไม่สามารถตรวจสอบนพิ จนช์ นิดเลขจานวนจริงที่มีจุดทศนิยม
2. switch นามาใช้ตรวจสอบชนดิ ข้อมลู ทเ่ี ป็นแบบ int หรอื char เท่าน้นั
3. การตรวจสอบภายใน case ของ switch ในแตล่ ะกรณี จะไม่สามารถนาตวั แปรมาใชไ้ ด้ จะ
ใชไ้ ดแ้ ต่ค่าคงท่ีเท่านั้น
4. switch ไม่สามารถตรวจสอบเงื่อนไขหลาย ๆ ตวั ภายในนิพจนเ์ ดยี วได้
ตวั อย่างท่ี 6.9 โปรแกรมทดสอบการใช้ประโยคคาสง่ั switch เพ่ือตรวจสอบค่า
1: #include<stdio.h>
2: #include<conio.h>
3:
4: main()
5: {
6: char ch;
7: printf(“1. Apple\n”);
8: printf(“2. Orange\n”);
9: printf(“3. Mango\n”);
10: printf(“4. Durian\n”);
11: printf(“5. Grape\n”);
12:
13: printf(“\nSelect => ”);
14: ch=getche();
15:
16: switch(ch)
17: {
18: case ‘1’
19: printf(“\nYou select apple”);
20: break;
21: case ‘2’
22: printf(“\nYou select orange”);
23: break;
120
23: break;
24: case ‘3’
25: printf(“\nYou select mango”);
26: break;
27: case ‘4’
28: printf(“\nYou select durian”);
29: break;
30: case ‘5’
31: printf(“\nYou select grape”);
32: break;
33: default:
34: printf(“\nPlease type 1-5 only…”);
35: }
36: }
คาอธบิ าย ความหมาย
บรรทดั ที่ ประกาศตัวแปร ch มชี นิดข้อมลู เป็นตวั อกั ขระหนงึ่ ตัว
6 พมิ พร์ ายการเมนู
7-11 พมิ พ์ข้อความวา่ ใหเ้ ลือกรายการตามเมนู
13 รอรบั แป้นคยี ์ เพอ่ื เกบ็ ค่าไว้ในตวั แปร switch
14 ตรวจสอบค่าตวั แปร ch ที่ปอ้ นเขา้ ไปดว้ ย switch
16 จุดเร่ิมตน้ การทางานของบล็อก switch
17 กรณเี ท่ากับ ‘1’ พมิ พ์ข้อความว่า คุณเลือกแอปเปิลแล้วให้หลุดจากบล็อก
18-20 switch
กรณีเท่ากับ ‘2’ พิมพ์ขอ้ ความว่า คุณเลอื กล้มแล้วให้หลดุ จากบล็อก switch
21-23 กรณีเทา่ กับ ‘3’ พิมพ์ขอ้ ความว่า คณุ เลือกมะม่วงแลว้ ใหห้ ลดุ จากบลอ็ ก switch
24-26 กรณเี ท่ากับ ‘4’ พิมพ์ข้อความวา่ คุณเลอื กทุเรยี นแลว้ ใหห้ ลุดจากบลอ็ ก switch
27-29 กรณีเทา่ กับ ‘5’ พมิ พ์ขอ้ ความว่า คุณเลอื กองุ่นแลว้ ใหห้ ลดุ จากบลอ็ ก switch
30-32 กรณเี ปน็ ค่านอกเหนือจากน้ันให้พิมขอ้ ความว่าให้เลอื ก 1-5 ไดเ้ ทา่ นัน้
33-34 จุดส้ินสดุ ของการทางานของบล็อก switch
35
121
ใบงานฝกึ ปฏบิ ัติ
เร่อื ง การใช้ประบวนการเขียนโปรแกรมคาสง่ั การคานวณ เงื่อนไขกรณีและการทาซ้า
คาส่งั /คาชแ้ี จง
1. ใหน้ กั เรยี นเขียนโปรแกรมต่อไปนีโ้ ดยใช้ if switch
1.1 โปรแกรมคานวณผลการเรยี นของนักศึกษา 20 คน รายวชิ าการเขียนโปรแกรมเบื้องต้น โดย
แบง่ คะแนนเป็น คะแนนงานทมี่ อบหมาย 20 คะแนน คะแนนสอบกลางภาค 20 คะแนน คะแนนสอบ
ปลายภาค 60 คะแนน แสดงผลลัพธแ์ ละให้นับจานวนเกรดของนักศึกษาวา่ มีเกรด P กคี่ นและเกรด F ก่คี น
มีเกณฑ์การตัดเกรดดังนี้
- คะแนนตง้ั แต่ 60 คะแนนขึ้นไปใหเ้ กรด P
- คะแนนน้อยกว่า 60 ใหเ้ กรด F
1.2 โปรแกรมแสดงชื่อวันโดยรับข้อมูลจากผูใ้ ชง้ านเปน็ ตัวเลข
122
แผนการจดั การเรยี นรู้ หนว่ ยที่ 6
รหสั วิชา 20901 - 1002 ชอ่ื วิชา การเขียนโปรแกรมคอมพิวเตอรเ์ บ้ืองต้น
ชือ่ หน่วย การใช้ประบวนการเขียนโปรแกรมคาสงั่ การคานวณ เง่ือนไขกรณี
และการทาซา้ จานวน 3 ชวั่ โมง
รายการหวั ข้อการเรยี นรู้
1. โครงสร้างทาซ้า for
หวั ข้อการเรียนรู้ จุดประสงค์การสอนหรอื จดุ ประสงคเ์ ชิงพฤติกรรม
1. โครงสร้างทาซ้า for 1. เขียนโปรแกรมด้วยโครงสร้างทาซ้า for ได้
วิธีการสอน : บรรยายและสาธติ
ส่อื การสอน :
1. หนงั สือเรียนวิชา การเขียนโปรแกรมคอมพิวเตอรเ์ บ้ืองต้น ของ บรษิ ัท วังอกั ษร จากดั
2. หนังสอื พนื้ ฐานการเขยี นโปรแกรมคอมพิวเตอร์ ของบริษัทซเี อด็ ยูเคช่ัน จากัด(มหาชน)
3. ใบงานปฏบิ ตั ิ
4. Google Classroom
การประเมิน :
1. เกณฑผ์ า่ นการสังเกตพฤตกิ รรมการปฏบิ ตั ิงานรายบุคคล ต้องไม่มชี ่องปรบั ปรุง
2. แบบสังเกตคุณธรรม จรยิ ธรรม คา่ นยิ ม และคุณลักษณะอนั พงึ ประสงค์ คะแนนขนึ้ อยูก่ ับการ
ประเมินตามสภาพจรงิ
123
แผนการจัดการเรยี นรู้
ช่ือวิชา การเขียนโปรแกรมคอมพิวเตอร์เบือ้ งต้น รหัสวิชา 20901 - 1002 สอนครง้ั ท่ี 13
หน่วยที่ 6 ชือ่ หน่วย การใชป้ ระบวนการเขียนโปรแกรมคาสงั่ เงอ่ื นไขกรณีและการทาซ้า จานวน 3 ชม.
1. หวั ขอ้ การเรยี นรู้
1. โครงสร้างทาซ้า for
2. สาระสาคญั
ขั้นตอนการเขียนโปรแกรมต้องเริ่มต้นจากการรับข้อมูล การคานวณ เง่ือนไขต่างๆ และการทาซ้า
วิธีการประมวลผลเพ่ือให้ได้มาซ่ึงผลลัพธ์ท่ีต้องการ การเขียนนิพจน์และตัวดาเนินการจึงเป็นส่ิงสาคัญท่ี
จะต้องเรียนรู้ เพ่ือให้ทราบถึงวิธีการที่จะเขียนวิธีการเขียนคานวณในรูปแบบที่ถูกต้องตามรูปแบบของ
ภาษาซี ตัวดาเนินการในภาษาซีมีหลายแบบ ได้แก่ ตัวดาเนินการทางคณิตศาสตร์ ตัวดาเนินการเพ่ิมและ
ลดค่า ตัวดาเนินการเปรียบเทียบ และการเขียนโปรแกรมคอมพิวเตอร์มักจะต้องมีคาสั่งให้โปรแกรมเลือก
ทาอย่างใดอย่างหนึ่งเสมอ ซึ่งจะต้องนาคาสั่งในการเลือกทามาใช้ การทางานย่อมมีการเลือกการทางาน
หลายทาง
3. สมรรถนะประจาหน่วย
แสดงความร้เู กีย่ วกับการเขียนโปรแกรมแสดงข้อความดว้ ยคาสัง่ cout การเขยี นโปรแกรมรบั
ข้อมลู ด้วยคาสง่ั cin นพิ จน์ ตัวดาเนนิ การ การเขียนโปรแกรมโดยใช้คาสง่ั เง่ือนไขเพ่ือเปรียบเทียบเงือ่ นไข
และการเขยี นโปรแกรมโดยใช้โครงสรา้ งการทาซ้าได้
4. จุดประสงค์การเรยี นรู้
4.1 จุดประสงค์ท่ัวไป
1. โครงสร้างทาซา้
4.2 จุดประสงคเ์ ชงิ พฤติกรรม
1. เขียนโปรแกรมด้วยโครงสร้างทาซา้ ได้
5. กจิ กรรมการจัดการเรยี นรู้
ในการเรียนการสอนของหน่วยที่ 6 คร้งั ท่ี 13 (จานวน 3 ช่ัวโมง)
ข้ันนาเข้าสบู่ ทเรยี น
1. ตรวจสอบรายชอื่ ของนักเรียนทเี่ ขา้ เรียน
2. ครูและนกั เรียนร่วมกันสนทนา ทบทวนความรเู้ ดิมที่เรยี นผ่านมาแลว้ และแสดงความคิดเห็น
เกย่ี วกับการเขียนโปรแกรมคาสั่งการทาซ้าโดยใช้ for
3. ครแู สดงความคิดเหน็ เพ่ิมเติม
124
ข้นั สอน
1. ครูบรรยาย อธิบาย ยกตัวอย่างในแตล่ ะหวั ข้อการเรียน
2. เปดิ โอกาสใหน้ ักเรียนซักถามครผู ู้สอน
3. ประเมนิ พฤติกรรมรายบคุ คลโดยครจู ะซกั ถามในแต่ละคน
ข้นั สรปุ
1. ครแู ละนกั เรียนร่วมกนั สรุปสาระสาคญั
2. เปิดโอกาสให้นกั เรียนซักถามข้อสงสัย
3. มอบหมายให้ไปหัดทาและศึกษาเพิ่มเติม
6. ส่อื การจัดการเรยี นรู้
1. หนังสอื เรยี นวชิ า การเขียนโปรแกรมคอมพิวเตอรเ์ บื้องต้น ของ บริษัท วังอกั ษร จากัด
2. หนงั สอื พ้ืนฐานการเขยี นโปรแกรมคอมพิวเตอร์ ของบริษทั ซเี อ็ดยเู คชั่น จากัด(มหาชน)
3. ใบงานปฏบิ ัติ
4. Google Classroom
7. การวดั ผลและประเมนิ ผล
วธิ ีวัดผล
1. ผ้เู รยี นปฏิบตั ภิ าระงานท่มี อบหมายเสรจ็ ทันเวลาท่ีกาหนด
2. การสงั เกตและประเมินผลพฤติกรรมดา้ นคุณธรรม จริยธรรม ค่านยิ ม และคุณลกั ษณะอนั พึง
ประสงค์
เคร่อื งมอื วัดผล
1. ใบงานปฏบิ ัติ
2. แบบสังเกตคุณธรรม จรยิ ธรรม ค่านยิ ม และคุณลกั ษณะอนั พงึ ประสงค์ โดยครแู ละนักเรยี น
ร่วมกันประเมิน
8. แหลง่ การเรยี นรเู้ พ่ิมเติม
1. หอ้ งสมดุ วทิ ยาลัยการอาชีพสวา่ งแดนดิน
2. อินเทอร์เน็ต
9. กจิ กรรมเสนอแนะ (ถ้ามี)
-
125
สัปดาหท์ ่.ี ................
บนั ทึกหลงั การสอน
รหสั วิชา..............................วชิ า......................................................................ระดับ................. ช้ันปที ี่...........
แผนกวชิ า.......................................................จานวนนกั เรยี น......................คน มาเรียน...........................คน
ขาดเรยี น..............คน มาสาย................คน ลา.............คน สอนเม่ือวนั ท่.ี .........เดอื น......................พ.ศ.........
หน่วยท่.ี ..................... ช่ือหนว่ ย................................................................................จานวน.................ชว่ั โมง
เนอื้ หาวตั ถุประสงคแ์ ละส่อื การสอน
........................................................................................................................................................................
............................................................................................................................. ...........................................
............................................................................................................................. ...........................................
........................................................................................................................................................................
............................................................................................................................. ...........................................
............................................................................................................................. ...........................................
........................................................................................................................................................................
ปัญหาท่เี กิดขึน้ ในระหวา่ งการเรยี นการสอน
.......................................................................................................... ..............................................................
............................................................................................................................. ...........................................
....................................................................................................................................................... .................
.................................................................................................................. ......................................................
............................................................................................................................. ...........................................
............................................................................................................................................................... .........
แนวทางการแก้ไขปัญหาของครูผสู้ อน และผลที่ได้
........................................................................................................................................................................
............................................................................................................................. ...........................................
............................................................................................................................. ...........................................
........................................................................................................................................................................
............................................................................................................................. ...........................................
.................................................................................................................................. ......................................
ลงชอ่ื ............................................ครผู ้สู อน ลงชือ่ ................................................หวั หนา้ แผนก
(นางสวุ มิ ล อักษรกลาง) (นางสกุ ญั ญา ดนัยสวสั ด์)ิ
วนั ท.ี่ .........................................................
วนั ที.่ .....................................................
126
ใบความรู้ / ใบเนอ้ื หา
หน่วยที่ 6 เรอื่ ง การใชป้ ระบวนการเขยี นโปรแกรมคาสั่งเงือ่ นไขกรณแี ละการทาซา้
6.9 คาส่ังทาซ้า
6.9.1 โครงสรา้ งการทาซา้ โดยคาส่งั for
เป็นคาสัง่ โครงสร้างท่ีใชส้ าหรบั ควบคมุ ทิศทางของโปรแกรมให้ทางานแบบซ้า ๆ กัน ซ่ึงคาส่ัง for
เป็นการให้โปรแกรมทาซ้าจนกวา่ คา่ ตัวแปรจะครบตามทตี่ ั้งไว้ เรม่ิ แรกโปรแกรมจะกาหนดค่าเริม่ ต้นให้กบั
ตวั แปรเรม่ิ ต้น (initialization) จากน้ันทาตามคาส่งั คาสัง่ นี้เหมาะกับกรณีทีร่ ู้จานวนแนน่ อนว่าต้องการให้
วนรอบการทาซ้ากี่รอบ
รปู แบบ for (คา่ เร่ิมต้นตวั แปร;ตรวจสอบเง่ือนไข;สว่ นเปลีย่ นแปลงค่า)
{ คาสัง่ 1;
คาสัง่ 2;
:
คาสงั่ n;
}
ในส่วนการตรวจสอบเง่ือนไข บางคร้ังจะเรียกว่า ตวั แปรควบคมุ ลปู เรม่ิ ตน้ คาสัง่ จะทาสว่ น
กาหนดคา่ เร่ิมตน้ จากนน้ั จะตรวจสอบเงอื่ นไขเป็นจริงหรือไม่ ถา้ เง่ือนไขเปน็ จรงิ จะทาตามคาส่งั ที่จะทาซ้า
แลว้ กลับมาทาในส่วนเปลยี่ นแปลงคา่ จากนั้นจะตรวจสอบเงือ่ นไขใหมโ่ ดยทาแบบนีจ้ นกวา่ เง่ือนไขนน้ั จะ
เปน็ เท็จ คาส่ังท่ีทาอาจเปน็ คาสง่ั รวมแต่ตอ้ งอยู่ภายในเคร่ืองหมาย { กับ }
ในสว่ นของ สว่ นเปลย่ี นแปลงค่า จะเป็นคาสั่งทใ่ี ช้เพิ่มค่าหรือลดคา่ ให้กบั ตัวแปร โดยมกั เขยี นเป็น
คาส่ังเดยี วถา้ ต้องการใชห้ ลายคาสง่ั จะใช้เครื่องหมาย comma คนั่ ระหว่างคาสัง่
ลกั ษณะการทางานของลูป for
1. คาสงั่ ภายใต้ลูป for จะทางานเมือ่ เป็นจริง (True)
2. การออกจากลูปเมอ่ื คาสงั่ เง่ือนไขเปน็ เท็จ (False)
3. การทางานของลปู จะเร่ิมจากค่าเร่ิมต้นทกี่ าหนด
4. จานวนรอบท่ที างานจะขน้ึ อยูก่ ับคา่ นิพจน์ท่กี าหนดไว้
5. การเพ่มิ ค่า counter ใหก้ ับลูปส่งผลต่อจานวนรอบที่ทางาน เช่น ใหท้ าซา้ 10 รอบก็
สามารถเขยี นชุดคาสั่ง ดังนี้
for (i=1; i <=10; i++)
จากคาส่ัง จะพบวา่
1. มีการกาหนดคา่ เร่ิมต้นของตวั นับจานวนรอบเทา่ กับ 1 ( i = 1)
2. ตัวนบั จานวนรอบจะทางาน 10 รอบ ( i <= 10 )
127
3. แตล่ ะรอบใหม้ กี ารเพิ่มจานวนตวั นบั จานวนรอบทีล่ ะ 1 ( i ++)
ตวั อยา่ งโปรแกรม :