หน่วยการเรียนรู้ที่ 2 กระบวนการแก้ปัญหาทางคอมพิวเตอร์Unit2

Page 1

~1~

หนวยการเรียนรูที่ 2 กระบวนการแกปญหาทางคอมพิวเตอร กระบวนการแกปญหาทางคอมพิ จุดประสงคการเรียนรูปลายทาง 1.เขี เขียนขั้นตอนการแกปญหาตามกระบวนการแกปญหาได ตอนการแกปญหา

จุดประสงคการเรียนรูนําทาง 1. บอกขั้นตอนการแกปญหาได 2. แกปญหาที่กําหนดใหได 3. ติดตั้งและทดลองใชเครื และทดลองใช ่องมือที่ช4วยในการแกปญหาที่กําหนดใหได 4. แปลโปรแกรมใหเป'นภาษาเครื่องได 5. บอกโครงสรางของภาษา C 6. ใชคําสั่งแสดงขอความบนจอภาพได 7. ใชคําสั่งหมายเหตุ เพื่อช4วยในการอธิบายโปรแกรมได

สาระสําคัญ คอมพิวเตอร=เป'นอุปกรณ=ที่ช4วยใหการทํางาน มีความยุ4งยาก ซับซอนทําไดสะดวกรวดเร็วขึ้น ช4วยใน การคํานวณปญหาที่มีความซับซอน กระบวนการ หรือ ขั้นตอน หรือกลวิธีที่ใชเพื่อใหไดคําตอบ มีความสําคัญ กระบวนการที่ใชในการแกปญหาถือว4าเป'นสิ่งสําคัญ การแกปญหาเป'นกระบวนการของการประยุ กระบวน กต=ความรู ที่ไดรับมาก4อนเพื่อ มาใชกับสถานการณ=ใหม4ทไี่ ม4คุนเคย


~2~

แบบทดสอบกอนเรียนหนวยที่ 2 คําชี้แจง ใหนักเรียนเลือกคําตอบที่ถูกที่สดุ เพียงคําตอบเดียว (กระดาษคําตอบอยูทายเลม) จุดประสงคที่ 1. บอกขั้นตอนการแกปญหาได 1. ขอใดเป'นขั้นตอนการแกปญหาของ โพลยา ก. ทําความเขาใจปญหา วางแผนการแกปญหา ดําเนินการตามแผน ตรวจสอบผล ข. อ4านปญหา ทําความเขาใจ วางแผน ดําเนินการ ตรวจคําตอบ ค. ออกแบบ วางแผน จัดการกับปญหา ตรวจสอบปญหา ง. ไม4มีคําตอบ จุดประสงคที่ 2. แกปญหาที่กําหนดใหได 2. เมื่อพบตัวเลขดังนี้ 1 5 13 29 ......... 125 เติมตัวเลขที่สอดคลองกับ กับตัวเลขที่กําหนดให ก. 32 ข. 46 ค. 61 ง. 108 จุดประสงคที่ 3. ติดตั้งและทดลองใชเครื่องมือที่ชวยในการแกปญหาที่กําหนดใหได 3. โปรแกรมที่กําหนดใหใชในการเขียนโปรแกรมภาษา C คือโปรแกรมใด ก. Turbo C ข. Borland C ค. Dev C++ ง. Microsoft C++ จุดประสงคที่ 4. แปลโปรแกรมใหเป5นภาษาเครื่องได 4. คําสั่งในขอใด เป'นคําสั่งใชแปลโปรแกรม และแสดงผลการทํางาน ก. F10 ข. F9 ค. F8 จุดประสงคที่ 5. บอกโครงสรางของภาษา C 5. ขอใดไม4ใช4โครงภาษา C ก. int main() { ……. } ข. #include<stdio.h> int main() { ……….. }

ง. F4

ค. main() { ….. } ง. #include<stdio.h> { ……….. }


~3~ จุดประสงคที่ 6. ใชคําสั่งแสดงขอความบนจอภาพได 6. คําสั่งในขอใดใหผลลัพธ=ดังนี้ I like cake. ก. print(“I like cake”); ข. printf(“I like”); printf(“ cake”);

ค. printf(‘I like cake’); ง. print(“I like”); prinf(“ cake”);

7. คําสั่งในขอใดเป'นคําสั่งหยุดเพื่อรอรับ การกดปุjมบนคีย=บอร=ด ก. getch(); ข. main(); ค. #include<stdio.h>

ง. printf();

8. จากโปรแกรมต4อไปนี้ ผลลัพธ=ที่ไดจากการทํางานของโปรแกรม #include<stdio.h> #include<conio.h> main() { printf(“He says,\n”); printf(“ I go to school”); } ก. He says, I go to school ข. โปรแกรมไม4ผ4านการคอมไพล=

