อัลกอริทึมคืออะไร ตัวอย่าง

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

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


องค์ประกอบของการจัดทำอัลกอริทึม

1. การวิเคราะห์

2. การออกแบบ

3. การเขียนโปรแกรม

4. การทดสอบและแก้ไขข้อผิดพลาดของโปรแกรม


อัลกอริทึมที่ดีควรมีคุณสมบัติ ดังนี้

1. มีลำดับขั้นตอนทำงาน ก่อน-หลัง ชัดเจน

2. เข้าใจง่ายและไม่กำกวม

3. สามารถประมวลผลการทำงานด้วยคอมพิวเตอร์ได้

4. การทำงานของอัลกอริทึมจะต้องสิ้นสุด หลังจากดำเนินงานตามระยะเวลาที่กำหนด


อัลกอริทึมคืออะไร ตัวอย่าง


อัลกอริทึมคืออะไร ตัวอย่าง


ประโยชน์ของอัลกอริทึม (Algorithm)

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


การออกแบบอัลกอริทึมที่ดี ช่วยให้เราทำงานได้สำเร็จในชีวิตประจำวัน เราสามารถใช้อัลกอริทึมในการแก้ปัญหาต่าง ๆ ได้มากมาย




ตัวอย่างเกม Tetris

อ้างอิง

บทเรียนออนไลน์ “อัลกอริทึม คืออะไร มีความสำคัญอย่างไร การเขียนโปรแกรม”  จาก www.mindphp.com สืบค้นเมื่อ 27 สิงหาคม 2562

อัลกอริทึมและเหตุผลเชิงตรรกะ จาก https://dltv.ac.th/teachplan/episode/17265 สืบค้นเมื่อ 27 สิงหาคม 2562

1.กระบวนการสำคัญเริ่มต้นที่จุดจุดเดียวในการมีจุดเริ่มต้นหลายที่จะทำให้กระบวนการวิธีสับสน จนในที่สุดอาจทำให้ผลลัพธ์ที่ได้ไม่ตรงกับความต้องการ หรืออาจทำให้อัลกอริทึมนั้นไม่สามารถทำงานได้เลย

2.กำหนดการทำงานเป็นขั้นเป็นตอนอย่างชัดเจน การกำหนดอัลกอริทึมที่ดีควรมีขั้นตอนที่ชัดเจนไม่คลุมเครือ เสร็จจากขั้นตอนหนึ่ง ไปยังขั้นตอนที่สองมีเงื่อนไขการทำงานอย่างไร ควรกำหนดให้ชัดเจน

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

4.ผลลัพธ์ในแต่ละขั้นตอนควรต่อเนื่องกัน การออกแบบขั้นตอนที่ดีนั้นผลลัพธ์จากขั้นตอนแรกควรเป็นข้อมูลสำหรับนำเข้า ให้กับข้อมูลในขั้นต่อไป ต่อเนื่องกันไปจนกระทั่งได้ผลลัพธ์ตามที่ต้องการ

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

รูปแบบของอัลกอริทึม

การเขียนอัลกอริทึมมีหลายรูปแบบ โดยผู้เขียนสามารถใช้อัลกอริทึมหลายรูปแบบประกอบกันในการออกแบบอัลกอริทึมนั้นเพื่อใช้ในการแก้ปัญหาการเขียนโปรแกรมได้

1.แบบลำดับ (Sequential) มีลักษณะการทำงานจะเป็นไปตามขั้นตอน ก่อน-หลัง ต่อเนื่องกันไปเป็นลำดับ โดยการทำงานแต่ละขั้นตอนต้องทำให้เสร็จก่อน แล้วจึงไปทำขั้นตอนต่อไป

อัลกอริทึมคืออะไร ตัวอย่าง

อัลกอริทึม การทอดไข่เจียว

  1. หยิบไข่ไก่
  2. ตอกไข่ไก่ใส่ภาชนะ
  3. ปรุงรส ด้วยเครื่องปรุง
  4. ตีไข่ด้วยช้อนส้อม
  5. ตั้งกระทะบนเตา
  6. เปิดแก๊ส และติดไฟ
  7. ใส่น้ำมันพืช
  8. นำไข่ที่ปรุงรสแล้วใส่ลงในกระทะที่ร้อน
  9. ทอดจนสุก
  10. ตักขั้นใส่จานที่เตรียมไว้

2.แบบทางเลือก (Decision) อัลกอริทึมรูปแบบนี้ มีเงื่อนไขเป็นตัวกำหนดเส้นทางการทำงานของกระบวนการแก้ปัญหา โดยตัวเลือกนั้นอาจจะมีตั้งแต่ 2 ตัวขึ้นไป เช่น สอบข้อเขียน คะแนนเต็ม 50 ได้คะแนน 30 สอบผ่าน ถ้าต่ำกว่า 30 สอบไม่ผ่าน

