Upload
others
View
5
Download
0
Embed Size (px)
Citation preview
อ.พิศิษฐ์ นาคใจคณะวิทยาศาสตร์และเทคโนโลยีมหาวิทยาลัยราชภัฎอุตรดิตถ์
บทที่ 2 ขั้นตอนการท างาน (Algorithm)
รหัสเทยีม (Pseudo Code)
• เป็นค าอธิบายขั้นตอนการท างานของโปรแกรม โดยใช้ภาษาอังกฤษหรือภาษาไทย รวมกับภาษาการเขียนโปรแกรม ซึ่งช่วยให้ผู้เขียนโปรแกรมสามารถท างานได้ง่ายขึ้น รหัสเทียมที่ดีต้องมีความชัดเจน สั้นแต่ได้ใจความ
• รูปแบบAlgorithm <ชื่ออัลกอริทึ่ม>1……………2……………End
หลักการเขียนซโูดโค้ด
• การรับข้อมูล Read, Input• การค านวณ Compute• การตัดสินใจ If – Then – Else – Endif
Case – Of – Endcase• การวนซ้ า For – Endfor
Repeat – UntilDo – While – Enddo
• การกระโดดข้าม Goto
ตัวอย่าง
• ซูโดโค้ดหาพ้ืนที่สามเหลี่ยม
Algorithm TriangleArea
1. Input x
2. Input y
3. Compute area = (x * y) / 2
4. Print area
Endx
y
ตัวอย่าง
• ซูโดโค้ดค านวณเกรดนักศึกษา โดยมีเงื่อนไขว่า คะแนนมากกว่าหรือเท่ากับ 50 ได้ A ถ้าคะแนนน้อยกว่า 50 ได้ F
Algorithm CalGrade1. Read score2. If (score >= 50) Then3. grade = A4. Else 5. Grade = F6. Endif5. Print gradeEnd
ตัวอย่าง
• ซูโดโค้ดแสดงข้อความแจ้งนักศกึษาที่ได้เกรด A - FAlgorithm ShowData1. Case score Of2. A : Print “ดีมาก”3. B : Print “ดี”4. C : Print “พอใช้”5. F : Print “ควรปรับปรุง”6. EndcaseEnd
ตัวอย่าง
• ซูโดโค้ดการรับค่าจากแป้นพิมพ์ จนกว่าค่าที่ป้อนเปน็ 0 แล้วหาค่าเฉลี่ยAlgorithm Average1. count =02. sum = 03. Input x
4. If (x>0) then5. count = count + 16. sum = sum + x7. Goto 38. Else Goto 99. average = sum / count10. Endif11. Print averageEnd
Input (x) Count Sum
- 0 0
10 1 10
20 2 30
30 3 60
10 4 70
20 5 90
0 5 90
ผังงาน (Flowchart)
• เป็นแผนภาพที่ใช้ออกแบบและอธิบายการท างานของโปรแกรมโดยใช้รูปทรงและลูกศร
เริ่มต้น
ค านวณ
ผลลัพธ์
สิ้นสุด
ผิด
ถูก
หลักการเขียนผังงานที่ดี
• เขียนตามสัญลักษณ์ที่ก าหนด
• ใช้ลูกศรแสดงทิศทางจากบนลงล่าง
• อธิบายสั้นๆ ให้เข้าใจง่าย
• ทุกแผนภาพต้องมีทิศทางเข้าออก
• ถ้าลูกศรโยงไปไกลมากใหใ้ช้สญัลักษณ์การเชื่อมต่อแทน
ประโยชน์ของผังงาน
• ท าให้เข้าใจ และแยกแยะปัญหาได้ง่าย (Problem Define)
• แสดงล าดับการท างาน (Step Flowing)
• หาข้อผิดพลาดได้ง่าย (Easy to Debug)
• ท าความเข้าใจโปรแกรมได้ง่าย (Easy to Read)
• ไม่ขึ้นกับภาษาใดภาษาหนึ่ง (Flexible Language)
โครงสร้างของผังงาน
• โครงสร้างการท างานแบบล าดับ (Sequence)
• โครงสร้างการท างานแบบทางเลือก (Selection)
• โครงสร้างการท างานแบบวนซ้ า (Repeat)
สัญลักษณ์ที่ใช้ในการเขียนผังงาน
• การเริ่มต้น/สิ้นสุด
• ทิศทางของโปรแกรม
• การประมวลผล
• การรับข้อมูล
สัญลักษณ์ที่ใช้ในการเขียนผังงาน
• การตรวจสอบเงื่อนไข
• การแสดงผลทางจอภาพ
• การแสดงผลข้อมูลหรือ แสดงทางเครื่องพิมพ์
• จุดเช่ือมต่อของผังงาน
สัญลักษณ์ที่ใช้ในการเขียนผังงาน
• ที่เก็บข้อมูล
• การขึ้นหน้าใหม่
ตัวอย่าง
• การเขียนผังงาน การรับข้อมูล A และ B เข้ามา แล้วแสดงผลบวกของค่าทั้งสอง
Begin
X = A+B
End
Input A
Input BPrint X
ตัวอย่าง
• การเขียนผังงานค านวณเกรดนักศึกษา
โดยมีเงื่อนไขว่า คะแนนมากกว่าหรือเท่ากับ 50 ได้ A ถ้าคะแนน
น้อยกว่า 50 ได้ F
Begin
Input score
Score >=50
Print FPrint A
True False
End
ตัวอย่าง
• การเขียนผังงานเพื่อแสดงขั้นตอนการเจียวไข่
แบบฝึกหัด
1. เขียนรหัสเทียม เพ่ือค านวณ การแปลงหน่วยจาก1. หน่วยเซนติเมตร -> หน่วยเมตร
2. หน่วยเมตร -> กโิลเมตร
3. หน่วยองศาเซลเซียส -> ฟาเรนไฮต์ [°F] = [°C] × 9⁄5 + 32
4. ฟาเรนไฮต์ -> เคลวิน [K] = ([°F] + 459.67) × 5⁄95. หน่วยเงินบาท -> เงินดอลล่าสหรัฐ 1 USA = 30 Baht
6. หน่วยเงินดอลล่าสหรัฐ -> หน่วยเงินปอร์น 1 USA = 0.63 Pound
ให้นิสิตท าแบบฝึกลงกระดาษขนาด A4 ส่งคาบเรียนถัดไป
แบบฝึกหัด
1. เขียนผังงาน เพือ่ค านวณการช าระภาษีที่ตอ้งช าระ โดยมีรายละเอียดการช าระดังน้ี
ถ้าเงินรายได้นอ้ยกว่า 100,000 บาท ไมต่้องช าระภาษี
ถ้าเงินรายได้ตัง้แต ่100,000 บาทขึน้ไป ช าระภาษี 10 เปอรเ์ซ็นต์ ของรายได้
2. เขียนผังงานบอกขัน้ตอนการไปเตมิน้ ามันทีป่ั้มน้ ามัน
3. เขียนผังงานบอกขัน้ตอนการถอนเงนิจากตู้ ATM
4. เขียนผังงานแสดงวิธีการรับประทานยา ที่แบง่ขนาดรับประทานตามอายุของผู้ทานดงันี้ อายุมากกว่า 10 ปี รับประทานครั้งละ 2 ช้อนชา
อายุมากกว่า 3 ปี ถึง 10 ปี รับประทานครั้งละ 1 ช้อนชา
อายุมากกว่า 1 ปี ถึง 3 ปี รับประทานครั้งละ 1/2 ช้อนชา
แรกเกิดถึง 1 ปี ห้ามรับประทาน
ให้นิสิตท าแบบฝึกลงกระดาษขนาด A4 ส่งคาบเรียนถัดไป
ปรับปรุงจาก
• อ.กฤษณ์ ชัยวณัณคุปต์ มหาวิทยาลัยราชภัฎอุตรดิตถ์