ค. He says, I go to school ง. ไม4ปรากฏผลการทํางาน

9. รหัสในขอใดต4อไปนี้ใชสําหรับเวนช4องว4าเป'นจํานวน 8 ตัวอักษร ก. \n ข. \t ค. \0 จุดประสงคที่ 7. ใชคําสั่งหมายเหตุ เพื่อชวยในการอธิบายโปรแกรมได 10. คําสั่งในขอใดเมื่อนําไปแปลคําสั่งใหเป'นภาษาเครื่อง แลวไม4ถูกนําไปแปลคําสั่ง ก. */printf(“aaa”); /* ค. /*main();*/ ข. \\ #include<stdio.h> ง. */printf();*/ -------------------------------------------

ง. \b


~4~

ใบงานที่ 2.1 เรื่อง ปญหา ปญหา และ ปญหา ชื่อ-นามสกุล ..............................................................................ชั้น...............เลขที่............กลุ4มที่ ............... คําชี้แจง ใหนักเรียนแต4ละกลุ4มช4วยกันแกปญหาจากกรอบของปญหาที่กําหนดให 5 กรอบดังนี้

ปญหาที่ 1 3X3 เลขไมซ้ํา ในตารางตัวเลข มีสี่เหลี่ยมจัตุรัสตัวเลขขนาด 3X3 ซ4อนอยู4 9 ตาราง ซึ่ง ประกอบดวยเลข 1-9 โดยตัวเลขที่ปรากฏในตารางจะไม4ซ้ํากันเลย จงหาดูว4า ตารางทั้ง 9 นั้นซ4อนอยู4ที่ไดบาง หมายเหตุ ตารางบางตารางอาจซอนกันอยู4 9 1 8 1 2 8 6 3 9 7 4 5 3 4 2

7 2 5 4 9 3 7 1 8 3 1 3 9 2 7

6 4 3 7 3 1 5 3 1 4 5 1 6 8 5

8 1 9 7 3 4 1 3 2 7 4 5 3 2 7 9 1 2 9 4 2 9 3 6 9 8 5 2 4 1 6 7 6 1 3 1 7 2 4 8 3 4 8 2 7 5 1 6 9 2 7 9 5 9 7 3 1 6 5 2 6 8 2 7 2 5 4 1 3 9 3 8 7 3 9 8 7 9 2 8 8 1 2 3 6 5 4 7 4 5 1 9 7 8 6 2 5 7 1 4 2 1 4 8 7 6 5 3 1 2 1 7 9 8 2 9 7 1 8 1 พบสี่เหลี่ยมขนาด 3X3 จํานวน ………………….

2 8 1 2 9 4 7 8 4 2 6 9 1 9 5 รูป

6 7 5 6 8 6 2 4 5 1 4 8 2 5 1

8 4 9 3 9 3 6 7 2 7 3 5 9 7 9

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

7 8 5 1 2 1 2 1 6 9 5 1 4 6 3


~5~

ปญหาที่ 2 เบื้อหลังดารา ...ดาราแต4ละคนจะเป'นผูรักษาหมายเลข 1 - 8 แต4ละคนจะมีไดหมายเลขเดียว เท4านั้น นักเรียนช4วยกันสืบหาว4าแต4ละคน เก็บรักษาหมายเลขใดไวบาง วิธีสืบหาคือ ใหดู จากผลรวมตัวเลขในแต4ละแถว วาววว ......มีดาราใจดีแอบใบไวใหดวยนะตัวเอง

21 17 17 26 27 15

25

19

25

24

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


~6~

ปญหาที่ 3 เติมใหเต็ม ...นําตัวเลขที่กําหนดใหต4อไปนี้ใส4ลงในตารางที่กําหนดให วิธีการเล4นคือใหเลือกช4อง ที่มีขนาดเท4ากับชุดของตัวเลขที่ใส4พอดี โดยจะมีตัวเลขที่กําหนดให 5 ชุด ดังนี้ 3 หลัก 113 126 328 493 557

4 หลัก 712 812 954 982

1544 3445 4261 4831 5302 5792

5 หลัก 5841 . 5974 6627 7754 8226

6 หลัก 178933 263481 328995 342281

13432 13544 18523 21531 23351 33662

41752 51499 52181 82399 95328

7 หลัก 3217534 3287129 6104843 8913374

482031 812552 813254

5 8 4 1

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


~7~

ปญหาที่ 4 ทากันทุกดาน ...เลือกตัวเลข ที่กําหนดใหมาใส4ลงในช4องวงกลมใหครบทุกช4อง มีขอแมนว4าผลรวม ของตัวเลขแต4ละแนวจะตองเท4ากับผลลัพธ=ที่กําหนดให

