[เสียงดนตรี] (คุณครูโชติช่วง) สวัสดีครับ หลังจากพวกเราได้เรียนรู้ วิธีการแก้ปัญหาด้วยคอมพิวเตอร์ ก็ควรมีการระบุข้อมูลเข้า ข้อมูลออก สำหรับคลิปนี้ เราจะได้นำหลักการคิดเชิงคำนวณ มาออกแบบขั้นตอนวิธีกันนะครับ การออกแบบขั้นตอนวิธี จะต้องมีการออกแบบเงื่อนไขที่ถูกต้องและชัดเจน อาจเป็นเงื่อนไขอย่างง่าย หรือเงื่อนไขที่ซับซ้อนก็ได้นะครับ เรามาดูกันเลยครับ ตัวอย่างของการสร้างเงื่อนไขอย่างง่าย จะใช้การเปรียบเทียบมากกว่า น้อยกว่า หรือไม่เท่ากับ เช่น อายุน้อยกว่า 10 ปี ไม่ต้องเสียค่าเข้าชมสวนสัตว์ ซึ่งจากตัวอย่างนี้ เราจะใช้เงื่อนไขอายุน้อยกว่า 10 ปี ในการตรวจสอบว่าเป็นจริงหรือไม่ เรามาดูตัวอย่างอีกสถานการณ์กันนะครับ นั่นก็คือการตัดสินใจรดน้ำต้นไม้ ของระบบรดน้ำต้นไม้อัตโนมัติ ซึ่งระบบจะต้องอ่านค่าความชื้นของดิน และเปรียบเทียบกับค่าที่กำหนดไว้ หากค่าความชื้นต่ำกว่าค่าที่กำหนด ให้ระบบส่งสัญญาณเปิดน้ำ หากมีค่าความชื้นเกินกว่า หรือเท่ากับค่าที่กำหนดไว้ ระบบจะส่งสัญญาณปิดน้ำ จากสถานการณ์ดังกล่าว เราสามารถเขียนขั้นตอนวิธีได้ดังนี้ครับ 1. อ่านค่าความชื้นของดิน 2. ให้ H แทนค่าความชื้นดังกล่าว 3. ถ้า H น้อยกว่า 0.1 แล้ว ส่งสัญญาณเปิดน้ำ ถ้าเงื่อนไขไม่เป็นจริงส่งสัญญาณปิดน้ำ จากขั้นตอนวิธีดังกล่าว เป็นการทำงานเพียงครั้งเดียว ดังนั้น เพื่อให้ระบบรดน้ำ สามารถทำงานได้อย่างต่อเนื่อง เราสามารถเพิ่มการทำงาน ในขั้นตอนวิธีได้ดังนี้ครับ ซึ่งเมื่อเราเพิ่มขั้นตอนการทำซ้ำทุก ๆ 1 วินาที ระบบรดน้ำจะมีการอ่านค่าความชื้น และตัดสินใจทำงานทุก ๆ 1 วินาทีนั่นเองครับ นอกจากนี้เราสามารถนำขั้นตอนวิธี มาเขียนในรูปแบบของผังงานได้ดังนี้ [เสียงดนตรี] (คุณครูโชติช่วง) จากตัวอย่างที่ผ่านมาแล้ว เราจะพบว่าเงื่อนไขที่ใช้เป็นเงื่อนไขอย่างง่าย นั่นก็คือเปรียบเทียบค่าความชื้นกับค่าที่กำหนด แต่ถ้าเราต้องการเงื่อนไขที่ซับซ้อนมากขึ้น เช่น ต้องการเปรียบเทียบทั้งค่าความชื้น และอุณหภูมิกับค่าที่กำหนด เพื่อให้ระบบสามารถทำงานได้แม่นยำมากขึ้น เราจะมีวิธีการสร้างเงื่อนไขที่ซับซ้อนนี้อย่างไร เรามาดูกันครับ เราลองมาพิจารณา ตารางค่าความจริงต่อไปนี้กันนะครับ หากมีเงื่อนไข A และ B ซึ่งมีค่าความจริงดังนี้ เราจะพบว่าค่าความจริงของตัวดำเนินการและ จะเป็นจริงกรณีเดียว คือ เมื่อทั้ง A และ B เป็นจริง ค่าความจริงของตัวดำเนินการหรือ จะเป็นเท็จกรณีเดียว คือเมื่อทั้ง A และ B เป็นเท็จ และตัวดำเนินการพิเศษของ A จะมีค่าตรงข้ามกับ A ดังแสดงในตารางนี้นะครับ เมื่อเราทราบแล้วว่า เราสามารถสร้างเงื่อนไขที่ซับซ้อน โดยใช้ตัวดำเนินการและเข้ามาช่วย ในการตรวจสอบค่าความชื้นและอุณหภูมิ เพื่อเปรียบเทียบกับค่าคงที่ที่กำหนด เช่น ถ้าระบบอ่านค่าความชื้นได้ 0.08 และอ่านค่าอุณหภูมิได้ 35 องศา เราจะพบว่าเงื่อนไขทั้ง 2 มีค่าความจริงเป็นจริงและจริง ดังนั้น ระบบจะส่งสัญญาณเปิดน้ำนั่นเองครับ เอ๊ะ ถ้าหากว่าระบบอ่านค่าความชื้นได้ 0.08 และอ่านค่าอุณหภูมิได้ 28 องศา นักเรียนคิดว่าระบบจะทำงานอย่างไรครับ [เสียงนาฬิกานับถอยหลัง] (คุณครูโชติช่วง) เรามาพิจารณา อีกสถานการณ์กันนะครับ ครูตรวจข้อสอบของนักเรียน 5 คน และติดประกาศคะแนนไว้หน้าห้อง หากเราต้องการเขียนขั้นตอนวิธี เพื่อหาคะแนนสูงสุดของนักเรียนกลุ่มนี้ นักเรียนจะทำอย่างไรครับ ขั้นตอนวิธีของสถานการณ์นี้คือ เราจะกำหนดตัวแปร Max แทนค่าสูงสุดที่พบ โดยเริ่มต้นให้ Max มีค่าเป็นข้อมูลตัวแรกที่พบ พิจารณาข้อมูลตัวถัดไปทีละจำนวน เราจะเรียกข้อมูลตัวที่กำลังพิจารณาว่า X เปรียบเทียบค่า X กับค่า Max ถ้า X มากกว่า Max แล้วให้ Max มีค่าเท่ากับ X จากนั้นทำซ้ำจนครบทุกตัว จะพบว่า Max คือคะแนนสูงสุด ซึ่งเราสามารถเขียนขั้นตอนวิธีได้ดังนี้ครับ เอาล่ะครับ หลังจากนักเรียนได้เรียนรู้เรื่องขั้นตอนวิธี ครูก็อยากให้นักเรียนลองทำกิจกรรมหาค่าต่ำสุด ในหนังสือเรียนกันดูนะครับ แล้วพบกันใหม่ในคลิปถัดไป สวัสดีครับ [เสียงดนตรี]