Algorithm design แนวคิดการออกแบบขั้นตอน หมายถึงอะไร

  • แนวคิดการออกแบบขั้นตอน Algorithm Design
  • การออกแบบขั้นตอนวิธี
  • การออกแบบขั้นตอนวิธี
  • สอนไพธอน Python 3: การสร้างและเรียกใช้งาน module
  • การออกแบบขั้นตอนการทำงานและการเขียนโปรแกรมด้วยภาษา python

Show

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

ติชมได้นะคะ

Algorithm design แนวคิดการออกแบบขั้นตอน หมายถึงอะไร

การออกแบบขั้นตอนวิธี

Algorithm design แนวคิดการออกแบบขั้นตอน หมายถึงอะไร

การออกแบบขั้นตอนวิธี

Algorithm design แนวคิดการออกแบบขั้นตอน หมายถึงอะไร

สอนไพธอน Python 3: การสร้างและเรียกใช้งาน module

วิธีการสร้าง module ที่เก็บฟังก์ชันรวมถึงคลาสเพื่อให้ไฟล์ .py อื่นเรียกใช้งานได้
ใช้ sys.path ในการแสดง path ที่ Python interpreter ใช้ในการค้นหาที่ตั้งของ module
=== ดาวน์โหลดไฟล์ตัวอย่างได้ที่ https://goo.gl/rylZ0k
============
playlist สอนภาษาไพธอน Python เบื้องต้น
https://www.youtube.com/watch?v=DI7eca5Kzdc\u0026list=PLoTScYm9O0GH4YQs9t4tf2RIYolHt_YwW
============
playlist สอนภาษาไพธอน Python การเขียนโปรแกรมเชิงวัตถุ (OOP: ObjectOriented Programming)
https://www.youtube.com/watch?v=4bVBSluxJNI\u0026list=PLoTScYm9O0GF_wbU7layLaSuHjzhIRc9
============
playlist สอนภาษา R เบื้องต้น
https://www.youtube.com/watch?v=oy4qViQLXsI\u0026list=PLoTScYm9O0GF6qjrRuZFSHdnBXD2KVICp
============
playlist สอนภาษาจาวา Java เบื้องต้น
https://www.youtube.com/watch?v=O3rW9JvADfU\u0026list=PLoTScYm9O0GF26yW0zVc2rzjkygafsILN
============
playlist สอนการเขียนโปรแกรมเชิงวัตถุด้วย Java เบื้องต้น
https://www.youtube.com/watch?v=zC_0xOSX1dY\u0026list=PLoTScYm9O0GEvHKqqibAdVFwVe_2ln8W
============
playlist สอนการทำ Unit Test ภาษาจาวา Java
https://www.youtube.com/watch?v=R11yg8hKApU\u0026list=PLoTScYm9O0GHiK3KNdH_PrNB0G3kb1Bi
============
playlist สอนภาษา C เบื้องต้น
https://www.youtube.com/watch?v=Z_u8Nh_Zlqc\u0026list=PLoTScYm9O0GHHgz0S1tSyIl7vkG0y105z
============
playlist สอนภาษา C เบื้องต้น
https://www.youtube.com/watch?v=hhl49jwOIZI\u0026list=PLoTScYm9O0GE4trrXPozJRwaY7V9hx8K
============
playlist สอนภาษา C++ เบื้องต้น
https://www.youtube.com/watch?v=_NHyJBIxc40\u0026list=PLoTScYm9O0GEfZwqM2KyCBcPTVsc6cU_i
============
playlist สอนภาษา PHP เบื้องต้น
https://www.youtube.com/watch?v=zlRDiXjYVo4\u0026list=PLoTScYm9O0GH_6LARFxozL_viEsXV2wgO
============
เชิญสมัครเป็นสมาชิกของช่องนี้ได้ที่
https://www.youtube.com/subscription_center?add_user=prasertcbs

Algorithm design แนวคิดการออกแบบขั้นตอน หมายถึงอะไร