2

8

10

13

15

20

21

25

30

=73

=73 =73 เมื่อแกปญหาที่สําเร็จแลว ใหนักเรียนใชเครื่องหมายถูก ( ) เลือกตอบคําถามต4อไปนี้ จากปญหาที่พบ เคยเจอปญหาแนวนี้มาแลว ไม4เคยเจอมาก4อน แนวทางในการแกปญหานี้คือ (ตอบไดมากกว4า 1 ขอ) สุ4มไปเลื่อย ๆ ใชวิธีการเทียบเคียงกับปญหาที่เคยพบ ไล4การทํางานจากซายไปขวาหรือจากบนลงล4างไปจนครบ ใชเหตุผลประกอบการตัดสินใจ


~8~

ปญหาที่ 5 หวาน

ใครเอย

มีเขี้ยว

มีลักยิ้ม

ฟนกระต4าย

ใส4แว4น

สระบุรี

นครปฐม

เขียงใหม4

ภูเก็ต

เก{

กอย

ขวัญ

พิมพ=

...4 หนุ4มแห4งกรุงเทพฯ กําลังจีบสาวที่เจอกันใน hi-5 พวกเธอต4างอยู4กันคนละจังหวัด แลวก็มี เอกลักษณ=เฉพาะตัว จากรูปถ4ายทีส่ าวส4งใหหนุ4มทั้ง 4 บอกไดไหมว4า สาวคนไหนเป'นหวานใจของใครบาง 1.รูปของสาวมีลักยิม้ ส4งมาจากนครปฐม ส4วนหวานใจของไมค=ไม4ไดอยู4ในจังหวัดเชียงใหม4 2.คนที่อyอดชอบชื่อกอย แต4หนุ4มที่ไดรับภาพของพิมพ=ที่ใส4แว4นไม4ใช4เปz 3.เก{ซึ่งเป'นคนจังหวัดสระบุรี ไม4ใช4เจาสาวมีเขี้ยวที่ส4งภาพใหวิน

อyอด วิน ไมค= เปz ใส4เว4น ฟนกระต4าย มีลักยิ้ม มีเขี้ยว ภูเก็ต เขียงใหม4 นครปฐม สระบุรี

ชื่อหนุ4ม

ชื่อสาว

จังหวัด

ตารางคําตอบ เอกลักษณ=ของสาว

อyอด วิน ไมค= เปz

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


~9~

ใบความรูที่ 2.1 เรื่อง กระบวนการแกปญหา โพลยา (Polya 1957:xvi - xvii) กล4าวถึงขั้นตอนการแกปญหาว4า ขั้นที่หนึ่ง ทําความเขาใจปญหา ขั้น ที่สอง วางแผนแกปญหา ขั้นที่สาม ดําเนินการตามแผน ขั้นที่สี่ ตรวจสอบผลเฉลยที่ได ขั้นที่หนึ่ง ทําความเขาใจปญหา ผูแกปญหาตองพิจารณาว4า เรากําลังจะแกปญหาสิ่งใด เช4นถาเป'น ปญหาขอความ ตองพิจารณาว4าโจทย=ตองการใหหาอะไร มีขอมูลอะไรที่จะนํามาใชในการ แกปญหา มีเงื่อนไข หรือขอจํากัดอะไรบาง ขอมูลอะไรที่เกี่ยวของกับการแกปญหานั้น ขอมูลที่ใหมา เพียงพอที่จะแกปญหานั้น หรือไม4 หรือใหขอมูลที่เกินความจําเป'นหรือไม4 หรือมีขอมูลที่ขัดแยงกัน หรือไม4 ขั้นที่สอง วางแผนแกปญหา ผูแกปญหาอาจพิจารณาว4าเคยพบปญหาทํานองเดียวกันนั้นมาก4อน หรือไม4 หรือเคยเห็นปญหาที่คลายๆกันนั้นบางหรือไม4 ผูแกปญหาเห็นความเกี่ยวของในปญหานั้นหรือไม4 รู ทฤษฎีอะไรที่เกี่ยวของที่จะนํามาช4วยในการแกปญหาหรือไม4 พิจารณาสิ่งที่โจทย=ถามหรือตัวไม4ทราบค4า เปรียบเทียบกับปญหาที่คุนเคยที่มีตัวไม4ทราบค4าที่เหมือนๆกันหรือคลายคลึงกัน พิจารณาว4าจะนําปญหาที่ คุนเคยนั้นมาช4วยในการแกปญหาใหม4ไดหรือไม4 หรือจะนําผลที่ไดจากปญหาก4อนๆมาแกปญหาใหม4นี้ไดหรือไม4 ผูแกปญหาจะใชวิธีอะไร แจกแจงสิ่งที่จะสามารถนํามาช4วยแกปญหา ขั้นที่สาม ดําเนินการตามแผน ผูแกปญหาดําเนินการตามแผนที่วางไวโดยเริ่มตรวจสอบแต4ละขั้นของ แผน ปรับปรุงแผนแลวลงมือปฏิบัติจนสามารถหาคําตอบได ขั้นที่สี่ ตรวจสอบผลเฉลยที่ได หรือการมองยอนกลับ กล4าวคือ ผูแกปญหาสามารถตรวจสอบการ ดําเนินการแต4ละขั้นว4าถูกตองหรือไม4 ตรวจสอบผลลัพธ=ว4าถูกตองหรือไม4 ตรวจสอบว4ามีเหตุผลสนับสนุน หรือไม4 ไดรับผลแตกต4างกันหรือไม4 เห็นความคลาดเคลื่อนต4าง ๆ หรือไม4 สามารถใชผลลัพธ=หรือวิธีการนั้นกับ ปญหาอื่นๆไดหรือไม4 วิลสัน(Wilson 1993 : 57-75) กล4าวว4า กระบวนการแกปญหาโดยทั่วไป มักนําเสนอขั้นตอนการ แกปญหาเป'นแบบเชิงเสน ดังนี้ อ4านปญหา อ4านปญหา ทําความเขาใจ พิจารณาปญหา

หรือ

วางแผน

แกปญหา ดําเนินการ ตรวจคําตอบ ตรวจคําตอบ แผนภาพแสดงการแกปญหาแบบเชิงเสน


~ 10 ~ วิลสันมีความเห็นว4ารูปแบบการแกปญหาดังกล4าวมีขอบกพร4อง เนื่องจากเป'นรูปแบบการแกปญหาที่ ตองดําเนินการตามขั้นตอนในลักษณะเชิงเสนเท4านั้น แต4โดยความเป'นจริงในกระบวนการแกปญหาเมื่อผู แกปญหาทําความเขาใจปญหา และวางแผนแกปญหาแลว อาจมีความจําเป'นที่จะตองยอนกลับมาพิจารณา ปญหา ทําความเขาใจกับปญหาใหมากขึ้น หรือเมื่อวางแผนแกปญหาแลว แต4ขณะที่ไดลงมือแกปญหา อาจ พบว4าไม4สามารถจะทําตามแผนไดก็ตองยอนกลับมาวางแผนใหม4อีกครั้ง หรือทําความเขาใจปญหาใหม4 ดังนั้น วิลสัน จึงไดเสนอกระบวนการแกปญหาสี่ขั้นตอนของโพลยา ในลักษณะพลวัตร(dynamic) และแสดงเป'น วัฏจักร (cyclic) ดังภาพประกอบ 2

การสรางปญหาใหม4

เขาใจปญหา

วางแผน

มองยอนกลับ

ดําเนินการแกปญหา

แผนภาพแสดงการแกปญหาแบบพลวัตร ที่มา : http://www3.ipst.ac.th/primary_math/ebook/ploblem_solving/index2.html


~ 11 ~

ใบงานที่ 2.2 เรื่อง วิเคราะหปญหา ชื่อ-นามสกุล ..............................................................................ชั้น...............เลขที่............กลุ4มที่ ............... คําชี้แจง ใหนักเรียนแต4ละกลุ4มศึกษาใบความรูที่ 2.1 แลวช4วยกันวิเคราะห=ปญหาที่พบในใบงานที่ 2.1 เลือก 1 ปญหาที่สมาชิกในกลุ4มคิดว4าประสบความสําเร็จที่สุด จากนั้นเขียนแนวคิดในการแกปญหา ตามกระบวนการแกปญหาในใบความรูที่ 2.1 หมายเหตุ อาจเขียนบรรยายเป'นขอ ๆ หรือจะแสดงในรูปของผังความคิด อย4างใดอย4างหนึ่ง

ปญหาที่เลือกคือปญหาที่ ............ ชื่อปญหา ........................................................................


~ 12 ~

ใบความรูที่ 2.2 เรื่อง เครื่องมือที่ชวยในการเขียนโปรแกรม 1. รูจักการใชงานอิดิเตอรของภาษา C การที่จะเขียนโปรแกรมภาษาซีเป'นตองมีตัวแปลภาษา เพื่อใชในการเปลี่ยนจากภาษาที่เราเขาใจใน รูปแบบของภาษา C เป'นภาษาที่สั่งใหคอมพิวเตอร=ทํางาน ตัวแปลภาษามีมากมายหลายยี่หอ ทั้งเก4าและใหม4 เช4น Turbo C , Borland C++ , Visual C++ 6 , Visual C++NET , ฯลฯ 2. แหลง (Down Load) โปรแกรมและติดตั้งโปรแกรม ในที่นี้ขอแนะนําแหล4ง ดาว=นโหลด โปรแกรม DEV C++ สามารถดาว=นโหลดไดที่ http://www.bloodshed.net/dev/devcpp.html จะปรากฏหนาจอดังรูป

คลิก Download ที่ SourceForge จะไดหนาจอดังรูป

จากนั้นเครื่องจะใหเลือกจัดเก็บไฟล= ดังรูป


~ 13 ~

คลิกเลือก Save สําหรับจัดเก็บลงเครื่องคอมพิวเตอร= หรือคลิกเลือก Run สําหรับติดตั้งโปรแกรม 3. การทดสอบโปรแกรม 1) คลิกเลือก Start -> All Programs -> Bloodshed Dev-C++

