แบบทดสอบ Online

สถิติผู้เข้าชม

490148
TodayToday29
YesterdayYesterday224
This WeekThis Week1406
This MonthThis Month5348
All DaysAll Days490148

ROBOT TEAM


warayuphat panumphan 'Kru Pu', Powered by Joomla!
Algorithm PDF Print E-mail
Written by Administrator   
Monday, 11 February 2013 08:36

R....

แบบทดสอบก่อนเรียน (Pre Test)

การนำคอมพิวเตอร์มาใช้ในการแก้ปัญหา

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

หากวิเคราะห์วิธีการแก้ปัญหา จะพบว่าสามารถสรุปเป็นทฤษฎีซึ่งมีรูปแบบที่แน่นอนได้  และบางครั้งต้องอาศัยการเรียนรู้ในระดับสูง เพื่อแก้ปัญหาบางอย่างให้สมบูรณ์แบบ

การนำคอมพิวเตอร์มาช่วยในการแก้ปัญหา เพื่อตอบสนองความต้องการของมนุษย์  เช่น การคำนวณ  การพูด  การจำ โดยอาศัยความรู้และประสบการณ์ของบุคคล และการเขียนโปรแกรมสั่งการให้คอมพิวเตอร์สามารถทำงานตามที่เราต้องการ โดยมีฮาร์ดแวร์และซอฟต์แวร์ รองรับ

การแก้ปัญหาด้วย Algorithm

ความหมายของ Algorithm ก่อนที่จะลงมือเขียนโปรแกรม  ต้องออกแบบขั้นตอนการทำงาน  หรืออัลกอริทึม  (Algorithm)  ก่อน  ซึ่งเป็นเครื่องมือในการแสดงขั้นตอนการทำงาน ของระบบงานใด ๆ  เพื่อให้การเขียนโปรแกรมเป็นไปได้อย่างรวดเร็วและง่ายขึ้น

ที่มาของคำว่าอัลกอริทึม (Algorithm) คือ คำที่ตั้งให้เป็นเกียรติแก่ อแลน เดอะ กอริทึม ทิวริง (Alan The Gorithm Turing) ผู้ค้นพบว่าการพิสูจน์ทางคณิตศาสตร์หรือปัญหาทางตรรกะ สามารถหาคำตอบได้ด้วยชุดของขั้นตอนวิธีที่ถูกต้อง

ประโยชน์ของอัลกอริทึม (Algorithm) คือ ทำให้ไม่สับสนกับวิธีดำเนินงาน  เพราะทุกอย่างจะถูกจัดเรียงเป็นขั้นตอนมีวิธีการและทางเลือกไว้  เมื่อนำมาใช้จะทำให้การทำงานสำเร็จอย่างรวดเร็ว ทำให้ปัญหาลดลงหรือสามารถค้นหาต้นเหตุของปัญหาได้อย่างรวดเร็ว  เนื่องจากกระบวนการถูกแยกแยะกิจกรรม  ขั้นตอน และความสัมพันธ์ ออกมาให้เห็นอย่างชัดเจน

รูปแบบการเขียนอัลกอริทึม
1.ลักษณะการบรรยาย (Narrative Description) 
ตัวอย่างโจทย์ ให้เขียนอัลกอริธึมเพื่อหาคะแนนเฉลี่ยของการสอบทั้งหมด 5 วิชา โดยวัดผลจากคะแนน ถ้าคะแนนต่ำกว่า 50 สอบไม่ผ่าน  แต่ถ้าคะแนนมากกว่า 50 ขึ้นไป สอบผ่าน
อัลกอริทึ่มแบบบรรยาย ใส่คะแนนสอบทั้ง 5 วิชา คอมพิวเตอร์คำนวนค่าเฉลี่ยโดยการบวกคะแนนทั้ง 5 วิชา แล้วหาร 5 ถ้าค่าเฉลี่ยต่ำกว่า 50 แสดงข้อความสอบไม่ผ่าน  แต่ถ้าค่าเฉลี่ยสูงกว่า 50 แสดงข้อความสอบผ่าน

2.การเขียนผังงาน (Flowchart) คือ การใช้รูปภาพสัญลักษณ์ แทนขั้นตอนการเขียนโปรแกรม
ประโยชน์ของผังงาน
1. ช่วยลำดับขั้นตอนการทำงานของโปรแกรม และสามารถนำไปเขียนโปรแกรมได้อย่างถูกต้อง
2. ช่วยในการตรวจสอบ และแก้ไขโปรแกรมได้ง่าย เมื่อเกิดข้อผิดพลาด
3. ช่วยให้การดัดแปลง แก้ไข ทำได้อย่างสะดวกและรวดเร็ว
4. ช่วยให้ผู้อื่นสามารถศึกษาการทำงานของโปรแกรมได้อย่างง่าย และรวดเร็ว มากขึ้น

การเขียนผังงาน (Flowchart) มี 3 แบบ
1. ผังงานแบบเรียงลำดับ  (Sequemce Flowchart)
เป็นการเขียนผังงานแบบง่ายที่สุด ทำงานจากบนลงล่าง ตามลูกศร

2. ผังงานแบบมีทางเลือกหรือแบบมีเงื่อนไข   (Selectiom or Condition Flowchart) 
คือตรวจสอบเงื่อนไขถ้าเป็นจริง ก็ทำงานตามเงื่อนไขที่เป็นจริง ถ้าเป็นเท็จก็ทำตามเงื่อนไขที่เป็นเท็จ
กรณี 1 ทางเลือก

กรณีที่ 2 แบบ 2 ทางเลือก แล้วแต่ผู้ใช้ว่าถ้าเป็นจริงทำตามเงื่อนไข ถ้าเป็นเท็จจะทำงานหรือไม่