การออกแบบขั้นตอนการทำงานและการเขียนโปรแกรมด้วยภาษา python

Algorithm design แนวคิดการออกแบบขั้นตอน หมายถึงอะไร

นอกจากการดูหัวข้อนี้แล้ว คุณยังสามารถเข้าถึงบทวิจารณ์ดีๆ อื่นๆ อีกมากมายได้ที่นี่: ดูวิธีอื่นๆWiki

  แนวคิดเชิงคำนวณ (Computational Thinking)

การออกแบบอัลกอริทึม (Algorithm)

       

ภาพที่ 1 การออกแบบอัลกอริทึม
ที่มา https://www.wired.com/story/want-to-prove-your-business-is-fair-audit-your-algorithm/,JESSI HEMPEL

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

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

ภาพที่ 2 การลำดับแต่งตัวมาโรงเรียน
ที่มา https://www.freepik.com/free-vector/hand-drawn-children-back-school-collection_4943651.htm#page=1&query=student%20uniform&position=43, freepik

คุณสมบัติของอัลกอริทึม

          1. มีความถูกต้อง (correctness) ความถูกต้องเป็นคุณสมบัติข้อแรกที่สำคัญจะต้องพิจารณา ต้องได้ผลลัพธ์ที่ถูกต้อง ซึ่งถ้าผลลัพธ์ที่ได้จากอัลกอริทึมไม่ถูกต้อง จะถือว่าไม่ใช่อัลกอริทึมที่ดี

          2. ใช้เวลาในการปฏิบัติงานน้อยที่สุด (efficiency) อัลกอริทึมที่ดีต้องใช้เวลาในการปฏิบัติงานน้อย มีขั้นตอนในการปฏิบัติงานที่ถูกต้อง

          3. ต้องมีลำดับขั้นตอนที่ชัดเจน ในการประมวลผลชุดคำสั่งต่าง ๆ ที่ถูกกำหนดด้วยกฎเกณฑ์ในการแก้ปัญหาของ อัลกอริทึม จะต้องประมวลผลเป็นลำดับตามขั้นตอน เพราะการแก้ปัญหาด้วยคอมพิวเตอร์จะต้อง มีลำดับขั้นตอนที่แน่นอน ซึ่งแต่ละขั้นตอนของอัลกอริทึมจะต้องทำหน้าที่อย่างชัดเจนและต่อเนื่องโดยการเริ่มต้นทำงานแต่ละขั้นตอนมีการรับและส่งข้อมูลต่อเนื่องกันไปจนสิ้นสุดการทำงาน ถ้าลำดับไม่ดีอาจจะทำให้การประมวลผลผิดพลาดได้

          4. ใช้เนื้อที่ในหน่วยความจำน้อยที่สุด เนื้อที่ในหน่วยความจำจะถูกใช้สำหรับเก็บค่าของตัวแปร และเก็บคำสั่งที่ใช้ในการทำงาน ดังนั้น ถ้าอัลกอริทึมยาวเกินความจำเป็น จะทำให้ใช้เนื้อที่มาก และ ถ้ามีตัวแปรมากเกินความจำเป็น ก็จะทำให้เสียเนื้อที่ในหน่วยความจำไปด้วย

          5. มีความยืดหยุ่นในการใช้งาน

          6. ใช้เวลาในการพัฒนาน้อยที่สุด เมื่อนำอัลกอริทึมไปแปลงเป็นโปรแกรมภาษาคอมพิวเตอร์แล้วจะต้องใช้เวลาน้อยที่สุด

          7. ง่ายต่อการทำความเข้าใจ (readability) อ่านง่ายเข้าใจลำดับขั้นตอนได้ง่าย มีความชัดเจนของขั้นตอน

