Important Announcement
PubHTML5 Scheduled Server Maintenance on (GMT) Sunday, June 26th, 2:00 am - 8:00 am.
PubHTML5 site will be inoperative during the times indicated!

Home Explore Lesson 2 การแก้ปัญหาและขั้นตอนวิธี-part3-2

Lesson 2 การแก้ปัญหาและขั้นตอนวิธี-part3-2

Published by tonic19772002, 2022-09-12 06:48:15

Description: Lesson 2 การแก้ปัญหาและขั้นตอนวิธี-part3-2

Search

Read the Text Version

Lesson 2 การแกป้ ญั หาและขน้ั ตอนวิธี (Part3) วิทยาการคานวณ ม.4 Suwanna Jitpluem (KruNice)

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

การออกแบบขน้ั ตอนวิธี : Exam2.p3l.e1 การตดั สินใจรดนา้ ตน้ ไมข้ องระบบรดนา้ ตน้ ไมอ้ ตั โนมตั ิ การตัดสินใจรดน้าต้นไม้ในขั้นตอนวิธีของระบบรดน้า ต้นไม้อัตโนมัติ ระบบจะต้องอ่านข้อมูลความชื้นของ ดินแล้วเปรียบเทียบกับค่าที่กาหนดไว้ (สมมติค่า ความชื้นที่กาหนดเป็น 0.1 หน่วย) หากค่าความชื้นต่า กวา่ คา่ ที่กาหนด ให้ระบบส่งสัญญาณเปิดน้า และหากมี ค่าความชื้นเกินกว่าหรือเท่ากับค่าที่กาหนดไว้ให้ระบบ ส่งสัญญาณปิดนา้

Example การออกแบบขนั้ ตอนวิธี : การตัดสินใจรดนา้ ตน้ ไมข้ องระบบรดนา้ ต้นไมอ้ ตั โนมตั ิ (ตอ่ ) ขัน้ ตอนวิธี การตดั สินใจรดน้าต้นไม้ 1. อา่ นคา่ ความชื้นของดิน 2. ให้ H แทนคา่ ความชื้นดงั กล่าว 3. ถ้า H < 0.1 แล้ว ถ้าเงือ่ นไขเปน็ จริง  สง่ สญั ญาณเปดิ น้า ถ้าเงื่อนไขไมเ่ ปน็ จริง  สง่ สญั ญาณปดิ นา้ **เปน็ การตดั สินใจเพียงครง้ั เดียว**

Example การออกแบบขน้ั ตอนวิธี : ขอ้ มลู เขา้ : คา่ ความชื้นของดิน การตัดสินใจรดนา้ ตน้ ไมข้ องระบบรดนา้ ต้นไมอ้ ตั โนมตั ิ (ต่อ) ข้ันตอนวิธี : ควบคุมการเปิดปดิ น้า ของเครื่องรดนา้ ตน้ ไม้ เพื่อความสมบูรณ์ของข้ันตอนวิธี จึงส่ังให้ทางาน ข้อมูลออก : สัญญาณเปิดปดิ นา้ ซา้ ๆ ต่อเนือ่ งกนั ไป 1. ทาซา้ ทุกๆ 1 วินาที 1.1 อ่านคา่ ความชื้นของดิน 1.2 ให้ H แทนค่าความชื้นดงั กลา่ ว 1.3 ถ้า H < 0.1 แล้ว ถา้ เงื่อนไขเปน็ จริง ผงั งานระบบการรดนา้ ตน้ ไมอ้ ตั โนมตั ิ  สง่ สัญญาณเปิดนา้ ถ้าเงื่อนไขไม่เป็นจริง  สง่ สญั ญาณปดิ นา้

Example การออกแบบขน้ั ตอนวิธี : การตัดสินใจรดนา้ ตน้ ไมข้ องระบบรดนา้ ต้นไมอ้ ตั โนมตั ิ (ต่อ) ทดสอบการเขียนโปรแกรม https://blockly.programming.in.th/plant/

การออกแบบขน้ั ตอนวิธี : Example การคานวณคะแนนสอบ (หาค่าสงู สดุ : Maximum) ขอ้ มลู เขา้ : รายการข้อมลู ข้ันตอนวิธี : หาค่าสงู ที่สดุ ของข้อมูล ขัน้ ตอนวิธี การหาค่าสูงสุดของคะแนนสอบ 1. พิจารณาข้อมูลตัวแรก ให้ Max มีค่าเป็น ในรายการ ข้อมูลออก : คา่ สูงสุดของขอ้ มูล ขอ้ มลู ดงั กล่าว 2. พิจารณาข้อมูลตวั ถัดไป ทีละจานวน 2.1 เรียกข้อมูลตัวที่กาลงั พิจารณาว่า x 2.2 ถา้ x > Max แล้ว ให้ Max  x 3. ตอบวา่ ค่าสูงที่สดุ คือ Max

Example การออกแบบขน้ั ตอนวิธี : การคานวณคะแนนสอบ (หาค่าสงู สดุ : Maximum) ทดสอบการเขียนโปรแกรม https://blockly.programming.in.th/max/

