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 หน่วยที่1_การออกแบบและการเขียนอัลกอริทึม

หน่วยที่1_การออกแบบและการเขียนอัลกอริทึม

Published by Marisa Khamwern, 2021-08-09 14:44:23

Description: สรุปหน่วยที่1 การออกแบบและการเขียนอัลกอริทึม

Search

Read the Text Version

1หนว่ ยการเรียนร้ทู ่ี การออกแบบและการเขียนอลั กอรทิ มึ ตวั ชี้วดั • ออกแบบอัลกอรทิ มึ ที่ใช้แนวคดิ นามธรรมเพอื่ แกป้ ัญหาหรอื อธบิ ายการทางานที่พบในชวี ิตจริง • ออกแบบและเขยี นโปรแกรมอยา่ งงา่ ยเพ่อื แกป้ ญั หาทางคณติ ศาสตร์ หรือวิทยาศาสตร์ นางสาวมารสิ า คาเวิน

แนวคดิ เชงิ นามธรรม แนวคดิ เชิงนามธรรม (abstraction) : เปน็ เครอ่ื งมอื ในการแก้ปัญหาซ่งึ เปน็ องค์ประกอบของแนวคดิ เชงิ คานวณ โดยมแี นวคดิ ในการแก้ไขปญั หา อยา่ งเป็นระบบ เพือ่ ย่อยสถานการณ์และสามารถกาหนดข้ันตอนการแกป้ ญั หาไดอ้ ย่างชัดเจน พจิ ารณาเฉพาะส่วนท่เี ปน็ สาระสาคัญ โดยแยกสว่ นท่ไี มใ่ ช่สาระสาคญั ออกไป ส่วนที่เปน็ สาระสาคัญ

ใชแ้ นวคิดเชงิ นามธรรมในการแก้ปญั หาทางคณิตศาสตร์ หากต้องการหาแนวคิดเชิงนามธรรมของสเ่ี หลี่ยมมมุ ฉาก สามารถกระทาได้ โดยพจิ ารณาเฉพาะสาระสาคัญ และจุดร่วมของส่เี หล่ยี มของมมุ ฉาก ส่ีเหลีย่ มจตั รุ สั สีเ่ หล่ยี มผนื ผ้า • ประกอบดว้ ยด้าน 4 ดา้ น • ประกอบดว้ ยด้าน 4 ด้าน • ทกุ มมุ เป็นมมุ ฉาก • ทุกมุมเปน็ มุมฉาก จากขอ้ มลู ขา้ งตน้ เมอื่ ไมพ่ จิ ารณาสิง่ ทีไ่ มจ่ าเป็น เช่น ความยาวของแต่ละด้าน เป็นต้น ดงั นั้น แนวคดิ เชงิ นามธรรมของสเี่ หลยี่ มมมุ ฉาก คอื สีเ่ หลี่ยมใด ๆ ท่ปี ระกอบดว้ ยด้าน 4 ด้าน และทกุ มมุ ของสเี่ หลย่ี มเป็นมุมฉาก

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

อลั กอรทิ มึ เบอื้ งตน้ อลั กอรทิ มึ (algorithm) : ระเบยี บวธิ ีหรอื ข้ันตอนวิธีท่ดี าเนินการได้ด้วยคอมพวิ เตอร์เพือ่ ใชใ้ นการแกไ้ ขปัญหา โดยเป็นกระบวนการแก้ไขปญั หาที่สามารถอธิบายเป็นข้นั ตอนที่ชดั เจน ซ่งึ สามารถแบ่งได้ 3 รปู แบบ ดงั นี้ รูปแบบการเขยี นอลั กอริทมึ การเขียนอลั กอรทิ ึม การเขยี นอัลกอรทิ ึม การเขยี นอลั กอรทิ ึม ดว้ ยภาษาธรรมชาติ ด้วยรหัสจาลอง ดว้ ยผงั งาน (Natural Language) (Pseudo Code) (Flowchart)

การเขียนอัลกอริทมึ ด้วยภาษาธรรมชาติ การบรรยายข้ันตอนการทางานของอัลกอริทึมใดๆ โดยใชภ้ าษามนุษย์เพอื่ อธบิ ายถึงลาดับขนั้ ตอนการทางาน ตามลาดับการทางานกอ่ นหลงั ตวั อยา่ ง การอธิบายการการคานวณหาพนื้ ท่สี เ่ี หลี่ยม และแสดงผลลัพธก์ ารคานวณ ดว้ ยการใชภ้ าษาธรรมชาติ สตู รการคานวณหาพืน้ ที่ส่เี หลี่ยม พน้ื ที่สีเ่ หลย่ี ม = ความกวา้ ง x ความยาว เร่มิ ต้นการทางาน นาเขา้ ขอ้ มูล นาเข้าขอ้ มลู ความกว้างของส่ีเหลี่ยม ความยาวของสเ่ี หลยี่ ม จบการทางาน แสดงผลพืน้ ทสี่ เี่ หลีย่ ม คานวณพื้นที่ส่เี หล่ียม ความกวา้ ง x ความยาว