เครื่องมือช่วยในการเขียนอัลกอริทึม

          การออกแบบอัลกอริทึม เป็นแนวทางในการเขียนโปรแกรม ช่วยให้การเขียนโปรแกรมทำได้ง่ายขึ้น ช่วยให้โปรแกรมมีข้อผิดพลาดน้อยลง นอกจากนี้ยังช่วยตรวจสอบการทำงานของโปรแกรม ทำให้ทราบขั้นตอนการทำงานของโปรแกรมได้อย่างรวดเร็ว โดยไม่ต้องดูจากโปรแกรมจริงในการเขียนอัลกอริทึม มีเครื่องมือช่วยในการเขียนที่นิยมใช้ 3 แบบ คือ

          1. บรรยาย (narrative description) เป็นการอธิบายแบบใช้ภาษาที่เราสื่อสารกันทั่วไป เป็นการแสดงขั้นตอนการทำงานในลักษณะการบรรยายเป็นข้อความด้วยภาษาพูดใด ๆ เช่น ภาษาไทย ภาษาอังกฤษ ภาษาญี่ปุ่น หรือ ภาษาจีน เป็นต้น ขึ้นอยู่กับความถนัดของผู้เขียนอัลกอริทึม มักเขียนบรรยายขั้นตอนการทำงานเป็นข้อ ๆ เช่น การต้มบะหมี่กึ่งสำเร็จรูป

          1. เทน้ำสะอาดใส่หม้อ และต้มน้ำจนเดือด

          2. ฉีกซองและนำบะหมี่กึ่งสำเร็จรูปใส่ลงในหม้อ

          3. เทเครื่องปรุงลงในหม้อ

          4. ปิดฝา

          5. รอประมาณ 3 นาที

          6. เทใส่ชามรับประทานได้

          2. ผังงาน (flowchart) เป็นการใช้รูปภาพสัญลักษณ์ แทนขั้นตอนการเขียนโปรแกรมช่วยลำดับขั้นตอนการทำงานของโปรแกรม และสามารถนำไปเขียนโปรแกรมได้อย่างถูกต้อง ทำให้ตรวจสอบ และแก้ไขโปรแกรมได้ง่าย เมื่อเกิดข้อผิดพลาดช่วยให้การดัดแปลง แก้ไข ทำได้อย่างสะดวกและรวดเร็ว ผู้อื่นสามารถศึกษาการทำงานของโปรแกรมได้อย่างง่าย และรวดเร็ว มากขึ้น

          3. รหัสเทียม (pseudo code) เป็นการเขียนคำอธิบายขั้นตอนการทำงานของโปรแกรม โดยใช้ถ้อยคำผสมระหว่างภาษาอังกฤษและภาษาการเขียนโปรแกรมแบบโครงสร้าง  ซึ่งจะช่วยให้ผู้เขียนโปรแกรมสามารถพัฒนาขั้นตอนต่าง ๆ  ให้เป็นโปรแกรมได้ง่ายขึ้น  ส่วนใหญ่มักใช้คำเฉพาะ  (Reserve Word)  ที่มีในภาษาการเขียนโปรแกรมและมักเขียนด้วยตัวอักษรตัวใหญ่  รหัสเทียมที่ดี  จะต้องมีความชัดเจน  สั้น  และได้ใจความ  ข้อมูลต่าง ๆ  ที่ใช้จะถูกเขียนอยู่ในรูปของตัวแปร

ภาพที่ 3 ตัวอย่างรหัสเทียม
ที่มาhttps://www.researchgate.net/figure/Pseudo-Code-Example-of-a-GEC_fig1_220930688, Joshua Adams

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

แหล่งเรียนรู้เพิ่มเติม

คลิปวิดีโอ 

อัลกอริทึม Algoritms(Computational thinking) ตอน อัลกอริทึมคืออะไร Kids Coding

YouTube Video

ที่มา:https://www.youtube.com/watch?v=7ITAF0CkPwg&list=PLTQ_mPQTqStvyLzepkFNtq-2lJ2pEEQ81&index=8