3. ผังงานแบบการทำงานแบบวนซ้ำ  (Repetiton or Loop Flowchart)

 

3.รหัสจำลองที่เรียกว่า การเขียนซูโดโค้ด (Pseudo Code) คือการเขียนคำอธิบายขั้นตอนการทำงานของโปรแกรม  โดยใช้ถ้อยคำผสมระหว่างภาษาอังกฤษและภาษาการเขียนโปรแกรมแบบโครงสร้าง  ซึ่งจะช่วยให้ผู้เขียนโปรแกรมสามารถพัฒนาขั้นตอนต่าง ๆ  ให้เป็นโปรแกรมได้ง่ายขึ้น  ส่วนใหญ่มักใช้คำเฉพาะ  (Reserve Word)  ที่มีในภาษาการเขียนโปรแกรมและมักเขียนด้วยตัวอักษรตัวใหญ่  ซูโดโค้ดที่ดี  จะต้องมีความชัดเจน  สั้น  และได้ใจความ  ข้อมูลต่าง ๆ  ที่ใช้จะถูกเขียนอยู่ในรูปของตัวแปร

รูปแบบ Algorithm 
<ชื่อของอัลกอริทึม>
START
1……………………………….
2……………………………….
3…………………………………
END

ตัวอย่างโจทย์
จงเขียนโปรแกรมคำนวณหาพื้นที่ สามเหลี่ยมทั่วไป โดยให้โปรแกรมมีการรับค่า ฐาน และ สูงจากทาง Keyboard จากนั้นแสดงผลลัพธ์ของพื้นที่ออกทางจอภาพ

วิเคราะห์โจทย์
แบ่งออกเป็นสองส่วนคือ ส่วนในการรับค่า คือรับค่า ฐาน และ สูงจากผู้ใช้มาเก็บไว้ในตัวแปร และส่วนในการคำนวณ สูตรในการหาพื้นที่สามเหลี่ยมคือ (1/2) * ฐาน * สูง

ตัวอย่าง  การเขียนอัลกอริทึม  คำนวณหาพื้นที่สามเหลี่ยม
อัลกอริทึม (Algorithm) การหาพื้นที่สามเหลี่ยม
เริ่มต้น
รับค่าความยาวของฐานมาเก็บในตัวแปร BASE
รับค่าความยาวของสูงมาเก็บในตัวแปร HEIGHT
คำนวณหาพื้นที่  AREA = 0.5 * BASE*HEIGHT
แสดงผลพื้นที่
จบ

ซูโดโค้ด  (Pseudo codes) Algorithm  Triangle
START
READ  BASE
READ  HEIGHT
AREA = 0.5 * BASE * HEIGHT
PRINT  AREA
END

Flow Chart  การหาพื้นที่สามเหลี่ยม

Source Code
#include <iostream>
using namespace std;
int main()
{
float base , height , area;
cout << "Enter Base : ";
cin >> base;
cout << "Enter Height : ";
cin >> height;
area = 0.5 * base * height;
cout << "Triangle Area Is " << area << endl;
cout << endl;
return 0;
}

Output

ใบงานเรื่อง Algorithm

1.จงเขียนผังงานเพื่อแสดงขั้นตอนการต้มบะหมี่กึ่งสำเร็จรูป

2.จงเขียนผังงานเพื่อรับนักเรียนเข้าเรียน โดยพิจารณาว่านักเรียนคนนั้นจะต้องเรียนปรับพื้นฐานหรือไม่ โดยถ้าคะแนนของเขาน้อยกว่า 50 คะแนน ต้องเรียนปรับพื้นฐาน

3.จงเขียนผังงานเพื่อตรวจสอบเพศของผู้ใช้ โดยให้รับตัวอักขระจากผู้ใช้ ถ้าผู้ใช้ป้อน G แสดงข้อความ You are girl. ถ้าผู้ใช้ป้อน B ให้แสดงข้อความ You are boy.

4.จงเขียนผังงานเพื่อแสดงชื่อตัวเองจำนวน 10 บรรทัด

5.จงเขียนผังงานเพื่อแสดงการผ่อนชำระค่าโทรศัพท์ ราคา 20,000 บาท ต้องผ่อนชำระเดือนละ 2,000 บาท จนกว่าจะครบ

6.จงเขียนผังงานเพื่อหาพื้นที่สี่เหลี่ยมผืนผ้า

7.จงเขียนผังงานเพื่อหาพื้นที่สามเหลี่ยม

8.จงเขียนผังงานเพื่อรับคะแนนสอบกลางภาค และปลายภาคเข้ามาเพื่อหาผลรวม แล้วนำไปเปรียบเทียบเพื่อตัดสินเกรด โดยมีเงื่อนไขดังนี้

0-49    ให้แสดงข้อความว่า  "Fail"

50-59    ให้แสดงข้อความว่า   "grade 1"

60-69 ให้แสดงข้อความว่า   "grade 2"

70-79 ให้แสดงข้อความว่า   "grade 3"

80-100 ให้แสดงข้อความว่า   "grade 4"

 

1 อัลกอริทึม

2 ผังงานแบบลำดับ

Flowchart

Loop Flowchart

5 pseudocode

 

 

 

แบบทดสอบหลังเรียน (Post Test)

Last Updated on Tuesday, 03 July 2018 10:40
 

Poll กรุณาตอบคำถามค่ะ

คุณเขียนโปรแกรมบ่อยแค่ไหน
 

Poll สื่อการสอน

สื่อแบบไหน ที่คุณชอบ
 

จำนวนผู้ชมที่ online ขณะนี้

We have 40 guests online

analogclock

search engine

Banner
Banner
Banner
Banner
Banner
Banner
Banner
Banner
Banner
Banner
Banner