การเขียนอลั กอริทมึ ด้วยรหัสจาลอง เปน็ คาสง่ั ทจี่ าลองความคิดเปน็ ลาดบั ขน้ั ตอนโดยใชส้ ัญลกั ษณ์เป็นประโยคภาษาอังกฤษ ตัวอยา่ งประโยคภาษาอังกฤษเขยี นจาลองคาสั่ง เชน่ Input a number : ใส่ข้อมูลนาเขา้ เป็นคา่ ตวั เลข Find the sum of the number : คานวณรวมคา่ ตวั เลขท่ีนาเข้า ตัวอย่าง การอธิบายการการคานวณหาพืน้ ทสี่ ีเ่ หลี่ยม และแสดงผลลพั ธ์การคานวณ ด้วยการใชร้ หัสจาลอง สตู รการคานวณหาพ้นื ที่ส่ีเหลีย่ ม พืน้ ทส่ี ี่เหล่ยี ม = ความกวา้ ง x ความยาว รหัสจาลอง INPUT width INPUT length COMPLETE area OUTPUT area STOP = width x length START คานวณพื้นทสี่ ่เี หล่ียม ภาษาธรรมชาติ นาเข้าข้อมลู นาเขา้ ข้อมลู ความกวา้ ง x ความยาว แสดงผล จบการทางาน ความกวา้ งของสเี่ หลี่ยม ความยาวของสีเ่ หล่ยี ม พน้ื ท่ีสเี่ หล่ยี ม เร่ิมต้น การทางาน

การเขียนอลั กอรทิ มึ ด้วยผงั งาน หลกั การเขียนอัลกอริทึมด้วยผังงานจะอา้ งองิ จากกระบวนการทางคอมพวิ เตอร์ 3 กระบวนการ ไดแ้ ก่ การรับขอ้ มลู การประมวลผล การแสดงผลลพั ธ์ (input) (process) (output)

โดยการการเขยี นอัลกอริทมึ ด้วยผงั งาน จะนิยมใชส้ ญั ลกั ษณ์ในการเขียนผงั งาน ซ่งึ แตล่ ะสญั ลกั ษณจ์ ะมีความหมายดงั น้ี ภาพสญั ลกั ษณ์ ความหมาย ภาพสญั ลกั ษณ์ ความหมาย เรม่ิ ตน้ /สน้ิ สดุ การทางาน แสดงผลทางหนา้ จอ รบั ขอ้ มลู / การกาหนดคา่ แสดงผลโดยไมก่ าหนดอุปกรณ์ หรอื การประมวลผล รบั ข้อมูลทางแปน้ พมิ พ์ predefined process หรือโปรแกรมยอ่ ย ทางเลือก เงื่อนไข ทศิ ทางการทางาน แสดงผลทาง เคร่อื งพิมพ์

รปู แบบการเขียนโปรแกรมคอมพิวเตอร์ F F T T โครงสร้างการทางานแบบเรยี งลาดับ โครงสรา้ งการทางานแบบมเี งอ่ื นไข โครงสรา้ งการทางานแบบทาซ้า (sequence structure) (condition structure) (iteration structure)

รปู แบบการเขยี นโปรแกรมคอมพวิ เตอร์

ผงั งานแบบเรียงลาดบั เป็นผังงานทม่ี ีโครงสร้างแบบลาดบั เป็นผังงานที่เขียนเรียงลาดบั การทางานไล่ลงมาตรงๆ จากบนลงลา่ ง ไม่มีความซับซอ้ น ดงั ภาพ

ผังงานแบบเรยี งลาดับ สถานการณ์ ตอ้ งการเขียนผังงานแสดงขนั้ ตอนการถา่ ยภาพ หากเขียนไล่เรียงขนั้ ตอนการถา่ ยภาพออกมาเปน็ ขอ้ ๆ จะได้ดงั นี้ 1. เปดิ กลอ้ งถา่ ยรูป 2. ตั้งค่ากล้องถา่ ยรูป 3. เลอื กบริเวณท่จี ะถา่ ย 4. กดชัตเตอร์

ผงั งานแบบเลอื กกระทาหรอื แบบมเี ง่ือนไข ผงั งานทีม่ โี ครงสร้างแบบมีทางเลอื ก เปน็ ผังงานท่แี สดงกระบวนการทางานที่มกี ารกาหนดเงือ่ นไข เพื่อจะทาหรือไมท่ าอะไรต่อ (แค่ 2 ทางเท่าน้ัน) ดงั ภาพ

ผงั งานแบบเลือกกระทาหรือแบบมเี งอ่ื นไข สถานการณ์ ต้องการเขียนผงั งานแสดงขน้ั ตอนถา่ ยภาพ หากเขียนไล่เรียงข้นั ตอนการถ่ายภาพออกมาเปน็ ข้อๆ จะได้ดงั นี้ 1. ถ่ายภาพ 2. ถา้ ภาพสวย จะเก็บภาพไว้ ถ้าภาพไม่สวย จะลบภาพทงิ้

ผังงานแบบทาซ้า ผงั งานทีม่ โี ครงสรา้ งแบบทาซา้ เป็นผังงานทแ่ี สดงกระบวนการทางานที่มกี ารกาหนดเงือ่ นไขเพือ่ จะทาอะไรซา้ ๆ จนกวา่ จะพอใจ หรอื ทาจนกวา่ จะไม่ตรงตามเงื่อนไข ดังภาพ

ผังงานแบบทาซ้า สถานการณ์: ต้องการเขียนผงั งานแสดงขนั้ ตอนถ่ายภาพให้เพอื่ น หากเขยี นไล่เรียงขั้นตอนการถา่ ยภาพออกมาเปน็ ข้อๆ จะได้ดงั นี้ 1. ถ่ายภาพ 2. ถา้ ภาพสวย จะส่งรูปให้เพือ่ น แต่ถ้าภาพไม่สวย จะถา่ ยใหมจ่ นกว่าจะสวย


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