อัลกอริธึม (Algorithm) คือ กระบวนการ การทำงานที่ใช้การตัดสินใจ โดยนำหลักเหตุผลและคณิตศาสตร์มาช่วยเลือกวิธีการหรือขั้นตอนการดำเนินงานต่อไป จนกระทั่งถึงขั้นตอนสุดท้าย เป็นวิธีการที่ใช้แยกย่อยและเรียงลำดับขั้นตอนของกระบวนการในการทำงานต่างๆ เพื่อเพิ่มประสิทธิภาพในการค้นหาและแก้ไขปัญหา
ที่มาของคำว่าอัลกอริธึม (Algorithm) คือ คำที่ตั้งให้เป็นเกียรติแก่ อแลน เดอะ กอริทึม ทิวริง (Alan The Gorithm Turing) ผู้ค้นพบว่าการพิสูจน์ทางคณิตศาสตร์หรือปัญหาทางตรรกะ สามารถหาคำตอบได้ด้วยชุดของขั้นตอนวิธีที่ถูกต้อง
ประโยชน์ของอัลกอริธึม (Algorithm) คือ ทำให้ไม่สับสนกับวิธีดำเนินงาน เพราะทุกอย่างจะถูกจัดเรียงเป็นขั้นตอนมีวิธีการและทางเลือกไว้ให้ เมื่อนำมาใช้จะทำให้การทำงานสำเร็จอย่างรวดเร็ว ทำให้ปัญหาลดลงหรือสามารถค้นหาต้นเหตุของปัญหาได้อย่างรวดเร็ว เนื่องจากกระบวนการถูกแยกแยะกิจกรรม ขั้นตอน และความสัมพันธ์ ออกมาให้เห็นอย่างชัดเจน
หลักการเขียนอัลกอริทึมหลักการเขียนอัลกอริทึมสามารถเขียนได้หลายวิธี แต่ที่นิยมมี 2 วิธี คือ การเขียนรหัส-จำลองและการเขียนผังงาน
การเขียนรหัสจำลอง
1. การเขียนรหัสจำลอง (Pseudo Code) คือการเขียนอัลกอริทึมโดยใช้ประโยคภาษาอังกฤษที่สื่อความหมายง่าย ๆ สามารถอ่านแล้วเข้าใจได้โดยทันที แต่ก็สามารถใช้รูปแบบที่เป็นภาษาพูดด้วยภาษาไทยและภาษาอังกฤษก็ได้
โครงสร้างของรหัสจำลองเริ่มต้นด้วยข้อความ Begin แล้วอธิบายขั้นตอนการทำงานโดยใช้คำสั่งต่าง ๆ ที่ใกล้เคียงกับภาษาคอมพิวเตอร์ในการเขียนโปรแกรม เช่น
คำสั่ง read หมายถึง การอ่านค่าหรือรับค่าข้อมูลตัวแปรตามที่กำหนดไว้คำสั่ง print หมายถึง การแสดงผลลัพธ์ที่ได้จากการคำนวณ
และพิมพ์ข้อความ End เมื่อจบการทำงาน
การเขียนรหัสจำลองจะต้องมีการวางแผนสำหรับการอ้างอิงถึงข้อมูลที่จะต้องนำไปใช้ภายในโปรแกรมด้วยการสร้างตัวแปร โดยใช้เครื่องหมายเท่ากับ (= ) แทนการกำหนดค่าตัวแปร
ตัวอย่างที่ 2.1 กำหนดให้มีการรับคะแนนเก็บ คะแนนสอบกลางภาค และคะแนนสอบ-
ปลายภาค แล้วแสดงผลรวมของคะแนนทั้งหมด
ผลลัพธ์ที่ต้องการ
Input collect score : …………….
Input mid score : …………….
Input final score : …………….
Total score : …………….
การวิเคราะห์ปัญหา
1. การระบุข้อมูลนำเข้า
จากโจทย์ข้อมูลเข้าได้แก่
1.1 คะแนนเก็บ
1.2 คะแนนสอบกลางภาค
1.3 คะแนนสอบปลายภาค
2. การระบุข้อมูลออก
คะแนนรวม
3. การกำหนดการประมวลผล
คะแนนรวม = คะแนนเก็บ + คะแนนสอบกลางภาค+คะแนนสอบปลายภาค
การเขียนรหัสจำลอง
กำหนดตัวแปร
collect = คะแนนเก็บ
mid = คะแนนสอบกลางภาค
final = คะแนนสอบปลายภาค
total = คะแนนรวม
รหัสจำลอง
Begin
read collect, mid, final
total = collect + mid + final
print total
End
อธิบายขั้นตอนการทำงาน
1. รับข้อมูล collect, mid, final
2. คำนวณ total = collect + mid + final
3. แสดงผลลัพธ์ total
ขั้นตอนวิธี การเขียน Flow Chart เป็นวิธีการแก้ปัญหาต่างๆ อย่างมีระบบมีลำดับขั้น ตอนตั้ง แต่ต้นจนกระทั่งได้ผลลัพธ์ สามารถเขียนได้หลายแบบ การเลือกใช้ต้องเลือกใช้ขั้น ตอนวิธีที่เหมาะสมกระชับและรัดกุม
ขั้นตอนวิธีที่ดีควรมีคุณสมบัติ ดังนี้
1. มีความถูกต้อง
2. ใช้เวลาในการปฏิบัติงานน้อยที่สุด
3. กระชับ มีเฉพาะข้น ตอนที่จำเป็นเท่านั้น
4. ใช้หน่วยความจำน้อยที่สุด
5. มีความยืดหยุ่นในการใช้งาน
6. ใช้เวลาในการพัฒนาน้อยที่สุด
7. ง่ายต่อการทำความเข้าใจ
• การแสดงขั้น ตอนวิธี เช่น การเขียนด้วยผังงาน(Flowchart)
• ภาษาขั้น ตอนวิธี (Algorithm Language)และภาษาธรรมชาติ(Natural Language)
• ผังงาน (Flowchart) เป็นการใช้สัญลักษณ์ บอกขั้น ตอนการทำงาน
• นิพจน์ที่เป็นตรรกศาสตร์จะใช้เครื่องหมายในการเปรียบเทียบคือ
• = เท่ากับ
• ≠ ไม่เท่ากับ
• < น้อยกว่า
• > มากกว่า
• ≤ น้อยกว่าหรือเท่ากับ
• ≥ มากกว่าหรือเท่ากับ
ตัวอย่าง
• ภาษาขั้น ตอนวิธี การหาผลบวกตัวเลขตั้ง แต่ 1 -100
• 1. Sum 0
• 2. Num 1
• 3. Sum Sum+ Num
• 4. Num Num+1
• 5. If Num > 100 then print Sumelse goto 3
• 6. Stop
2. การเลือกกระทำตามเงื่อนไข(Decision or Selection) : การตัดสินใจ หรือเลือกเงื่อนไขคือ เขียนโปรแกรมเพื่อนำค่าไปเลือกกระทำ โดยปกติจะมีเหตุการณ์ให้ทำ 2 กระบวนการ คือเงื่อนไขเป็นจริงจะกระทำกระบวนการหนึ่ง และเป็นเท็จจะกระทำอีกกระบวนการหนึ่ง แต่ถ้าซับซ้อนมากขึ้น จะต้องใช้เงื่อนไขหลายชั้น เช่นการตัดเกรดนักศึกษา เป็นต้น ตัวอย่างผังงานนี้ จะแสดงผลการเลือกอย่างง่าย เพื่อกระทำกระบวนการเพียงกระบวนการเดียว


ไม่มีความคิดเห็น:
แสดงความคิดเห็น