การออกแบบขนั้ ตอนวิธี : Example การคานวณคะแนนสอบ (หาคา่ ตา่ สดุ : Minimum) ขอ้ มลู เขา้ : รายการขอ้ มลู ขนั้ ตอนวิธี : หาค่าต่าที่สุดของข้อมลู ข้นั ตอนวิธี การหาคา่ ต่าสุดของคะแนนสอบ 1. พิจารณาข้อมูลตัวแรก ให้ Min มีค่าเป็น ในรายการ ขอ้ มูลออก : ค่าต่าสุดของข้อมลู ข้อมูลดังกล่าว 2. พิจารณาขอ้ มลู ตวั ถดั ไป ทีละจานวน 2.1 เรียกขอ้ มูลตวั ทีก่ าลังพิจารณาว่า x 2.2 ถ้า x > Min แล้ว ให้ Min  x 3. ตอบว่าค่าสูงทีส่ ดุ คือ Min

Example การออกแบบขน้ั ตอนวิธี : การคานวณคะแนนสอบ (หาคา่ ตา่ สดุ : Minimum) ทดสอบการเขียนโปรแกรม https://blockly.programming.in.th/min/

การออกแบบขน้ั ตอนวิธี : Example การคานวณคะแนนสอบ (หาคา่ เฉลีย่ : Average) ข้อมลู เขา้ : รายการข้อมูล ขนั้ ตอนวิธี : หาค่าเฉลี่ยของขอ้ มลู ขั้นตอนวิธี การหาค่าเฉลี่ยของคะแนนสอบ (รจู้ านวนขอ้ มลู : 40 จานวน) ในรายการ 1. ให้ Total มีคา่ เปน็ 0 ข้อมลู ออก : ค่าเฉลี่ยของข้อมูล 2. พิจารณาข้อมูล ทีละจานวนจนครบจานวน 2.1 เรียกขอ้ มลู ตวั ทีก่ าลงั พิจารณาวา่ x 2.2 ให้ Total  Total + x 3. ตอบว่าคา่ เฉลี่ยคือ Total / 40

การออกแบบขน้ั ตอนวิธี : Example การคานวณคะแนนสอบ (หาคา่ เฉลีย่ : Average) ข้อมูลเขา้ : รายการข้อมลู ขั้นตอนวิธี : หาคา่ เฉลี่ยของข้อมลู ข้ันตอนวิธี การหาค่าเฉลี่ยของคะแนนสอบ (เพื่อให้ครอบคลุมมากขึ้น จึงให้นับจานวนข้อมูล ในรายการ ไปพร้อมๆ กับการหาผลรวมของข้อมูล) ขอ้ มูลออก : ค่าเฉลีย่ ของข้อมลู 1. ให้ Total มีค่าเป็น 0 2. ให้ Count มีค่าเปน็ 0 Average 3. พิจารณาข้อมลู ทีละจานวน 3.1 เรียกข้อมูลตัวทีก่ าลังพิจารณาว่า x 3.2 ให้ Total  Total + x 3.3 ให้ Count  Count + 1 4. ตอบว่าค่าเฉลีย่ คือ Total / Count

Example การออกแบบขน้ั ตอนวิธี : การคานวณคะแนนสอบ (หาคา่ เฉลีย่ : Average) ทดสอบการเขียนโปรแกรม https://blockly.programming.in.th/avr/

Example การออกแบบขน้ั ตอนวิธี : การนบั จานวนข้อมลู ทีม่ ีคา่ ไมเ่ กินคา่ ทีก่ าหนด (การนบั จานวน : Count) ทดสอบการเขียนโปรแกรม https://blockly.programming.in.th/count/

Example การออกแบบขน้ั ตอนวิธี : การลดราคาเข้าสวนสตั ว์ ทดสอบการเขียนโปรแกรม https://blockly.programming.in.th/zoo/

คา่ ความ คา่ ความ A and B A or B A not B 2.3.2 จริงของ A จริงของ B 1. การสร้างเงื่อนไขอยา่ งง่าย จริง จริง จริง จริง เท็จ จริง เท็จ เทจ็ จริง เท็จ เทจ็ จริง เท็จ จริง จริง เท็จ เท็จ เทจ็ เท็จ จริง การออกแบบเงือ่ นไขที่ถกู ต้องและชัดเจนเป็น ปจั จัยสาคัญของการออกแบบข้ันตอนวิธี โดย การออกแบบ เงื่อนไขอย่างง่าย มักจะเป็นการเปรียบเทียบ มากกว่า น้อยกว่า หรือไม่เท่ากนั การออกแบบเงื่อนไขที่บางคร้ัง จะพบเงื่อนไข และพิจารณา ที่ระบุไว้ อาจจะประกอบด้วยเงื่อนไขย่อยๆ เงือ่ นไข ตวั ดาเนินการเปรียบเทียบ อีกหลายเงื่อนไข ซึ่งเงื่อนไขย่อยเหล่านี้ จะ เชื่อมด้วยตัวดาเนินการตรรกะ เช่น “และ” เท่ากัน == (AND) “หรือ” (OR) “นิเสธ” (NOT) ไมเ่ ท่ากัน != 2. การสรา้ งเงื่อนไขดว้ ยตัวดาเนินการตรรกะ มากกวา่ > มากกว่าหรือเท่ากบั >= นอ้ ยกว่า < นอ้ ยกว่าหรือเทา่ กบั <=

End Part 3


Like this book? You can publish your book online for free in a few minutes!
Create your own flipbook