2) เริ่มเขียนคําสั่งคลิกเลือก File -> New -> Source File

จะไดหนาต4างสําหรับเขียนคําสั่งดังนี้


~ 14 ~ 3) พิมพ=คําสั่ง ดังตัวอย4างในรูป

ทดสอบการทํางานของโปรแกรม กดปุjม F9 (สําหรับการคอมไพล=และสั่งใหโปรแกรมทํางาน) จะได ผลลัพธ=ดังภาพ

4) บันทึกไฟล=คําสั่ง คลิก File ->Save as ….


~ 15 ~

ใบงานที่ 2.3 เรื่อง ทดสอบใชงาน ชื่อ-สกุล ........................................................................ชั้น............ เลขที่...........กลุ4มที่............. คําชี้แจง

1. ใหนักเรียนทดสอบโปรแกรมดวย editor DEV C/C++ 2. บันทึกผลลัพธ=ที่ได จัดเก็บโปรแกรมลงในโฟลเดอร=ที่กําหนด โดยใชชื่อไฟล= hello.c #include <conio.h> #include <stdio.h> main() { printf(“Hello C”); getch(); }

3. ทดสอบการทํางานของโปรแกรมดวยการกดปุjม F9 บันทึกผลที่ไดจากการ ทํางานของโปรแกรม ………………………………………………………………………………………………………………………………………………………… หมายเหตุ

