Please enable JavaScript.
Coggle requires JavaScript to display documents.
Chapter 2การแก้ปัญหาและขั้นตอนวิธี บทที่ 2 - Coggle Diagram
Chapter 2การแก้ปัญหาและขั้นตอนวิธี บทที่ 2
การแก้ปัญหาด้วยคอมพิวเตอร์
1.)ปัญหาที่สามารถแก้ได้ด้วยคอมพิวเตอร์ไม่
จำเป็นต้องเป็นปัญหาทางคณิตศาสตร์เสมอไป
ซึ่งก่อนจะแก้ปัญหาต้องเข้าใจปัญหาและความต้องการให้ชัดเจนแล้วค่อยพัฒนาขั้นตอนวิธีที่สามารถใช้งานได้
ขั้นตอนการแก้ปัญหาด้วยคอมพิวเตอร์มี 7 ขั้นตอน
1.)การนิยามปัญหาปัญหา(Problem Definition)
1.1 สิ่งสำคัญที่สุด คือเราต้องทำความเข้าใจให้ได้ว่าปัญหาคืออะไร
1.2 ประเด็นหลักอยู่ที่ใด และต้องการให้ได้ผลลัพธ์อะไร
2.)การวิเคราะห์ปัญหา(Problem Analysis)
2.1การหาผลลัพธ์ของปัญหา(output) ว่าคืออะไร
2.3มีข้อมูลนำเข้า (input) อะไรบ้างที่จะทำให้ได้ผลลัพธ์
2.4ระบุวิธีการประมวลผล(Process) ต้องทราบวิธีการประมวลผล หรือวิธีคิดให้ได้ผลลัพธ์ตามต้องการ
3.การออกแบบอัลกอริทึม( Algorithm Design )
การออกแบบอัลกอริทึมเป็นการคิดหาขั้นตอนการแก้ปัญหาทีละขั้น เราต้องคิดว่าจะทำอย่างไรจึงจะแก้ปัญหาได้ และสามารถนำมาแปลงเป็นคำสั่งของภาษาโปรแกรมได้โดยง่าย
4.การพัฒนาโปรแกรม( Program Development)
4.1)นักเขียนโปรแกรม ( Programmer )ต้องนำเอาคำอธิบายของขั้นตอนการแก้ปัญหาแต่ละขั้นจากอัลกอริทึมมาแปลงเป็นคำสั่งของภาษาโปรแกรมคอมพิวเตอร์ภาษาใดภาษาหนึ่ง เช่น เขียนด้วยภาษาJava , Python , C# เป็นต้น
4.2)การพัฒนาโปรแกรมจะทำได้ง่ายถ้าอัลกอริธึมถูกต้องและมีความชัดเจน
5.การทดสอบความถูกต้อง( Program Testing )
5.1)การทดสอบ (Testing) เพื่อหาข้อผิดพลาดจากการเขียนคำสั่งผิดไวยกรณ์ของภาษา หรือข้อผิดพลาดจากการคำนวณ
5.2)การทดสอบควรทดสอบทุกกรณีที่คาดว่าจะเกิดขึ้น
6.การจัดทำเอกสาร( Documentation )
6.1)การจัดทำเอกสารมีได้ 2 แบบ คือ
จัดทำเอกสารคู่มือผู้ใช้
เอกสารคู่มือพัฒนาเพราะช่วยให้การบำรุงรักษาโปรแกรมทำได้ง่ายขึ้น และใช้อ้างอิงในกรณีที่มีการเปลี่ยนแปลง
ใด ๆ ในระบบ
6.2)การเขียนหมายเหตุในโปรแกรมถือว่าเป็นสิ่งจำเป็นที่ควรจะทำเพื่ออธิบายความคิดว่าขณะนั้นได้คิดอะไร เป็นสิ่งที่ช่วยเตือนความทรงจำของตัวผู้เขียนเอง และคนอื่น
7.การบำรุงรักษา( Maintenance )
การดูแลบำรุงรักษาให้ระบบสามารถใช้งานได้นานที่สุด โดยจะต้องดูแลรักษาเครื่องคอมพิวเตอร์ โปรแกรมและอุปกรณ์ต่อพ่วงต่าง ๆที่ใช้ในระบบ ให้สามารถใช้งานได้ปกติ
ข้อมูลที่เกี่ยวข้องกับการทำงานของคอมพิวเตอร์
1.ข้อมูลเข้า ( input) เป็นข้อมูลที่ใช้เพื่อประมวลผล
2.ข้อมูลออก ( Output) เป็นข้อมูลที่แสดงผลลัพธ์
3.การระบุข้อมูลเข้า และข้อมูลออกอาจจะไม่สามารถทำได้อย่างชัดเจน จึงต้องทำความเข้าใจกับปัญหา
มากขึ้น
การออกแบบขั้นตอนวิธี
คือ ขั้นตอนการแก้ปัญหาอย่างเป็นลำดับโดยประกอบด้วยชุดคำสั่งการทำงานอย่างเป็นลำดับและชัดเจน
เครื่องมือในการออกแบบขั้นตอนวิธี
ประกอบด้วย
1.บรรยาย (Narrative Description)
2.รหัสเทียม (Pseudo Code)
3.ผังงาน (Flow Chart)
ลักษณะขั้นตอนวิธี
1.แก้ปัญหาได้อย่างมีประสิทธิภาพ
2.ให้คำตอบที่ถูกต้อง
3.ใช้เวลาในการปฏิบัติการน้อย
4.ชัดเจนและกระทัดรัด
การบรรยาย(Narrative Description)
การออกแบบขั้นตอนวิธีด้วยการบรรยาย เป็นการเขียนบรรยายวิธีการแก้ปัญหาอย่างเป็นลำดับโดยใช้ภาษา
ธรรมชาติเช่นวิธีการต้มบะหมี่กึ่งสำเร็จรูป
รหัสเทียม(Pseudo Code)
เป็นการเขียนโปรแกรมในรูปแบบภาษาอังกฤษที่มีขั้นตอนและรูปแบบแน่นอนกะทัดรัด
ประโยชน์ของรหัสเทียม(Pseudo Code)
เป็นเครื่องมือในการกำหนดโครงร่างกระบวนการทำงานของการเขียนโปรแกรมและใช้เป็นต้นแบบในการทบทวนปรับปรุงแก้ไขและพัฒนาโปรแกรมของโปรแกรมเมอร์และนักวิเคราะห์ระบบ
หลักการเขียนรหัสเทียม**
(Pseudo Code)**
1.ใช้ภาษาอังกฤษที่เข้าใจง่าย
2.ในหนึ่งบรรทัด มีเพียงหนึ่งประโยคคำสั่งเท่านั้น
3.ใช้ย่อหน้าแบ่งการแสดงการทำงานเพื่อให้อ่านง่าย
4.แต่ละประโยคคำสั่งให้เขียนจากบนลงล่าง และมีทางออกทางเดียว
5.กลุ่มของประโยคคำสั่งอาจรวมเป็นหมวดหมู่แล้วเรียกใช้เป็นโมดูล
รูปแบบการเขียนรหัสเทียม
การประมวลผล
ใช้ค่าบวกเพิ่มให้ตัวแปร
SET ใช้กำหนดค่าให้ตัวแปร
การคิดเชิงออกแบบสำหรับวิทยาการข้อมูล
การทดสอบ
การหาเเนวทางแก้ไขปัญหา
ทำความเข้าใจปัญหา
การระบุปัญหา
การสร้างต้นแบบ