2. การวางแผนการแก้ปัญหา เป็นขั้นตอนของการวางแผนในการแก้ปัญหาอย่างละเอียดถี่ถ้วน เริ่มจาก
2.1 การเลือกเครื่องมือที่เหมาะสมมาใช้การแก้ปัญหา เมื่อเลือกเครื่องมือแล้ว ขั้นตอนต่อไปผู้แก้ปัญหาต้องทำ
***เครื่องมือที่ใช้วางแผนในการแก้ปัญหา มี 3 แบบ ได้แก่
1. การใช้ข้อความหรือคำอธิบาย
2.รหัสลำลอง(Pseudo code)
3. ผังงาน (Flowchart)
การใช้ข้อความหรือคำบรรยาย เป็นการถ่ายทอดความคิดโดยการเขียนบรรยายเป็นภาษาที่ใช้ในการสื่อสารทั่วไป เพื่อให้ทราบถึงการทำงานของการแก้ปัญหาแต่ละขั้นตอนเป็นลำดับขั้น ซึ่งง่ายต่อการเข้าใจ แต่หากใช้ภาษาที่ยืดเยื้อ อาจทำให้เกิดความสับสนและยากต่อการนำไปใช้ (วิธีนี้ไม่ค่อยนิยม เนื่องจากการใช้ข้อความหรือคำบรรยาย จะค่อนข้างยืดเยื้อและยาว คล้ายการเขียน “แนวคิดเชิงนามธรรมที่ใช้คำนวณ
2. รหัสลำลอง (pseudo code ) เป็นข้อความแสดงขั้นตอนการแก้ปัญหา โดยเขียนเป็นข้อความที่กระชับ ได้ใจความ สื่อความหมายชัดเจน เพื่อให้ผู้อ่านเข้าใจได้ง่าย โดยมีหลักการทำงานที่แตกต่างกันไป ดังนี้
3. ผังงาน (Flowchart)เป็นการถ่ายทอดความคิดในรูปแบบแผนภาพ โดยใช้สัญลักษณ์ต่างๆ เรียกว่า การเขียนผังงาน (flowchart) ซึ่งสัญลักษณ์เหล่านี้ถูกกำหนดโดยสถาบันมาตรฐานแห่งชาติอเมริกา (The American National Standard Institute : ANSI) เพื่อใช้สำหรับสื่อสารขั้นตอนวิธีในการแก้ปัญหาให้เข้าใจตรงกัน
2.2 การออกแบบขั้นตอนวิธี หรืออัลกอริทึม(algorithm) ขั้นตอนในการแก้ปัญหาด้วยรหัสลำลองกับผังงาน
เมื่อมีการเลือกเครื่องมือที่ใช้วางแผนในการแก้ปัญหา นำเครื่องมือมาช่วยในการออกแบบขั้นตอนวิธี
ตัวอย่าง การออกแบบขั้นตอนในการแก้ปัญหา โดยใช้รหัสลำลองกับผังาน ดังนี้
การเขียนรหัสลำลองและผังงาน รูปแบบการทำงานแบบลำดับ
สถานการณ์ : น้องดาอยากพาน้องตูบปั่นจักรยานเล่นในสวนสาธารณะมีพื้นที่วงกลม โดยมีรัศมียาว 200 เมตร น้องดาต้องจักรยานรอบสวนสาธารณะระยะทางกี่เมตร
การเขียนรหัสลำลองและผังงาน รูปแบบการทำงานแบบมีเงื่อนไข
สถานการณ์ : เกิดสถานการณ์การเกิดโรคระบาดโควิด -2019 ทำให้โรงเรียนได้คัดกรองนักเรียนที่ก่อนเข้าโรงเรียนตอนเช้า โดยกำหนดให้ถ้าวัดอุณหภูมิพบว่า อุณหภูมิตั้งแต่ 37.5 องศาเซลเซียสขึ้นไป ถือว่าเป็นผู้เสี่ยงสูง ถ้าน้อยกว่าหรือเท่ากับ 37.5 ถือว่า ปกติ
การเขียนรหัสลำลองและผังงาน รูปแบบการทำงานแบบวนซ้ำ
สถานการณ์ : โรงเรียนจัดแข่งขันกีฬาภายใน รายการ วิ่งมาราธอน ระยะทาง 2,000 เมตร โดยกำหนดสนาม 1 รอบ เท่ากับ 400 เมตร จะต้องวิ่งกี่รอบถึงจะ เข้าสู่เส้นชัยแล้วหยุดวิ่ง
เป็นขั้นตอนที่ต้องลงมือแก้ปัญหาตามขั้นตอนวิธีที่กำหนด โดยใช้เครื่องมือที่ได้เลือกไว้ อาจใช้โปรแกรมมาช่วยในการดำเนินการแก้ปัญหา ซึ่งในขณะที่กำลังดำเนินการแก้ปัญหา หากพบแนวทางแก้ปัญหาที่ดีกว่าที่ออกแบบไว้ ก็สามารถปรับเปลี่ยนแนวทางแก้ปัญหาได้
ภาษาที่ช่วยในการดำเนินการแก้ปัญหา เช่น Scratch pytton kidbright
ภาษา Scratch และ kidbright เป็นการเขียนโปรแกรมแบบ Block-based programming คือ การเขียนโปรแกรมในลักษณะการนำ Block ของคำสั่งมาต่อ ๆ กัน คล้ายการต่อจิ๊กซอว์ โดยใชวิธีการลากวาง (Drag and Drop) เพื่อให้ง่ายต่อการเขียนโปรแกรม สำหรับผู้เริ่มต้น
หลังจากที่ลงมือแก้ปัญหาแล้ว ต้องตรวจสอบให้แน่ใจว่าวิธีการนั้นให้ผลลัพธ์ที่ถูกต้องหรือไม่ โดยตรวจสอบว่าขั้นตอนวิธีที่ใช้ในการแก้ปัญหานั้น ว่ามีความสอดคล้องกับรายละเอียดและเงื่อนไขของปัญหาหรือไม่ แล้วทำการปรับปรุงขั้นตอนวิธีเพื่อให้การแก้ปัญหานี้ได้ผลลัพธ์ที่ดีที่สุด