การตั้งชื่อไฟล=หามซ้ํากับคําสงวน หามใชสัญลักษณ=พิเศษยกเวน ตัวขีดล4าง (_) หามเวนวรรค ส4วนขยายจะตองใช .c

ใบงานที่ 2.4 เรื่อง โปรแกรมสรางชื่อ คําชี้แจง

1. ใหนักเรียนเขียนโปรแกรมและทดสอบโปรแกรมดวย editor Turbo C แลวบันทึกผลลัพธ=ที่ได จัดเก็บโปรแกรมลงในโฟลเดอร=ที่กําหนด โดยใชชื่อไฟล= myname.c 2. ออกแบบผลลัพธ=ไดดังนี้ My name is Phutthawadee Suksintharanon

………………………………………………………………………………………………………………………………………………………… ………………………………………………………………………………………………………………………………………………………… ………………………………………………………………………………………………………………………………………………………… ………………………………………………………………………………………………………………………………………………………… ………………………………………………………………………………………………………………………………………………………… ………………………………………………………………………………………………………………………………………………………… ………………………………………………………………………………………………………………………………………………………… ………………………………………………………………………………………………………………………………………………………… …………………………………………………………………………………………………………………………………………………………


~ 16 ~

ใบงานที่ 2.5 เรื่อง โปรแกรมสรางปWาย ชื่อ-สกุล ........................................................................ชั้น............ เลขที่...........กลุ4มที่............. คําชี้แจง

1. ใหนักเรียนศึกษาใบความรูที่ 2.3 แลวทําใบงานต4อไปนี้ 2. ใหนักเรียนทดสอบโปรแกรมดวย editor DEV C/C++ 3. บันทึกผลลัพธ=ที่ได จัดเก็บโปรแกรมลงในโฟลเดอร=ที่กําหนดโดยใชชื่อไฟล= label1.c #include <conio.h> #include <stdio.h> main() { printf(“============================\n”); printf(“=My name is Phutthawadee Suksintharanon=\n”); printf(“============================\n”); getch(); }