อัลกอริทึมคืออะไร ตัวอย่าง

อัลกอริทึมตัดเกรดวิชาคอมพิวเตอร์

  1. คะแนนสอบของนักเรียน
  2. ตรวจสอบคะแนน (คะแนนที่สอบผ่าน 50 คะแนน)
  3. ถ้ามากกว่า 50 คะแนน สอบผ่าน
  4. ถ้าน้อยกว่า 50 คะแนน สอบตก
  5. ประกาศผล

3.แบบทำซ้ำ (Repetition) อัลกอริทึมแบบนี้คล้ายกับ

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

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

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

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

หลักการเขียนอัลกอริทึม

1.กระบวนการสำคัญเริ่มต้นที่จุดจุดเดียวในการมีจุดเริ่มต้นหลายที่จะทำให้กระบวนการวิธีสับสน จนในที่สุดอาจทำให้ผลลัพธ์ที่ได้ไม่ตรงกับความต้องการ หรืออาจทำให้อัลกอริทึมนั้นไม่สามารถทำงานได้เลย

2.กำหนดการทำงานเป็นขั้นเป็นตอนอย่างชัดเจน การกำหนดอัลกอริทึมที่ดีควรมีขั้นตอนที่ชัดเจนไม่คลุมเครือ เสร็จจากขั้นตอนหนึ่ง ไปยังขั้นตอนที่สองมีเงื่อนไขการทำงานอย่างไร ควรกำหนดให้ชัดเจน

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

4.ผลลัพธ์ในแต่ละขั้นตอนควรต่อเนื่องกัน การออกแบบขั้นตอนที่ดีนั้นผลลัพธ์จากขั้นตอนแรกควรเป็นข้อมูลสำหรับนำเข้า ให้กับข้อมูลในขั้นต่อไป ต่อเนื่องกันไปจนกระทั่งได้ผลลัพธ์ตามที่ต้องการ

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

รูปแบบของอัลกอริทึม

การเขียนอัลกอริทึมมีหลายรูปแบบ โดยผู้เขียนสามารถใช้อัลกอริทึมหลายรูปแบบประกอบกันในการออกแบบอัลกอริทึมนั้นเพื่อใช้ในการแก้ปัญหาการเขียนโปรแกรมได้

1.แบบลำดับ (Sequential) มีลักษณะการทำงานจะเป็นไปตามขั้นตอน ก่อน-หลัง ต่อเนื่องกันไปเป็นลำดับ โดยการทำงานแต่ละขั้นตอนต้องทำให้เสร็จก่อน แล้วจึงไปทำขั้นตอนต่อไป

อัลกอริทึม การทอดไข่เจียว
  1. หยิบไข่ไก่
  2. ตอกไข่ไก่ใส่ภาชนะ
  3. ปรุงรส ด้วยเครื่องปรุง
  4. ตีไข่ด้วยช้อนส้อม
  5. ตั้งกระทะบนเตา
  6. เปิดแก๊ส และติดไฟ
  7. ใส่น้ำมันพืช
  8. นำไข่ที่ปรุงรสแล้วใส่ลงในกระทะที่ร้อน
  9. ทอดจนสุก
  10. ตักขั้นใส่จานที่เตรียมไว้

2.แบบทางเลือก (Decision) อัลกอริทึมรูปแบบนี้ มีเงื่อนไขเป็นตัวกำหนดเส้นทางการทำงานของกระบวนการแก้ปัญหา โดยตัวเลือกนั้นอาจจะมีตั้งแต่ 2 ตัวขึ้นไป เช่น สอบข้อเขียน คะแนนเต็ม 50 ได้คะแนน 30 สอบผ่าน ถ้าต่ำกว่า 30 สอบไม่ผ่าน

อัลกอริทึมตัดเกรดวิชาคอมพิวเตอร์

  1. คะแนนสอบของนักเรียน
  2. ตรวจสอบคะแนน (คะแนนที่สอบผ่าน 50 คะแนน)
  3. ถ้ามากกว่า 50 คะแนน สอบผ่าน
  4. ถ้าน้อยกว่า 50 คะแนน สอบตก
  5. ประกาศผล

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

อัลกอริทึม คืออะไร อธิบาย

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

อัลกอริทึมคือ มีอะไรบ้าง

อัลกอริทึม (Algorithm) หมายถึง ขั้นตอนหรือลาดับการประมวลผลในการแก้ปัญหาใดปัญหาหนึ่งซึ่งจะช่วยให้ ผู้พัฒนาโปรแกรมเห็นขั้นตอนการเขียนโปรแกรมอย่างง่ายขึ้น หลักการเขียนอัลกอริทึม

อัลกอริทึมใช้ทำอะไร

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

อัลกอริทึมคืออะไรเฉลย

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