More Related Content
Similar to งานPblที่2 (20)
งานPblที่2
- 1. ภารกิจ
1. จากสถานการณปญหาที่มีนานุชและเพื่อนพบในขณะนี้มีสาเหตุมาจากสิ่งใด มีนานุชจะตอง
แกปญหานี้อยางไร (1 คะแนน)
2. จากสถานการณนี้ สิ่งที่มีนานุชควรรูเกี่ยวกับโครงสรางของโปรแกรมภาษาซี มีองคประกอบที่
สําคัญอะไรบางและวิธีการเขียนคอมเมนต(Comment) มีกประเภท มีวิธีเขียนอยางไร
ี่ (1
คะแนน)
3. มีนานุชควรสืบคนตัวอยางโปรแกรมภาษาซีจากเว็บไซตใด และมีรายละเอียดของตัวอยาง
โปรแกรมภาษาซีเปนอยางไร (1 คะแนน)
4. นักเรียนชวยอธิบายโปรแกรมทีละบรรทัดดวยวา โปรแกรมที่สืบคนมานั้นเปนสวนประกอบใด
ของโครงสรางภาษาซี โดยใชคอมเมนต(Comment) ในการเขียนคําอธิบาย (2 คะแนน)
- 2. แบบบันทึกการศึกษาคนควาและการแกปญหา
โจทยปญหา PBL เรื่อง โครงสรางของโปรแกรมภาษาซี
รายวิชาการเขียนโปรแกรมภาษาซีเบื้องตน ง30201 ระดับชั้นมัธยมศึกษาปที่ 4
สมาชิกในกลุม
1. นายศุภสวัสดิ์.............เสตพันธ.............. เลขที่ ......4..............
2. นางสาวกมลวรรณ.....เทียมทัด............. เลขที่ ......20.............
ตอนที่ 1
หัวขอปญหา -โครงสรางของโปรแกรมภาษาซี
ทําความเขาใจปญหา -ศึกษาขอมูลจากสถานการณ
- สิ่งที่ตองการรู -โครงสรางของโปรแกรมภาษาซี
- วิธีการหาคําตอบ -สืบคนขอมูลจากแหลงขอมูล/อางอิง
การศึกษาคนควา / แกปญหา
ชื่อสมาชิก การแบงหนาที่ แหลงขอมูล/อางอิง
นายศุภสวัสดิ์ เสตพันธ พิมพงาน -
น.ส.กมลวรรณ เทียมทัด สืบคนขอมูล http://itd.htc.ac.th/st_it50/it5016/nidz/Web_C/unit2
.html
ตอนที่ 2 สรุปผลการศึกษาคนควา / แกปญหาตามภารกิจ
2.จากสถานการณนี้ สิ่งที่มีนานุชควรรูเกี่ยวกับโครงสรางของโปรแกรมภาษาซี มีองคประกอบที่
สําคัญอะไรบางและวิธีการเขียนคอมเมนต(Comment) มีกี่ประเภท มีวิธีเขียนอยางไร
(1 คะแนน)
ตอบ 1. สวนหัวของโปรแกรม
สวนหัวของโปรแกรมนี้เรียกวา Preprocessing Directive ใชระบุเพื่อบอกใหคอมไพเลอรกระทํา
การใด ๆกอนการแปลผลโปรแกรมในที่นี่คําสั่ง #include <stdio.h>ใชบอกกับคอมไพเลอรใหนําเฮด
- 3. เดอรไฟลที่ระบุคือ stdio.hเขารวมในการแปลโปรแกรมดวย โดยการกําหนด preprocessing directives
นี้จะตองขึ้นตนดวยเครื่องหมาย # เสมอ
คําสั่งที่ใชระบุใหคอมไพเลอรนําเฮดเดอรไฟลเขารวมในการแปลโปรแกรมสามารถเขียนได 2
รูปแบบ คือ
- #include <ชื่อเฮดเดอรไฟล>คอมไพเลอรจะทําการคนหาเฮดเดอรไฟลที่ระบุจากไดเรกทอรีที่
ใชสําหรับเก็บเฮดเดอรไฟลโดยเฉพาะ( ปกติคือไดเรกทอรีชื่อinclude)
- #include “ ชื่อเฮดเดอรไฟล” คอมไพเลอรจะทําการคนหาเฮดเดอรไฟที่ระบุ จากไดเร็คทอรี
เดียวกันกับไฟล source code นั้น แตถาไมพบก็จะไปคนหาไดเร็คทอรีที่ใชเก็บ เฮดเดอรไฟลโดยเฉพาะ
2. สวนของฟงกชั่นหลัก
ฟงกชั่นหลักของภาษาซี คือ ฟงกชั่น main( ) ซึ่งโปรแกรมภาษาซีทุกโปรแกรมจะตองมีฟงกชั่น
นี้อยูในโปรแกรมเสมอจะเห็นไดจากชื่อฟงกชั่นคือ main แปลวา “ หลัก ” ดังนั้นการเขียนโปรแกรม
ภาษซีจึงขาดฟงกชั่นนี้ไปไมไดโดยขอบเขตของฟงกชั่นจะถูกกําหนดดวยเครื่องหมาย { และ } กลาวคือ
การทํางานของฟงกชั่นจะเริ่มตนที่เครื่องหมาย { และจะสินสุดที่เครื่องหมาย } ฟงกชั่น main( ) สามารถ
้
เขียนในรูปแบบของ void main(void) ก็ไดมีความหมายเหมือนกัน คือ หมายความวา ฟงกชั่น main() จะ
ไมมีอารกิวเมนต (argument) คือไมมีการรับคาใด ๆ เขามาประมวลผลภายในฟงกชั่นและจะไมมีการคืน
คาใด ๆ กลับออกไปจากฟงกชั่นดวย
3. สวนรายละเอียดของโปรแกรม
เปนสวนของการเขียนคําสั่ง เพื่อใหโปรแกรมทํางานตามที่ไดออกแบบไว
คอมเมนตในภาษาซี
คอมเมนต(comment)คือสวนที่เปนหมายเหตุของโปรแกรมมีไวเพื่อใหผูเขียนโปรแกรมใส
ขอความอธิบายกํากับลงไปใน source code ซึ่งคอมไพเลอรจะขามาการแปลผลในสวนที่เปนคอมเมนต
นี้ คอมเมนตในภาษาซีมี2แบบคือ
• คอมเมนตแบบบรรทัดเดียว ใชเครื่องหมาย //
• คอมเมนตแบบหลายบรรทัด ใชเครื่องหมาย /* และ */
- 4. 3.มีนานุชควรสืบคนตัวอยางโปรแกรมภาษาซีจากเว็บไซตใด และมีรายละเอียดของตัวอยาง
โปรแกรมภาษาซีเปนอยางไร (1 คะแนน)
ตอบ ปจจุบันโลกมีความกาวหนาดานวิทยาศาสตรและเทคโนโลยีมากขึ้น ทําใหมีตัวเลือกในการ
คนหาความรูที่หลากหลาย แลวแตวามีนานุชมีความตองการที่จะคนหาโปรแกรมภาษาซีแบบใด ใน
https://sites.google.com/site/panussites/phasa-c-1 ที่มีการจัดระเบียบโปรแกรมภาษาซีเกี่ยวกับการ
คํานวณแบบตางๆไว เชน ตัวอยางโปรแกรมเปลี่ยนเลขฐาน 16 ดังนี้
#include<stdio.h>----------------------------------------------------เปนสวนหัวของโปรแกรม
#include<conio.h>---------------------------------------------------เปนสวนหัวของโปรแกรม
main()-----------------------------------------------------จุดเริ่มตนการทํางานของโปรแกรม
{-----------------------------------------------------------จุดเริ่มตนขอบเขตของการทํางาน
int x1,x2,x3,sum;-----------------------------------------ประกาศตัวแปร
printf("Enter X1 = : ");----------------------------------แสดงขอความรับคาตัวแปรที่1
scanf("%d",&x1);----------------------------------------รับคาตัวแปรที่1
printf("Enter X2 = : ");----------------------------------แสดงขอความรับคาตัวแปรที่2
scanf("%d",&x2);----------------------------------------รับคาตัวแปรที่2
printf("Enter X3 = : ");----------------------------------แสดงขอความรับคาตัวแปรที่3
scanf("%d",&x3);----------------------------------------รับคาตัวแปรที่3
sum=x1+x2+x3;------------------------------------------ประมวลผล
mean=sum/3;---------------------------------------------ประมวลผล
printf("Mean = %d ",mean);----------------------------แสดงผลลัพธ
getch();----------------------------------------------------ตัวแสดงโปรแกรม
}---------------------------------------------------------------จุดสิ้นสุดขอบเขตของการทํางาน
- 5. 4.เรียนชวยอธิบายโปรแกรมทีละบรรทัดดวยวา โปรแกรมที่สืบคนมานั้นเปนสวนประกอบใด
ของโครงสรางภาษาซี โดยใชคอมเมนต(Comment) ในการเขียนคําอธิบาย (2 คะแนน)
#include<stdio.h> /*
#include<conio.h> เปนสวนหัวของโปรแกรม*/
main() //สวนฟงกชันหลัก
{ /*เริ่มตนโปรแกรมดวยเครื่องหมายปกกาเปด
int x1,x2,x3,sum; /*
printf("Enter X1 = : ");
scanf("%d",&x1);
printf("Enter X2 = : ");
scanf("%d",&x2);
printf("Enter X3 = : ");
scanf("%d",&x3);
sum=x1+x2+x3;
mean=sum/3;
printf("Mean = %d ",mean);
getch(); รายละเอียดของโปรแกรม */
} จบการเขียนโปรแกรมดวยเครื่องหมายปกกาปด*/
เกณฑการใหคะแนน
คะแนนรวมไดระหวาง 5 คะแนน หมายถึง ดีมาก
คะแนนรวมไดระหวาง 3-4 คะแนน หมายถึง ดี
คะแนนรวมไดระหวาง 1-2 คะแนน หมายถึง ปานกลาง
คะแนนรวมไดระหวาง 0 คะแนน หมายถึง ควรปรับปรุง