บันทึกผลลัพธ=ที่ได ………………………………………………………………………………………………………………………………………………………… ………………………………………………………………………………………………………………………………………………………… ………………………………………………………………………………………………………………………………………………………… ………………………………………………………………………………………………………………………………………………………… คําถามที่ 1 ถาตัดเครื่องหมาย \n ออกผลลัพธ=จะเป'นอย4างไร เพราะอะไร (เขียนบรรยายไม4เอาผลลัพธ=) ………………………………………………………………………………………………………………………………………………………… ………………………………………………………………………………………………………………………………………………………… ………………………………………………………………………………………………………………………………………………………… คําถามที่ 2 คําสั่ง getch(); มีความสําคัญอย4างไร หากไม4มีคําสั่งนี้ โปรแกรมจะเป'นเช4นไร(เขียนบรรยายไม4 เอาผลลัพธ=) ………………………………………………………………………………………………………………………………………………………… ………………………………………………………………………………………………………………………………………………………… ………………………………………………………………………………………………………………………………………………………… คําถามที่ 3 คําสั่ง printf(); มีความสําคัญอย4างไร หากไม4มีคําสั่งนี้ โปรแกรมจะเป'นเช4นไร(เขียนบรรยายไม4เอา ผลลัพธ=) ………………………………………………………………………………………………………………………………………………………… ………………………………………………………………………………………………………………………………………………………… …………………………………………………………………………………………………………………………………………………………


~ 17 ~

ใบความรูที่ 2.3 เรื่องโครงสรางของภาษา ส4วนสําคัญพื้นฐานที่จําเป'นตองมีในภาษา C เราเรียกส4วนนี้ว4าโครงสราง การทําความเขาใจใน โครงสรางจะทําใหเรารูถึงตําแหน4งการจัดวางส4วนคําสั่งต4าง ๆ ที่สําคัญในการศึกษาต4อไป รูปแบบโครงสราง int main() { … }

main() { หรือ

…. }

เราเรียกส4วนนี้ว4า ฟงก=ชัน (FUNCTION) จะเลือกใชรูปแบบใดก็ได int คือชนิดของของการส4งค4าออกจากโปรแกรม กรณีที่ไม4กําหนด จะหมายถึงไม4มีการส4งค4า หมายเหตุ

โครงสรางที่ยกตัวอย4างมาเป'นเพียงแค4รูปแบบบางส4วนเท4านั้น

เมื่อมีการเรียกใช ฟงก=ชันหรือคําสั่งอื่น จําเป'นตองเขียน #include <ชื่อไลบรารี่.h> ที่จัดเก็บฟงก=ชัน หรือคําสั่งนั้น ๆ ไว ตัวอย4างเช4น ถาจะใชคําสั่ง printf () จะตองใช #include<stdio.h> scanf(), getch(); ฯลฯ จะตองใช #include<conio.h> ตัวอย4างโปรแกรมที่ 1 hello1.c #include <stdio.h> int main() { printf(“Hello C.”); } หมายเหตุ

ผลลัพธ์ทีได้ คือ Hello C.

คําสั่ง printf(); ใชแสดงขอความที่อยู4ในเครื่องหมาย “ ” คําสั่ง getch (); ใชสําหรับใหคอมพิวเตอร=หยุดรับค4าใดๆจากแปzนพิมพ= ใชสําหรับหยุดเพื่อดู ผลการทํางานของโปรแกรมที่กระทําจากคําสั่งส4วนบน


~ 18 ~ ตัวอยางโปรแกรมที่ 2 Hello3.c #include <stdio.h> #include<conio.h> int main() { printf(“Hello C.”); printf(“C is easy”); printf(“I love C”); printf(“Good bye”); getch(); } ตัวอยางโปรแกรมที่ 3 Hello4.c #include <stdio.h> #include<conio.h> void main() { printf(“Hello C.\n”); printf(“C is easy\n”); printf(“I love C\n”); printf(“Good bye”); getch(); }

ผลลัพธ์ทีได้ คือ Hello C.C is easyI love CGood bye

ผลลัพธ์ทีได้ คือ Hello C. C is easy I love C Good bye

จากตัวอย4างโปรแกรมที่ 2 และ 3 เป'นการเปรียบเทียบการใช เครื่องหมาย \n เรียกว4ารหัสขึ้นบรรทัด ใหม4โดยการใชจะตองใส4ไวภายในเครื่องหมาย” ” หมายเหตุ

เมื่อจบคําสั่งทุกคําสั่งจะตองป•ดคําสั่งดวยเครื่องหมาย ; (semicolon)

รหัสคําสั่งควบคุมการแสดงผล เป'นอักขระที่ใชควบคุมการแสดงผลใหเป'นระเบียบมากขึ้น โดยใชอักขระควบคุมการแสดงผลรวมกับ คําสั่ง printf() รหัส \n \t

ความหมาย ขึ้นบรรทัดใหม4 เวนช4องว4างเป'นระยะ 1 แท็บ (6 ตัวอักษร)

รหัส \r \f

