ก่อนเฉลย... กรุณาอ่านแบบฝึกหัดเพิ่มเติมก่อน
ประกาศจากเว็บไซด์วิทยาการคอมพิวเตอร์
สำหรับโรงเรียนตากพิทยาคม http://tps.comsci.info )
วันที่ 2 มกราคม 2552 เวลา 15.04
แบบฝึกหัดของโรงเรียนตากพิทยาคม
-
02/01/2552 แบบฝึกหัดเพิ่มเติมที่ 2 จงหาพื้นที่สามเหลี่ยมมุมฉากพร้อมทั้งวิเคราะห์ผลลัพธ์หลักหน่วยว่า
เป็นจำนวนคู่หรือจำนวนคี่
(แบบฝึกหัดระดับพื้นฐาน เฉลยวันที่ 5 มกราคม 2552)
-
02/01/2552 แบบฝึกหัดเพิ่มเติมที่ 3 จงวิเคราะห์หาค่า pH ของสารละลายเต่างๆ ทางเคมี พร้อมทั้งทำให้ผลลัพธ์
เป็นค่าสัมบูรณ์หรือ absolute value เท่านั้น (แบบฝึกหัดระดับมัธยมศึกษา
เฉลยภายในเดือนกุมภาพันธ์ 2552)
หมายเหตุ
แนวข้อสอบกลางภาคมาจากแบบฝึกหัดระดับพื้นฐาน และแนวข้อสอบปลายภาคมาจาก แบบฝึกหัดระดับมัธยมศึกษา
แนวข้อสอบปลายภาค
-
02/01/2552 เฉลยข้อสอบภาคปฏิบัติปลายภาค
ปีการศึกษา 2550 (เฉลยภายในเดือนกุมภาพันธ์ ปี 2552)
แนวข้อสอบ O-Net ของวิชาการเขียนโปรแกรม
1 - 2 เพื่อเตรียมสอบเข้ามหาวิทยาลัย
-
02/01/2552
อยู่ระหว่างการเตรียมข้อมูล..
รวบรวมแบบฝึกหัดระดับมัธยมศึกษาจากโรงเรียนต่างๆ
ทั่วประเทศไทย
- 02/01/2552
จงคำนวณค่าแรงของของพนักงานคนหนึ่งในโรงงานแห่งหนึ่ง
โดยค่าแรงได้จากอัตราค่าแรง คูณด้วยชั่วโมง และหักภาษี 10% ได้ค่าแรงสุทธิ
(แบบฝึกหัดจากโรงเรียนสามัคคีวิทยาคม จังหวัดเชียงราย
เฉลยเฉพาะวิเคราะห์ปัญหาและอัลกอริทึ่ม
วันที่ 4 มกราคม 2552)
- 02/01/2552
จงวิเคราะห์ปัญหา เขียนผังงาน และเขียนโปรแกรม ในการคำนวณค่าตอบแทนในการ
เขียนโปรแกรมให้บริษัทแห่งหนึ่ง
โดยคิดค่าแรงจากจำนวนชั่วโมงการทำงาน คูณ อัตราค่าแรง และบวกค่าภาษีอีก 10% ของค่าแรง และมีเงื่อนไขว่า ถ้าจำนวนชั่วโมงการทำงานมากกว่า 10 ชั่วโมง ให้คิดอัตราค่าแรงของจำนวนชั่วโมงที่เกินเป็นสองเท่า
ของอัตราค่าแรงปกติ โดยให้รับข้อมูลผ่านแป้นพิมพ์และเมื่อคำนวณเสร็จ
ให้แสดงผลลัพธ์ทางจอภาพ (คำนวณได้ครั้งละ 1 คน) ดังนี้
Pay
for programming
Hour
=
..
Rate
=
..
Tax
=
.
Total
pay =
..
(ที่มา URL : http://www.samakkhi.ac.th/Vcp/vcp/n11/freetest11.doc
)
(แบบฝึกหัดจากโรงเรียนสามัคคีวิทยาคม จังหวัดเชียงราย
เฉลยภายในเดือนกุมภาพันธ์ ปีพ.ศ. 2552)
เฉลยแบบฝึกหัดภาคทฤษฎีก่อนสอบกลางภาค
วิชาการเขียนโปรแกรม
2 ภาคเรียนที่
2 ปีการศึกษา
2551 โรงเรียนตากพิทยาคม
(เฉลยวันที่ 1 มกราคม 2551 เวลา 21.20 น.
จัดทำโดยครูวัชระ วงษ์ดี
อ้างอิงจากเว็บไซด์วิทยาการคอมพิวเตอร์
สำหรับโรงเรียนตากพิทยาคม http://tps.comsci.info )
จุดประสงค์ที่ 1
มีความรู้ทั่วไปเกี่ยวกับการสร้างและพัฒนาโปรแกรมประยุกต์
1. องค์ประกอบของระบบคอมพิวเตอร์
มีอะไรบ้าง
1.1 ฮาร์ดแวร์
( Hardware ) 1.2
ซอฟแวร์ (Software)
1.3 บุคลากร
( Peopleware ) 1.4
ข้อมูลและสารสนเทศ ( Data and Information )
1.5 กระบวนการทำงาน
( Procedure )
2. จากองค์ประกอบของระบบคอมพิวเตอร์
เรื่อง ซอฟแวร์
มีองค์ประกอบย่อยอะไรบ้าง
พร้อมยกตัวอย่างโปรแกรมด้วย
2.1 ซอฟต์แวร์ระบบ ( System
Software )
2.1.1 โปรแกรมระบบปฏิบัติการ
( OS : Operating System ) เช่น Windows , Unix , Linux , Mac OS , Symbian เป็นต้น
2.1.2
ตัวแปลภาษา (Translator) เช่น โปรแกรมแปลภาษาซี , Java ,
Pascal , Visual Basic เป็นต้น
2.1.3
ยูทิลิตี้หรือโปรแกรมอรรถประโยชน์(Utility Program) เช่น Scandisk , Scan virus , Winzip เป็นต้น
2.1.4
ติดตั้งและปรับปรุงระบบ
(Diagonostic Program) เช่น Setup Microsoft Office , Driver Printer ฯลฯ
2.2 ซอฟต์แวร์ประยุกต์ (Application
Software)
2.2.1 ซอฟต์แวร์สำหรับงานเฉพาะด้าน (Special Purpose
Software)
2.2.2 ซอฟต์แวร์สำหรับงานทั่วไป (General Purpose Software)
( ศึกษาจากใบความรู้บทที่ 1
องค์ประกอบของระบบคอมพิวเตอร์
ของภาคเรียนที่ 1)
3. ซอฟต์แวร์สำหรับงานเฉพาะด้านแตกต่างจากซอฟต์แวร์สำหรับงานทั่วไปอย่างไร
ลำดับที่ |
คุณสมบัติของซอฟต์แวร์ |
ซอฟต์แวร์สำหรับ งานเฉพาะด้าน |
ซอฟต์แวร์สำหรับงานทั่วไป |
0. |
เขียนขึ้นเพื่อการทำงานเฉพาะอย่าง |
P |
û |
1. |
ประหยัดเวลา
แรงงาน และค่าใช้จ่ายในการเขียนโปรแกรม |
û |
P |
2. |
ตรงกับความต้องการของผู้ใช้ทุกประการ |
P |
û |
3. |
การดัดแปลงแก้ไขเพิ่มเติม
(Modifications) |
P |
û |
4. |
ต้องการบุคลากรที่มีความชำนาญเป็นพิเศษในการเขียนโปรแกรม |
P |
û |
5. |
เพื่อใช้ในการทำงานประเภทต่างๆ
ทั่วไป โดยผู้ใช้คนอื่นๆ สามารถนำโปรแกรมนี้ไปประยุกต์ใช้กับข้อมูลของตน |
û |
P |
4. จงยกตัวอย่างซอฟต์แวร์สำหรับงานเฉพาะด้านและซอฟต์แวร์สำหรับงานทั่วไป มา 3 ตัวอย่าง
โดยห้ามซ้ำกับเอกสารใบความรู้บทที่ 1
องค์ประกอบของระบบคอมพิวเตอร์
ของภาคเรียนที่ 1
และภาคเรียนที่ 2
ด้วย
ลำดับที่ |
ซอฟต์แวร์สำหรับงานเฉพาะด้าน |
ซอฟต์แวร์สำหรับงานทั่วไป |
0 |
โปรแกรมระบบเช่าซื้อ |
Microsoft Office เช่น
Word Excel ฯลฯ |
1. |
โปรแกรมวินิจฉัยโรคไข้หวัดใหญ่ |
Adobe Flash |
2. |
โปรแกรมแสดงผลการเรียน
ของ ร.ร. ตากพิทยาคม |
Macromedia Authorware |
3. |
โปรแกรมจัดเก็บภาษีที่ดิน
สำหรับองค์การปกครองส่วนท้องถิ่น |
โปรแกรมฝึกพิมพ์ภาษาไทยสำเร็จรูป |
5. จงอธิบายความหมายของคำว่า การเขียนโปรแกรมคอมพิวเตอร์โดยใช้โปรแกรมแปลภาษาซี
ดังต่อไปนี้
( ศึกษาจากใบความรู้บทที่2 เรื่อง ความรู้เบื้องต้นเกี่ยวกับการเขียนโปรแกรมคอมพิวเตอร์ ของภาคเรียนที่ 1)
ถ้าต้องการทราบเฉลย...
ให้นักเรียนสามารถดูเฉลยได้ที่เว็บไซด์วิทยาการคอมพิวเตอร์ สำหรับโรงเรียนตากพิทยาคม ดังนี้
http://tps.comsci.info
-->วิชาการเขียนโปรแกรมคอมพิวเตอร์ -->วิชาการเขียนโปรแกรม
1 -->
เผยแพร่เนื้อหาวิชาการหรือเอกสารประกอบการเรียน --> เนื้อหาบทที่ 2 ความรู้เบื้องต้นเกี่ยวกับการเขียนโปรแกรมคอมพิวเตอร์
6. ให้นักเรียนเขียนและอธิบายขั้นตอนการสร้างและพัฒนาโปรแกรมทั้งหมด 5 ขั้นตอนโดยเติมคำดังนี้
( ศึกษาจากใบความรู้บทที่2 เรื่อง ความรู้เบื้องต้นเกี่ยวกับการเขียนโปรแกรมคอมพิวเตอร์ ของภาคเรียนที่ 1)
ถ้าต้องการทราบเฉลย...
ให้นักเรียนสามารถดูเฉลยได้ที่เว็บไซด์วิทยาการคอมพิวเตอร์ สำหรับโรงเรียนตากพิทยาคม ดังนี้
http://tps.comsci.info
-->วิชาการเขียนโปรแกรมคอมพิวเตอร์ -->วิชาการเขียนโปรแกรม
1 -->
เผยแพร่เนื้อหาวิชาการหรือเอกสารประกอบการเรียน --> เนื้อหาบทที่ 2 ความรู้เบื้องต้นเกี่ยวกับการเขียนโปรแกรมคอมพิวเตอร์
จุดประสงค์ที่ 2. มีความรู้ความสามารถในการวิเคราะห์และออกแบบระบบในระดับภาพรวมและระดับย่อย
7. ให้นักเรียนศึกษาจากใบความรู้บทที่
3 เรื่อง การวิเคราะห์และออกแบบระบบในระดับภาพรวม ของภาคเรียนที่ 1 เรื่อง
System
Analysis and Design in Context
Diagram level แล้วทำแบบฝึกหัดทดสอบความรู้เชิงจิตวิทยา ที่สร้างจากโปรแกรม Macromedia Authorware 7.0
ถ้าต้องการทราบเฉลย...
ให้นักเรียนสามารถดาวน์โหลดได้ที่เว็บไซด์วิทยาการคอมพิวเตอร์ สำหรับโรงเรียนตากพิทยาคม ดังนี้
http://tps.comsci.info -->วิชาการเขียนโปรแกรมคอมพิวเตอร์ -->วิชาการเขียนโปรแกรม
2 -->หัวข้อดาวน์โหลด (Download)
8. ให้นักเรียนศึกษาหนังสือเรียนภาษาซีบทที่
2 และใบความรู้สรุปจากหนังสือภาษาซีหน้าที่
3 แล้วทำแบบฝึกหัดบทที่ 2
8.1 แบบฝึกหัดบทที่ 2 จงพิจารณาผลลัพธ์ของโปรแกรมแสดงปีโดยรับข้อมูลจากคีย์บอร์ด
โดยให้แสดงตัวเลขตามรหัสรูปแบบข้อมูล (Format code ) แล้วนำไปเขียน Source
Code ในช่องว่างดังนี้
ผลลัพธ์เมื่อแสดงบนจอภาพ
Please
input year : 2551
Show
year =
เฉลยการลงรหัสโปรแกรมหรือเขียน
Source
Code
#include
<stdio.h>
void
main( )
{ int year ;
printf(Please input year : );
scanf(%d, &year );
printf(Show year = \%d\ , year );
}
9. ให้นักเรียนศึกษาหนังสือเรียนภาษาซี
บทที่ 3 เรื่องโครงสร้างควบคุม แล้วตอบคำถามดังนี้
9.1 ให้เขียนผังงานของคำสั่ง if , if lese และ if else if หรือ if
else เชิงซ้อน
ถ้าต้องการทราบเฉลย... ให้อ่านจากหนังสือเรียนภาษาซี
บทที่ 3 โครงสร้างควบคุม ในหัวข้อโครงสร้างควบคุมแบบทางเลือก
ของรูปแบบคำสั่งและผังงานของคำสั่งดังนี้
1) โครงสร้างผังงานของคำสั่ง
if (หนังสือเรียนภาษาซี หน้าที่ 38)
2) โครงสร้างผังงานของคำสั่ง
if else (หนังสือเรียนภาษาซี หน้าที่ 39)
3) โครงสร้างผังงานของคำสั่ง
if else if หรือ if else เชิงซ้อน
(หนังสือเรียนภาษาซี หน้าที่ 43)
คำแนะนำ
!
เพื่อเสริมทักษะและประสบการณ์การเขียนโปรแกรมให้มากขึ้นแนะนำให้ทำแบบฝึกหัดเพิ่มเติมที่
เว็บไซด์วิทยาการคอมพิวเตอร์
สำหรับโรงเรียนตากพิทยาคม
ดังนี้
http://tps.comsci.info
-->วิชาการเขียนโปรแกรมคอมพิวเตอร์
-->วิชาการเขียนโปรแกรม 2 --> หัวข้อแบบฝึกหัด
คำอวยพร ในวันปีใหม่ 2552
สำหรับนักเรียนที่ขยันตั้งใจเรียนหมั่นฝึกฝนวิชาเขียนโปรแกรม
1 - 2
ขอให้ประสบความสำเร็จในการเรียนทุกวิชา การสอบเข้าสถาบันอุดมศึกษาต่างๆ
และสามารถแก้ปัญหาฝ่าฟันอุปสรรคชีวิตในทุกๆด้านได้ด้วยดี เทอญ...
โดยครูวัชระ วงษ์ดี
แบบฝึกหัดภาคปฏิบัติก่อนสอบกลางภาค ( ทดสอบการคิดวิเคราะห์
การแก้ปัญหา)
วิชาการเขียนโปรแกรม
2 ภาคเรียนที่
2 ปีการศึกษา
2551
( คำเตือน ! การดูเฉลยก่อนลงมือทำแบบฝึกหัด จะทำให้นักเรียนขาดทักษะและประสบการณ์ด้าน
การเขียนโปรแกรม
โดยเฉพาะในเชิงคิดวิเคราะห์ ซึ่งทำให้การพัฒนาสติปัญญาในการแก้ปัญหาไม่เต็มที่
โปรดซื่อสัตย์ทำด้วยตนเองและตรวจสอบคำตอบเอง
และขอย้ำว่าไม่ควรนำแบบฝึกหัดภาคปฏิบัตินี้
ไปใช้ในการท่องจำเป็นหลัก เพราะการเขียนโปรแกรมภาคปฏิบัติ ต้องใช้ความเข้าใจ การคิดวิเคราะห์สูงมาก)
โดย ครูวัชระ วงษ์ดี ครูประจำวิชาการเขียนโปรแกรม 1 - 2
จุดประสงค์ที่
11 สามารถนำความรู้ความสามารถในการทำชิ้นงานเขียนโปรแกรมคอมพิวเตอร์ เพื่อประยุกต์ใช้งาน
คำสั่ง
ให้นักเรียนศึกษาหนังสือเรียนภาษาซีและเอกสารใบความรู้ต่างๆ
ทั้งหมดของภาคเรียนที่ 1 แล้วพิจารณาโจทย์ปัญหาของโปรแกรมดังนี้ และให้นักเรียนเขียน SA1 , SA2
, ออกแบบจอภาพ , วิเคราะห์ปัญหา
(โดยกำหนดตัวแปร) , เขียนอัลกอริทึ่ม , เขียนโฟล์วชาร์ต , เขียน Source Code ภาษาซี
โจทย์ปัญหา
ผู้ใช้งานต้องการสร้างโปรแกรมพื้นที่สี่เหลี่ยมผืนผ้า และต้องการให้โปรแกรมสามารถวิเคราะห์การป้อนความกว้าง ว่าเป็นเลขจำนวนเต็มบวกหรือไม่ เช่น
ถ้าพบว่าเป็นเลขจำนวนเต็มบวกจริง
ให้แสดงข้อความว่า is positive integer
ถ้าไม่เป็นเลขจำนวนเต็มบวก ให้แสดงข้อความว่า Is
not positive integer เป็นต้น
1. การวิเคราะห์และออกแบบระบบในระดับภาพรวม ( SA1 :
Context Diagram )
ข้อสังเกต โดยทั่วไป
ถ้าระบบมีการทดสอบเงื่อนไขเพียง 1 เงื่อนไขและมีทางเลือกเพียง
2 คำตอบ ควรใช้คำว่า
เปรียบเทียบ
ถ้าหากระบบมีการทดสอบเงื่อนไขตั้งแต่ 2 เงื่อนไขและมีทางเลือกตั้งแต่
3 คำตอบขึ้นไป ควรใช้คำว่าวิเคราะห์
และถ้าหากระบบมีการทดสอบเงื่อนไข 1 หรือตั้งแต่
2 เงื่อนไขขึ้นไป ซ้ำๆ จนกว่าเป็นจริงหรือเท็จ ควรใช้คำว่า ตรวจสอบ
หมายเหตุ บางครั้งโจทย์อาจลวงให้มีการวิเคราะห์
แต่ถ้าพบว่าระบบมีการทดสอบเพียง 1 เงื่อนไข ควรใช้ เปรียบเทียบ
2. การวิเคราะห์และออกแบบระบบในระดับย่อย ซึ่งกำหนดให้เขียนไม่เกิน 2 Process ( SA2 :
Level 0 )
( คำเตือน
! ไม่ควรดูเฉลยก่อนลงมือทำแบบฝึกหัด จะทำให้ขาดทักษะด้านการคิดวิเคราะห์
แก้ปัญหา ฯลฯ )
3. ออกแบบจอภาพ
3.1 ออกแบบจอภาพ Level 0
> Process 1
Program :
Seek rectangle area
input
width = 3
result
of width comparison is positive integer
3.2 ออกแบบจอภาพ Level 0
> Process 2
input
length = 8
result of
Rectangle area =
24
4. วิเคราะห์ปัญหา
4.1 กำหนดตัวแปร
ลำ ดับ ที่ |
ความ สัมพันธ์ของ Process |
รายการข้อมูลนำเข้าหรือข้อมูลสารสนเทศ (ชื่อ Data Flow ของ SA2 ) |
ตั้งชื่อตัวแปร (ภาษาอังกฤษ) |
ชนิดตัวแปร (ตัวเลข...., อักขระ ,ข้อความ) |
ขนาดข้อมูล
(ขนาดไม่เกินกี่หลักหรือกี่ตัวอักขระ) |
ตัวอย่างข้อมูล (มาจากออกแบบจอภาพ) |
1. |
1 |
ความกว้าง |
width |
ตัวเลขจำนวนเต็ม |
2 หลัก |
3 |
2. |
1 , 2 |
ความกว้างที่เปรียบเทียบกับเลข
0 แล้ว |
width |
ตัวเลขจำนวนเต็ม |
2 หลัก |
3 |
3. |
1 |
ผลการเปรียบเทียบความกว้างว่าเป็นจำนวนเต็มบวกหรือไม่ |
compare |
ข้อความ |
25 ตัวอักษร |
is
positive integer |
4. |
2 |
ความยาว |
length |
ตัวเลขจำนวนเต็ม |
2 หลัก |
8 |
5. |
2 |
ผลลัพธ์พื้นที่สี่เหลี่ยมผืนผ้า |
rectangle_area |
ตัวเลขจำนวนเต็ม |
4 หลัก |
24 |
ข้อควรระวัง ! ในลำดับตัวแปรที่ 2 ถ้าซ้ำกับความลำดับตัวแปรที่
1 เมื่อนำไปเขียนอัลกอริทึ่มและโฟล์วชาร์ต ทุก Process ต้องใช้เพียงตัวแปรเดียวเท่านั้น มิเช่นนั้นโปรแกรมจะ Error
( คำเตือน
! ไม่ควรดูเฉลยก่อนลงมือทำแบบฝึกหัด จะทำให้ขาดทักษะด้านการคิดวิเคราะห์
แก้ปัญหา ฯลฯ )
จุดประสงค์ที่
9 สามารถแปลงอัลกอริทึ่มหรือโฟล์วชาร์ตให้เป็นภาษาซี
คำชี้แจง ให้นักเรียนนำ SA และวิเคราะห์ปัญหาที่ได้มาเขียนเป็นอัลกอริทึ่มด้านซ้ายและโฟล์วชาร์ตด้านขวาของกระดาษแผ่นนี้
5.1 อัลกอริทึ่ม Level 0 > Process 1 6.1 โฟล์วชาร์ต Level 0 > Process 1
Start
1. เริ่มการทำงานของโปรแกรม
width = 0 , compare =
2. กำหนดตัวแปรเริ่มต้น width = 0 , compare =
3. แสดงข้อความว่า Program :
Seek rectangle area
Display Program
: Seek rectangle area
4. แสดงข้อความว่า input
width =
5. รับข้อมูลความกว้างแล้วเก็บที่ตัวแปร width
Display input width
=
6. เปรียบเทียบความกว้างว่ามากกว่าเลข
0 หรือไม่
Input width
6.1 ถ้าเป็นจริง ให้นำข้อความ is positive
integer
มาเก็บที่ตัวแปร compare แล้วไปทำงานข้อที่ 7
False True width > 0
6.2 ถ้าเป็นเท็จ ให้นำข้อความ is not positive
integer
มาเก็บที่ตัวแปร
compare แล้วไปทำงานข้อที่ 7
compare = is positive integer compare = is not positive integer
7. แสดงข้อความว่า result of width comparison
8. นำค่าจากตัวแปร compare มาแสดงผล
9. จบการทำงาน
5.2 อัลกอริทึ่ม Level 0 > Process 2 6.2 โฟล์วชาร์ต Level 0 > Process 2
1. เริ่มการทำงานของโปรแกรม
2. กำหนดตัวแปรเริ่มต้น length = 0 , rectangle_area = 0
3. แสดงข้อความว่า input
length =
4. รับข้อมูลความยาวแล้วเก็บที่ตัวแปร length
5. คำนวณหาพื้นที่สี่เหลี่ยมผืนผ้า
โดยนำค่าจากตัวแปร length คูณ
width
แล้วเก็บผลลัพธ์ที่ตัวแปร rectangle_area
6. แสดงข้อความว่า result of
Rectangle area =
7. นำค่าจากตัวแปร rectangle_area มาแสดงผล
8. จบการทำงาน
เพื่อความถูกต้องและชัดเจน ท่านสามารถคลิกดาวน์โหลดต้นฉบับของเอกสารเฉลยแบบฝึกหัดที่นี่
( URL : http://tps.comsci.info/programming/ex1_mid2_2551.doc )
(
คำเตือน ! ไม่ควรดูเฉลยก่อนลงมือทำแบบฝึกหัด จะทำให้ขาดทักษะด้านการคิดวิเคราะห์
แก้ปัญหา ฯลฯ )
จุดประสงค์ที่
9 สามารถแปลงอัลกอริทึ่มหรือโฟล์วชาร์ตให้เป็นภาษาซี
ให้นักเรียนนำอัลกอริทึ่มหรือโฟล์วชาร์ตมาแปลงให้เป็น
Source Code ภาษาซี
หมายเหตุ
การเขียนโฟล์วชาร์ตด้านขวาของหน้านี้
จุดประสงค์เพื่อให้เห็นวิธีการแปลงโฟล์วชาร์ตให้เป็น Source Code ภาษาซีเท่านั้น ดังนั้น
ไม่จำเป็นต้องเขียนซ้ำตอนสอบอีก
เพราะจะทำให้เสียเวลา
ยกเว้นกรณีเหลือเวลาในการสอบนาน
#include
<stdio.h>
#include
<conio.h>
Start Program
#include <string.h>
width = 0 , compare =
void main(void)
{ // ------- Source Code of Level 0 , Process 1 ---------
Display Program
: Seek rectangle area
int width = 0 ; char compare[25] = ;
printf(Program :
Seek rectangle area \n);
Display input width
=
printf(input width = );
scanf(%d , &width
);
compare = is not positive integer
if ( width > 0 )
compare = is positive integer
{ strcpy (compare , is
positive integer); }
else
{ strcpy (compare , is not
positive integer); }
Display compare
printf(result of width comparison %s , compare );
//
------- Source Code of Level
0 , Process 2 ---------
int length = 0 , rectangle_area = 0 ;
printf(\n input length = );
scanf(%d
, &length);
rectangle_area =
length * width ;
printf(result of
Rectangle area =
%d , rectangle_area );
}
เพื่อความถูกต้องและชัดเจน ท่านสามารถคลิกดาวน์โหลดต้นฉบับของเอกสารเฉลยแบบฝึกหัดที่นี่
( URL : http://tps.comsci.info/programming/ex1_mid2_2551.doc )
คำชี้แจงเพิ่มเติมเกี่ยวกับแบบฝึกหัดภาคปฏิบัติก่อนสอบกลางภาค
เนื่องจากคำตอบมีหลายคำตอบและมีหลายวิธีการแก้ปัญหา
ดังนั้นการเฉลยแบบฝึกหัดภาคปฏิบัตินี้
จึงไม่จำเป็นต้องเหมือนกับเฉลยทุกประการ เพราะการแก้ปัญหามีหลายวิธี แต่ต้องมีความถูกต้องและสัมพันธ์กับเป้าหมายที่โจทย์ต้องการ
หากนักเรียนมีคำตอบอื่นๆ
นอกเหนือจากเฉลยนี้
และไม่แน่ใจในคำตอบที่ได้
สามารถพบครูเพื่อขอตรวจสอบคำตอบของนักเรียนได้
(
พึงระลึกไว้เสมอว่า
การแก้ปัญหามีหลายวิธี
แต่ต้องเลือกวิธีที่ดีที่สุด ขั้นตอนกระชับหรือน้อยที่สุด
ภายใต้ความถูกต้องและเป้าหมายเดียวกัน
)
คำแนะนำ
เพื่อเสริมทักษะและประสบการณ์การเขียนโปรแกรมให้มากขึ้นแนะนำให้ทำแบบฝึกหัดเพิ่มเติมที่
เว็บไซด์วิทยาการคอมพิวเตอร์
สำหรับโรงเรียนตากพิทยาคม
ดังนี้
http://tps.comsci.info
-->วิชาการเขียนโปรแกรมคอมพิวเตอร์
-->วิชาการเขียนโปรแกรม 2 --> หัวข้อ แบบฝึกหัด
สำหรับนักเรียนที่ต้องการทบทวนการทำแบบฝึกหัดภาคปฏิบัติเก่า
ของวิชาการเขียนโปรแกรม 1 ภาคเรียนที่ 1
ปีการศึกษา 2551 ให้คลิกที่ Link ต่อไปนี้
http://tps.comsci.info
-->วิชาการเขียนโปรแกรมคอมพิวเตอร์
-->วิชาการเขียนโปรแกรม 1 --> หัวข้อ แบบฝึกหัด
ภาคผนวกเกี่ยวกับ
Algorithm และ Flowchar
Program
ทบทวนภาคปฏิบัติเทอม 1 Algorithm
หมายถึง ลำดับขั้นตอนวิธีในการทำงานของโปรแกรมเพื่อแก้ปัญหา
หรือการเขียนคำอธิบายการแก้ปัญหาทีละขั้นตอน (ซึ่งนิยมเขียนเป็นข้อความ)
ทบทวนภาคปฏิบัติเทอม 1
Flowchar Program หมายถึง
ผังงานโปรแกรมหรือแผนภูมิสายงานของโปรแกรม
ผังงาน
คือ แผนภาพที่มีการใช้สัญลักษณ์รูปภาพและลูกศรที่แสดงถึงขั้นตอนการทำงานของโปรแกรมหรือระบบทีละขั้นตอน รวมไปถึงทิศทางการไหลของข้อมูลตั้งแต่แรกจนได้ผลลัพธ์ตามที่ต้องการ
ประโยชน์ของผังงาน
ช่วยลำดับขั้นตอนการทำงานของโปรแกรม
และสามารถนำไปเขียนโปรแกรมได้โดยไม่สับสน
ช่วยในการตรวจสอบ
และแก้ไขโปรแกรมได้ง่าย
เมื่อเกิดข้อผิดพลาด
ช่วยให้การดัดแปลง
แก้ไข
ทำได้อย่างสะดวกและรวดเร็ว
ช่วยให้ผู้อื่นสามารถศึกษาการทำงานของโปรแกรมได้อย่างง่าย และรวดเร็วมากขึ้น
วิธีการเขียนผังงานที่ดี
ใช้สัญลักษณ์ตามที่กำหนดไว้
ใช้ลูกศรแสดงทิศทางการไหลของข้อมูลจากบนลงล่าง
หรือจากซ้ายไปขวา
คำอธิบายในภาพควรสั้นกระทัดรัด
และเข้าใจง่าย
ทุกแผนภาพต้องมีลูกศรแสดงทิศทางเข้า - ออก
ไม่ควรโยงเส้นเชื่อมผังงานที่อยู่ไกลมาก ๆ
ควรใช้สัญลักษณ์จุดเชื่อมต่อแทน
ผังงานควรมีการทดสอบความถูกต้องของการทำงานก่อนนำไปเขียนโปรแกรม
ภาคผนวก
เกี่ยวกับคำศัพท์คณิตศาสตร์พร้อมทั้งศัพท์ภาษาอังกฤษ
URL : http://www.web.ku.ac.th/schoolnet/snet2/vocabulary/voc4.htm
จำนวน |
ปริมาณที่ทำให้มีความรู้สึกว่ามากหรือน้อย |
จำนวนคี่ |
จำนวนเต็มที่ไม่ใช้จำนวนคู่ หรือจำนวนที่อยู่ในเซต |
จำนวนคู่ |
จำนวนเต็มที่หารด้วย 2 แล้วได้ผลลัพธ์เป็นจำนวนเต็ม
นั่นคือ จำนวนที่อยู่ในเซต |
จำนวนจริง |
จำนวนที่เป็นสมาชิกอยู่ในเซตที่เกิดจากยูเนียนของเซตของจำนวนตรรกยะ และเซตของจำนวนอตรรกยะ |
จำนวนจริงบวก |
จำนวนจริงที่มากกว่าศูนย์หรือจำนวนที่แทนได้ด้วยจุดที่อยู่ทางขวามือของจุดแทนศูนย์บนเส้นจำนวน |
จำนวนจริงลบ |
จำนวนจริงที่น้อยกว่าศูนย์หรือจำนวนที่แทนได้ด้วยจุดที่อยู่ทางซ้ายมือของจุดแทนศูนย์บนเส้นจำนวน |
จำนวนจินตภาพ |
จำนวนเชิงซ้อน a + bi เมื่อ b # 0 |
จำนวนจินตภาพแท้ |
จำนวนเชิงซ้อน a + bi เมื่อ a = 0 และ
b # 0 (ดู จำนวนเชิงซ้อน
ประกอบ) |
จำนวนเฉพาะ
|
จำนวนเต็ม a ซึ่งไม่เท่ากับ 0 หรือ และต้องหารลงตัวด้วย และ เท่านั้น เช่น เป็นต้น (ส่วนมากมักจะกล่าวถึงจำนวนเฉพาะทีเป็นจำนวนจริงบวกเท่านั้น) |
จำนวนเชิงซ้อน |
จำนวนใด ๆ ที่เขียนในรูปคู่อันดับ (a, b) เมื่อ
a และ
b เป็นจำนวนจริงและมีคุณสมบัติต่อไปนี้ 1. (a, b) = (c, d) ต่อเมื่อ a = c และ
b = d 2. (a, b) + (c, d) =
(a + c, b + d) 3. (a, b) . (c, d) =
(ac - bd, ad + bc) |
จำนวนตรรกยะ |
จำนวนที่เขียนได้ในรูป โดยที่ a และ
b ต่างเป็นจำนวนเต็มและ
b # 0 ได้แก่ 1. จำนวนเต็ม 0, 1, -1, 2, -2, 3, -3, .... 2. จำนวนที่เขียนไว้ในรูปเศษส่วนของจำนวนเต็ม โดยที่ตัวหารไม่เป็นศูนย์ 3. จำนวนที่เขียนไว้ในรูปทศนิยมซ้ำ
เช่น |
จำนวนเต็ม |
จำนวนที่อยู่ในเซต { ..., -2, -1, 0, 1,
2, ...} |
จำนวนเต็มบวก |
จำนวนที่อยู่ในเซต { 1, 2, 3, ...} |
จำนวนเต็มลบ |
จำนวนที่อยู่ในเซต { -1, -2, -3, ....} |
จำนวนนับ |
ดู จำนวนเต็มบวก
|
จำนวนเลขคณิต |
จำนวนที่เกี่ยวข้องกับชีวิตประจำวันได้แก่จำนวนเต็มบวก เศษส่วน
ทศนิยม และจำนวนจริง (ที่เป็นบวก) |
จำนวนอตรรกยะ |
จำนวนจริงที่ไม่ใช่จำนวนตรรกยะเขียนได้ในรูปทศนิยมไม่ซ้ำ เช่น =
3.1415926535..., sin 45 ํ = 0.70710678..., tan 140 ํ = -0.8391... |
จีเอม |
|
จุดกำเนิด |
จุดตัดของแกน X และแกน Y ในระบบแกนมุมฉาก หรือจุดแทนจำนวนศูนย์บนเส้นจำนวน |
จุดกึ่งกลาง |
ทางสถิติหมายถึงจุดกึ่งกลางของแต่ละอันตรภาคชั้น หาได้จากการเฉลี่ยค่าขอบบนและขอบล่างของแต่ละอันตรภาคชั้น |
จุดทศนิยม |
จุดที่อยู่ระหว่างจำนวนเต็มหรือศูนย์กับเศษส่วนในระบบฐานสิบ |
อ่านเพิ่มเติมเสริมความรู้ทางคณิตศาสตร์ที่ http://www.web.ku.ac.th/schoolnet/snet2/vocabulary/voc4.htm