การแสดงลำดับขั้นตอน อัลกอริทึม Algorithms(Computational thinking)หลงทางในสวนสัตว์

YouTube Video

ที่มา:https://www.youtube.com/watch?v=xKhkdHhO3ck&list=PLTQ_mPQTqStvyLzepkFNtq-2lJ2pEEQ81&index=5

แสดงลำดับขั้นตอนด้วยสัญลักษณ์ Algoritms(Computational thinking) รองเท้าของลิปดา

YouTube Video

ที่มา:https://www.youtube.com/watch?v=1fw3AEuZzF8&list=PLTQ_mPQTqStvyLzepkFNtq-2lJ2pEEQ81&index=6

การแสดงลำดับขั้นตอนด้วยข้อความ Algoritms(Computational thinking) ตอนเครื่องบินจ๋า

YouTube Video

ที่มา:https://www.youtube.com/watch?v=5Zp7w9LUesY&list=PLTQ_mPQTqStvyLzepkFNtq-2lJ2pEEQ81&index=7

แสดงลำดับขั้นตอนด้วยภาพหรือข้อความ Algoritms(Computational thinking) ลิปดาหมวกแดง

YouTube Video

ที่มา:https://www.youtube.com/watch?v=HDS8sc0E8U0&list=PLTQ_mPQTqStvyLzepkFNtq-2lJ2pEEQ81&index=9

แหล่งที่มา

https://www.scimath.org/lesson-technology/item/10560-2019-08-28-02-43-20. สืบค้นเมื่อ 12 มกราคม 2564

กิจกรรมที่ 4.3

การคิดเชิงนามธรรม (Abstraction)

ส่งคำตอบภายในวันพฤหัสบดี ที่ 21 มกราคม 2564 เวลา 24.00 น.

หน่วยที่ 4 แนวคิดเชิงคำนวณ กิจกรรมที่ 4.4


การออกแบบขั้นตอนมีอะไรบ้าง

กระบวนการของการคิดเชิงออกแบบ (Design Thinking Process) 1. Empathize – เข้าใจปัญหา 2. Define – กำหนดปัญหาให้ชัดเจน 3. Ideate – ระดมความคิด.
ขั้นตอนที่ 1 : ค้นพบ – Discover..
ขั้นตอนที่ 2 : บ่งชี้ / กำหนด – Define..
ขั้นตอนที่ 3 : พัฒนา – Develop..
ขั้นตอนที่ 4 : นำไปปฎิบัติจริง – Deliver..

การพิจารณารูปแบบ (Pattern Recognition) หมายถึงอะไร

Pattern Recognition (การจดจำรูปแบบ) เมื่อเราย่อยปัญหาออกเป็นส่วนเล็กๆ ขั้นตอนต่อไปคือการหารูปแบบหรือลักษณะที่เหมือนกันของปัญหาเล็กๆ ที่ถูกย่อยออกมา เช่น หากต้องวาดซีรี่ส์รูปแมว แมวทั้งหลายย่อมมีลักษณะบางอย่างที่เหมือนกัน พวกมันมีตา หาง ขน และชอบกินปลา และร้องเหมียวๆ ลักษณะที่มีร่วมกันนี้ เราเรียกว่ารูปแบบ เมื่อเรา ...

ข้อใดคือความหมายของการออกแบบขั้นตอนวิธี *

2.1 ความหมายของขั้นตอนวิธี ขั้นตอนวิธี หรือ algorithm คือ เป็นการออกแบบขั้นตอนการทํางานของโปรแกรม คอมพิวเตอร์ ซึ่งผ่านการวิเคราะห์และแยกแยะเพื่อการแก้ปัญหาต่าง ๆตามลําดับขั้น

ขั้นตอนการคิดเชิงคำนวณมีกี่ขั้นตอนอะไรบ้าง

1. Introduction. 2. การออกแบบอัลกอริทึม 3. การคิดเชิงนามธรรม 4. การพิจารณารูปแบบ