ความหมาย กําหนดใหเคอร=เซอร=ไปอยู4ตนบรรทัด เวนช4องว4างเป'นระยะ 1 หนาจอ


~ 19 ~

ใบงานที่ 2.6 เรื่อง ปWายแฟนคลับ ชื่อ-สกุล ........................................................................ชั้น............ เลขที่...........กลุ4มที่............. คําชี้แจง 1. ใหนักเรียนศึกษาใบความรูที่ 2.3 แลวทําใบงานต4อไปนี้ 2. ใหนักเรียนเขียนโปรแกรม แสดงปzายขอความเชียร=แฟนคลับในรายการ The Star โดยใช ตัวอักษรประกอบหลาย ๆ ตัวแสดงเป'นขอความ เช4น

แบบร4าง

เขียนโปรแกรมไดดังนี้ .............................................................................................................................................................................. .............................................................................................................................................................................. .............................................................................................................................................................................. .............................................................................................................................................................................. .............................................................................................................................................................................. .............................................................................................................................................................................. .............................................................................................................................................................................. .............................................................................................................................................................................. .............................................................................................................................................................................. .............................................................................................................................................................................. .............................................................................................................................................................................. .............................................................................................................................................................................. .............................................................................................................................................................................. .............................................................................................................................................................................. .............................................................................................................................................................................. .............................................................................................................................................................................. .............................................................................................................................................................................. จัดเก็บดวยชื่อ the_star.c


~ 20 ~

ใบความรูที่ 2.4 เรื่องเครื่องหมายคอมเมนต (หมายเหตุ) การใส4เครื่องหมาย คอมเมนต=เพื่อแสดงคําอธิบายคําสั่งหรือการทํางานของโปรแกรม เพื่อใหนักเขียน โปรแกรม(Programmer) ที่ตองการพัฒนาโปรแกรมต4อเขาใจโปรแกรมง4ายขึ้น รูปแบบเครื่องหมาย มี 2 รูปแบบดังนี้ รูปแบบที่ 1 // ใชสํารับเขียนขอความ ในจุดที่ตองการแสดงขอความในบรรทัดนั้นส4วนมาจะใช เขียนหลังคําสั่งใน บรรทัดที่ตองการอธิบาย รูปแบบที่ 2 /* ….*/ ใชสําหรับเขียนหรือกําหนดใหยกเลิกการประมวลผลคําสั่งระหว4าง เครื่องหมายสามารถใชเขียนไดหลายบรรทัด ตัวอย4างโปรแกรมที่ 4 // Program test C // Hello5.c #include <stdio.h> #include<conio.h> int main(void) // start function main { clrscr(); printf(“Welcome to C!”); getch(); return 0; } // end function main

ตัวอย4างโปรแกรมที่ 5 /* Program test C Hello5.c */ #include <stdio.h> #include<conio.h> int main(void) /* start function main*/ { clrscr(); printf(“Welcome to C!”); getch(); return 0; } /* end function main*/


~ 21 ~

ใบงานที่ 2.7 เรื่องการเขียนหมายเหตุใหกับโปรแกรม ชื่อ-สกุล ........................................................................ชั้น............ เลขที่...........กลุ4มที่............. คําชี้แจง

1. ใหนักเรียนศึกษาใบความรูที่ 2.4 2. ใหนักเรียนเขียนหมายเหตุใหกับโปรแกรมของใบงานที่ 2.4 เพื่อระบุชื่อผูเขียนโปรแกรม ดานบนของ Code โปรแกรม ดังนี้

//Program Name: hello_p1.c //Date: 3 Dec 2010 // Programmer: Phutthawadee Suksintharanon #include <stdio.h> … 1. Run การทํางานและบันทึกผลลัพธ=ที่ได (เขียนอธิบายลักษณะผลลัพธ=ที่ไดเปรียบเทียบกับงานเดิม) ………………………………………………………………………………………………………………………………………………………… ………………………………………………………………………………………………………………………………………………………… ………………………………………………………………………………………………………………………………………………………… 2.เปลี่ยนการใชเครื่องหมาย // เป'น เครื่องหมาย /* … */ /*Program Name: hello_p1.c Date: 3 Dec 2010 Programmer: Phutthawadee Suksintharanon */ 3. Run การทํางานและบันทึกผลลัพธ=ที่ได (เขียนอธิบายลักษณะผลลัพธ=ที่ไดเปรียบเทียบกับงานเดิม) ………………………………………………………………………………………………………………………………………………………… ………………………………………………………………………………………………………………………………………………………… ………………………………………………………………………………………………………………………………………………………… 4. เครื่องหมาย // กับเครื่องหมาย /* … */ เหมือนหรือแตกต4างกันอย4างไร ………………………………………………………………………………………………………………………………………………………… ………………………………………………………………………………………………………………………………………………………… 5. บอกประโยชน=ของการเขียนหมายเหตุ ………………………………………………………………………………………………………………………………………………………… …………………………………………………………………………………………………………………………………………………………


