--- title: การออกแบบขั้นตอนวิธี (5.58 นาที) subtitle: date: วันพฤหัสบดีที่ 28 มีนาคม 2567 เวลา 11.00 น. --- (ข้อความสดจากระบบถอดความเสียงพูดทางไกล) หลังจากพวกเราได้เรียนรู้วิธีการแก้ปัญหาด้วยคอมพิวเตอร์ควรมีการระบุข้อมูลเข้า ข้อมูลออกสำหรับทริปนี้เราจะได้นำหลักการคิดเชิงคำนวณออกแบบขั้นตอนวิธีกันนะครับ การออกแบบขั้นตอนวิธีจะต้องมีการออกแบบเงื่อนไขที่ถูกต้องและชัดเจน อาจเป็นเงื่อนไขอย่างง่ายหรือเงื่อนไขที่ซับซ้อนก็ได้นะครับ เรามาดูกันเลยครับเรื่องการตั้งหลายอย่างง่าย จะใช้การเปรียบเทียบมากกว่าน้อยกว่าหรือเท่ากับ เช่น อายุน้อยกว่า 10 ปีไม่ต้องเสียค่าเข้าชมสวนสัตว์ ถึงจะตัวอย่างนี้ เราจะใช้เงื่อนไขด้วยนะกว่า 10 ปีในการตรวจสอบว่าเป็นจริงหรือไม่ ดูตัวอย่างเอกสารการกันครับ ต้นไม้ ระบบรดน้ำต้นไม้อัตโนมัติ ต้องอ่านค่าความชื้นของดินและเปรียบเทียบกับค่าที่กำหนดไว้ ความชื้น ในระบบยังไม่ได้เปิดน้ำเกินกว่า ที่กำหนดไว้ ระบบจะส่งสัญญาณน้ำ สามารถเขียนขั้นตอนวิธีได้ดังนี้ครับ ความเชื่อของดิน iso9001 เปล่า เปิดน้ำ สัญญาณปิดน้ำ จะ การทำงานเพียงครั้งเดียวสามารถทำงานได้อย่างต่อเนื่อง ขั้นตอนการทำทุกๆวินาที จะมีการอ่านค่าความชื้นและตัดสินใจทำงานทุกๆ 1 วินาทีนั่นเองครับ เราสามารถนำขั้นตอนวิธีมาเขียนในรูปแบบนี้ ตัวอย่างที่ผ่านมาแล้ว งั้นไปที่ใช้เป็นนิสัยอย่างง่ายๆก็คือ เทียบกับค่าที่กำหนด ถ้าเราต้องการเงื่อนไขที่ซับซ้อนมากขึ้นเช่น ต้องการเปรียบเทียบตั้งค่าความชื้นและอุณหภูมิกับค่าที่กำหนด ระบบสามารถทำงานได้แม่นยำมากขึ้นเราจะมีวิธีการอย่างไร พิจารณาตารางค่าความจริงต่อไปนี้ก่อนนะคะ ซึ่งมีค่าความจริงดังนี้ ก็จะพบว่าค่าความจริงของตัวดำเนินการและ กรณีเดียวคือ a และ b เป็นจริง ค่าความจริงของตัวดำเนินการหรือ จะเป็นเท็จกรณีเดียว a และ b เป็นเซต แล้วตัวดำเนินการพิเศษของ A กินข้าวตรงข้ามกับ การแสดงในตารางนี้นะครับ แปลว่า สามารถสร้างที่ทับซ้อน ใช้ตัวดำเนินการและเข้ามาช่วยในการตรวจสอบค่าความชื้นและอุณหภูมิ เปรียบเทียบกับค่าคงที่ที่กำหนด เช่น ถ้าผมอ่านค่าความชื้นได้ 0.08 อ่านค่าอุณหภูมิได้ 35 องศา เงื่อนไขทั้งสองมีค่าความจริงเป็นจริงและจริง จากนั้นระบบจะส่งการบ้านเปิดนั้นเองครับ ถามว่าระบบมันค่าความชื้นที่ 0.08 และอ่านค่าอุณหภูมิ 28 องศา คิดว่าทั้งหมดจะทำงานอะไรครับ รอพิจารณาอีกสถานการณ์ก่อนนะครับ ข้อสอบของนักเรียน 5 คนและติดประกาศคะแนนไว้หน้าห้อง การเขียนขั้นตอนวิธีเพื่อหาคะแนนสูงสุดของนักเรียนกลุ่มนี้ จะทำอย่างไรครับ ขั้นตอนวิธีของสถานการณ์นี้คือ ตัวแปร Max แก่งคันสูงสุดที่พบ เริ่มต้นให้แม็กเป็นข้อมูลตัวแรกที่พบ พิจารณาข้อมูลตัวถัดไปทีละจำนวน ข้อมูลตัวที่กำลังพิจารณาว่า x เทียบกับข้าวไหม มากกว่าแม็ก มีค่าเท่ากับ x จากนั้น ทำจนครบทุกตัว คะแนนสูงสุด ซึ่งเราสามารถเขียนขั้นตอนวิธีได้ดังนี้ครับ ลับหลังจากนักเรียนได้เรียนรู้เรื่องขั้นตอนวิธี กูก็อยากให้นักเรียนลองทำกิจกรรมหาค่าต่ำสุดในหนังสือเรียนกันดูนะครับ แล้วพบกันใหม่ในคลิปตัดไปสวัสดีครับ