~ 22 ~

แบบทดสอบหลังเรียนหนวยที่ 2 คําชี้แจง ใหนักเรียนเลือกคําตอบที่ถูกที่สดุ เพียงคําตอบเดียว (กระดาษคําตอบอยูทายเลม) จุดประสงคที่ 1. บอกขั้นตอนการแกปญหาได 1. ขอใดเป'นขั้นตอนการแกปญหาของ โพลยา จ. ทําความเขาใจปญหา วางแผนการแกปญหา ดําเนินการตามแผน ตรวจสอบผล ฉ. อ4านปญหา ทําความเขาใจ วางแผน ดําเนินการ ตรวจคําตอบ ช. ออกแบบ วางแผน จัดการกับปญหา ตรวจสอบปญหา ซ. ไม4มีคําตอบ จุดประสงคที่ 2. แกปญหาที่กําหนดใหได 2. เมื่อพบตัวเลขดังนี้ 1 5 13 29 ......... 125 เติมตัวเลขที่สอดคลองกับ กับตัวเลขที่กําหนดให ข. 32 ข. 46 ค. 61 ง. 108 จุดประสงคที่ 3. ติดตั้งและทดลองใชเครื่องมือที่ชวยในการแกปญหาที่กําหนดใหได 3. โปรแกรมที่กําหนดใหใชในการเขียนโปรแกรมภาษา C คือโปรแกรมใด ข. Turbo C ข. Borland C ค. Dev C++ ง. Microsoft C++ จุดประสงคที่ 4. แปลโปรแกรมใหเป5นภาษาเครื่องได 4. คําสั่งในขอใด เป'นคําสั่งใชแปลโปรแกรม และแสดงผลการทํางาน ข. F10 ข. F9 ค. F8 จุดประสงคที่ 5. บอกโครงสรางของภาษา C 5. ขอใดไม4ใช4โครงภาษา C ก. int main() { ……. } ข. #include<stdio.h> int main() { ……….. }

ง. F4

ค. main() { ….. } ง. #include<stdio.h> { ……….. }


~ 23 ~ จุดประสงคที่ 6. ใชคําสั่งแสดงขอความบนจอภาพได 6. คําสั่งในขอใดใหผลลัพธ=ดังนี้ I like cake. ค. print(“I like cake”); ง. printf(“I like”); printf(“ cake”);

ค. printf(‘I like cake’); ง. print(“I like”); prinf(“ cake”);

7. คําสั่งในขอใดเป'นคําสั่งหยุดเพื่อรอรับ การกดปุjมบนคีย=บอร=ด ข. getch(); ข. main(); ค. #include<stdio.h>

ง. printf();

8. จากโปรแกรมต4อไปนี้ ผลลัพธ=ที่ไดจากการทํางานของโปรแกรม #include<stdio.h> #include<conio.h> main() { printf(“He says,\n”); printf(“ I go to school”); } ค. He says, I go to school ง. โปรแกรมไม4ผ4านการคอมไพล=

ค. He says, I go to school ง. ไม4ปรากฏผลการทํางาน

9. รหัสในขอใดต4อไปนี้ใชสําหรับเวนช4องว4าเป'นจํานวน 8 ตัวอักษร ข. \n ข. \t ค. \0 จุดประสงคที่ 7. ใชคําสั่งหมายเหตุ เพื่อชวยในการอธิบายโปรแกรมได 10. คําสั่งในขอใดเมื่อนําไปแปลคําสั่งใหเป'นภาษาเครื่อง แลวไม4ถูกนําไปแปลคําสั่ง ค. */printf(“aaa”); /* ค. /*main();*/ ง. \\ #include<stdio.h> ง. */printf();*/ -------------------------------------------

ง. \b


~ 24 ~

กระดาษคําตอบ หนวยการเรียนรูที่ 2 แบบทดสอบกอนเรียนและแบบทดสอบหลังเรียน คําชี้แจง ใหนักเรียนเลือกคําตอบที่ถูกตองที่สุดเพียงขอเดียว แบบทดสอบกอนเรียน หนวยการเรียนรูที่ 1 ก ข ค

แบบทดสอบหลังเรียน หนวยการเรียนรูที่ 1 ก ข ค

1

1

2

2

3

3

4

4

5

5

6

6

7

7

8

8

9

9

10

10 คะแนนที่ไดคือ .................................................

คะแนนที่ไดคือ ................................................. .

ลงชื่อ................................................................ผูตรวจ


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.