อัลกอริทึม (Algorithm) และ การเขียนผังงาน (Flowchart)

Slides:



Advertisements
งานนำเสนอที่คล้ายกัน
ข้อสรุปหลักสูตรการอบรมการผลิต รายการเด็ก TV4Kids.
Advertisements

การประเมินผลโครงการ บทที่ 9 ผศ.ญาลดา พรประเสริฐ yalada.
เป็นหลักสำคัญในการนำเสนอเนื้อหา ของบทเรียนคอมพิวเตอร์ช่วยสอนก็คือ ควร นำเสนอภาพที่เกี่ยวข้องกับเนื้อหา ประกอบ กับคำอธิบายสั้นๆ ง่ายๆ แต่ได้ใจความ การใช้ภาพประกอบจะทำให้ผู้เรียน.
คอมพิวเตอร์ช่วยสอน (CAI)
การเขียนโปรแกรม ภาษาซีเบื้องต้น โดย คุณครูปวีณา แนววงศ์
ความรู้เบื้องต้นเกี่ยวกับการเขียนโปรแกรม
หน่วยการเรียนรู้ที่ 2 หลักการแก้ปัญหาด้วยคอมพิวเตอร์
การวิเคราะห์ขั้นตอนวิธีการแก้ปัญหา
บทที่ 3 จัดทำและนำเสนอโครงงานคอมพิวเตอร์
การเขียนผังงานเบื้องต้น (Flow chart)
ความรู้พื้นฐานการเขียนโปรแกรม
ซอฟต์แวร์และการเลือกใช้
ประเภทโครงงาน พัฒนาระบบ (System Development)
การรักษาความปลอดภัยข้อมูลขั้นพื้นฐาน
เรื่อง หลักการเขียนโปรแกรม เบื้องต้น จัดทำโดย นางสาวชาดา ศักดิ์บุญญารัตน์
การพัฒนาผลสัมฤทธิ์ทางการเรียน วิชาการใช้โปรแกรมนำเสนอข้อมูล เรื่องการเชื่อมโยง ภาพนิ่ง ด้วยโปรแกรม Powerpoint2007 โดยใช้ สื่อคอมพิวเตอร์ช่วยสอน CAI ของนักเรียนระดับชั้น.
การพัฒนาบทเรียนคอมพิวเตอร์ช่วยสอน เรื่อง หลักการทำงานของคอมพิวเตอร์ วิชาคอมพิวเตอร์พื้นฐาน สำหรับนักเรียนชั้นมัธยมศึกษาปีที่ 1 โรงเรียนเฉลิมราชประชาอุทิศ.
หลักการแก้ปัญหา อย่างมีขั้นตอน การแก้ปัญหาด้วย กระบวนการทาง เทคโนโลยี สารสนเทศ หลักการ แก้ปัญหา การใช้หลักการใน การแก้ปัญหา.
การจัดกิจกรรมการ เรียนรู้แบบการทำ โครงงานคอมพิวเตอร์ การจัดกิจกรรมการ เรียนรู้แบบการทำ โครงงานคอมพิวเตอร์ ครูชาญณรงค์ ปานเลิศ โรงเรียนพระบางวิทยา ครูชาญณรงค์
ซอร์ฟแวร์ ( Software ). Microsoft excel Microsoft excel Microsoft power point.. Link Link.
Project Management by Gantt Chart & PERT Diagram
การออกแบบและเทคโนโลยี
ผังงาน..(Flow Chart) หมายถึง...
เรื่อง กระบวนการเทคโนโลยีสารสนเทศ
นำเสนอวิธีปฏิบัติที่ดี ด้านกิจกรรมพัฒนานักศึกษา
Material requirements planning (MRP) systems
stack #2 ผู้สอน อาจารย์ ยืนยง กันทะเนตร
กระบวนการพัฒนาซอฟต์แวร์
บทที่ 1 สถาปัตยกรรมของระบบฐานข้อมูล (Database Architecture)
บทที่ 7 การวิเคราะห์และพัฒนาระบบ
บทที่ 3 เทคนิคการจัดทำเอกสาร ของระบบสารสนเทศ
แนวทางการออกแบบโปสเตอร์
บทที่ 1 ความรู้ทั่วไปเกี่ยวกับคอมพิวเตอร์
การบัญชีต้นทุนช่วง (Process Costing).
กลุ่มคำและประโยค ภาษาไทย ม. ๓
สาระการเรียนรู้ ความหมายของอัลกอริทึม วิธีการเขียนผังงานที่ดี
บทที่ 8 การควบคุมโครงการ
บทที่ 3 แฟ้มข้อมูลและฐานข้อมูล
กรอบอัตรากำลังของบุคลากรทางการศึกษาอื่นตามมาตรา 38 ค. (2)
บทที่ 8 การควบคุมระบบสารสนเทศทางการบัญชี : การควบคุมเฉพาะระบบงาน
พื้นฐานการวิจัยและสร้างสรรค์ทางศิลปกรรมศาสตร์
ความรู้เบื้องต้นเกี่ยวกับคอมพิวเตอร์และเทคโนโลยีสารสนเทศ
ขั้นตอนการออกแบบ ผังงาน (Flow Chart)
การเขียนโปรแกรมแบบวนซ้ำ: คำสั่ง while คำสั่ง do….while
บทที่ 7 การวิเคราะห์และพัฒนาระบบ
เนื่องจากข้าราชการและลูกจ้างของสำนักงานสรรพสามิต พื้นที่ และพื้นที่สาขา บางคนยังไม่ยังรู้และไม่เข้าใจในการ ใช้งานระบบผู้กระทำผิดกฎหมายสรรพสามิต ประกอบกับเจ้าหน้าที่กรมสรรพสามิต.
ภาคเรียนที่ ๒ ปีการศึกษา ๒๕๖๐ ผู้สอน : คุณครูภาคภูมิ คล้ายทอง
การบริหารโครงการซอฟต์แวร์
พื้นฐานการออกแบบ กราฟิก หมายถึง ศิลปะแขนงหนึ่งซึ่งใช้การสื่อความหมาย ด้วยเส้น สัญลักษณ์ รูปวาด ภาพถ่าย กราฟ แผนภูมิ การ์ตูน ฯลฯ เพื่อให้สามารถสื่อความหมายของข้อมูลได้ถูกต้องตรง.
ความรู้พื้นฐานการเขียนโปรแกรม
บทที่ 6 แนวคิดเทคโนโลยีเสมือนจริง
บริษัท พัฒนาวิชาการ (2535) จำกัด
บทที่ 9 การทำซ้ำ (Loop).
SMS News Distribute Service
ผู้ช่วยศาสตราจารย์จุฑาวุฒิ จันทรมาลี
การวัดและประเมินผลด้านพุทธิพิสัย (ตามลำดับขั้นการเรียนรู้ของ Benjamin Bloom) รศ. บรรพต พรประเสริฐ.
บรรยายครั้งที่ 8 - กราฟฟิกวิศวกรรม 1
บทที่ 9 การเรียงลำดับข้อมูล (Sorting)
การเขียนโปรแกรม ด้วยภาษาคอมพิวเตอร์
บทที่ 8 การแก้ไขข้อผิดพลาดโปรแกรม(Debugging)
บทที่ 10 วงจรรายได้.
การวัดและประเมินผลด้านพุทธิพิสัย (ตามลำดับขั้นการเรียนรู้ของ Benjamin Bloom) รศ. บรรพต พรประเสริฐ.
ชัยพฤกษ์รัตนาธิเบศร์ - วงแหวน
บทที่ 4 การจำลองข้อมูลและกระบวนการ (Data and Process Modeling)
การประเมินผลโครงการ บทที่ 9 ผศ.ญาลดา พรประเสริฐ yalada.
การเขียนโปรแกรมด้วยภาษาไพทอน การเขียนโปรแกรมแบบทางเลือก
โครงการถ่ายทอดเทคโนโลยีถนนรีไซเคิลเพื่อลดขยะพลาสติกใน 4 ภูมิภาค
Decision: Single and Double Selection (if and if-else statement)
กระดาษทำการ (หลักการและภาคปฏิบัติ)
เครื่องขุดหลุมปลูกยาสูบ
ใบสำเนางานนำเสนอ:

อัลกอริทึม (Algorithm) และ การเขียนผังงาน (Flowchart) นางสาวศศิธร โสวงษ์ 483050359-9

อัลกอริทึม (Algorithm) ขั้นตอนวิธี หรือ อัลกอริทึม (algorithm) หมายถึงกระบวนการแก้ปัญหาที่สามารถเข้าใจได้ มีลำดับหรือวิธีการในการแก้ไขปัญหาใดปัญหาหนึ่งอย่างเป็นขั้นเป็นตอนและชัดเจน เมื่อนำเข้าอะไร แล้วจะต้องได้ผลลัพธ์เช่นไร ซึ่งแตกต่างจากการแก้ปัญหาแบบสามัญสำนึก หรือฮิวริสติก (heuristic) โดยทั่วไป ขั้นตอนวิธี จะประกอบด้วย วิธีการเป็นขั้นๆ และมีส่วนที่ต้องทำแบบวนซ้ำ (iterate) หรือ เวียนเกิด (recursive)โดยใช้ตรรกะ (logic) และ/หรือ ในการเปรียบเทียบ (comparison) ในขั้นตอนต่างๆ จนกระทั่งเสร็จสิ้นการทำงาน

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

องค์ประกอบของการจัดทำอัลกอริทึม 1. การวิเคราะห์ (Analysis) 2. การออกแบบ (Design) 3. การเขียนโปรแกรม (Coding/Programming) 4. การทดสอบและแก้ไขข้อผิดพลาดของโปรแกรม 5. การจัดทำเอกสารและบำรุงรักษา (Testing and Debugging) (Documentation and Maintenance)

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

องค์ประกอบของการจัดทำอัลกอริทึม การออกแบบ (Design) คือ การนำผลที่ได้จากการวิเคราะห์มาทำการออกแบบ โดยอาศัยเครื่องมือ (Tools) ต่าง ๆ มาช่วยในการออกแบบเป็นมาตรฐานมากขึ้น เครื่องมือในการออกแบบที่นิยมใช้ 1. ผังงาน (Flowchart) 2. รหัสเทียม (Pseudo Code) ข้อเปรียบเทียบระหว่างผังงานและรหัสเทียม 1. ผังงานมีการแสดงความสัมพันธ์ให้เห็นเป็นรูปแบบที่ชัดเจนมากกว่ารหัสเทียม 2. การออกแบบรหัสเทียมจะใช้เวลาน้อยกว่าการออกแบบผังงาน เนื่องจากไม่ต้องคำนึงถึงความเป็นเหตุเป็นผลของโปรแกรมมากเท่ากับผังงาน

องค์ประกอบของการจัดทำอัลกอริทึม การเขียนโปรแกรม (Coding/Programming) คือ การนำผลที่ได้จากการออกแบบ มาเขียนเป็นคำสั่งของโปรแกรมเพื่อนำไปประมวลผลข้อมูลและได้ผลลัพธ์ (Output) ของโปรแกรมต่อไป โดยผู้เขียนสามารถเลือกใช้ภาษาโปรแกรม (Programming Language) ต่าง ๆ ได้ตามต้องการ ภาษาโปรแกรม (Programming Language) พัฒนาการของ ภาษาโปรแกรมมรทั้งหมด 4 ยุค คือ 1. ภาษาเครื่อง (Machine Language) 2. ภาษาแอสเซมบลี (Assembly Language) 3. ภาษาระดับสูง (High-Level Language) 4. ภาษายุคที่ 4  (Fourth Generation Language หรือ 4GL)

องค์ประกอบของการจัดทำอัลกอริทึม การทดสอบและแก้ไขข้อผิดพลาดของโปรแกรม (Testing and Debugging) ดีบักเกอร์ (Debugger) คือ โปรแกรมที่สามารถแจ้งข้อผิดพลาดทางไวยกรณ์ที่เกิดขึ้นในโปรแกรม โดยผู้ทดสอบสามารถที่จะหยุดโปรแกรมที่กำลังทำงานนั้นไว้ชั่วขณะหนึ่งเพื่อตรวจสอบข้อผิดพลาดได้ ข้อผิดพลาดที่เกิดขึ้นจากการเขียนโปรแกรม มีดังนี้ 1. ข้อผิดพลาดทางไวยกรณ์ (Syntax Errors) เป็นข้อผิดพลาดที่เกิดจากการเขียนคำสั่งที่ผิดไวยกรณ์ของภาษาที่ใช้เขียนโปรแกรมนั้น ๆ 2. ข้อผิดพลาดที่เกิดขึ้นขณะทำการรันโปรแกรม (Run-Time Error) เป็นข้อผิดพลาดที่แสดงขณะทำการรันโปรแกรม ส่วนใหญ่เกิดจากการคำนวณตัวเลข

องค์ประกอบของการจัดทำอัลกอริทึม การจัดทำเอกสารและบำรุงรักษา (Documentation and Maintenance) การจัดทำเอกสาร (Documentation) หมายถึง การเตรียมเอกสารอธิบายโปรแกรม ซึ่งมีความสำคัญและควรทำกันอย่างต่อเนื่องหลังจากการพัฒนาโปรแกรม เพื่อนำไปติดตั้งใช้งานต่อไป ในเอกสารควรประกอบด้วย 1. คำบรรยายลักษณะของโปรแกรม 2. คำอธิบายพร้อมผังงานหรือรหัสเทียม 3. รายการโปรแกรม (Program Listing) 4. ผลการทดสอบโปรแกรม การบำรุงรักษาโปรแกรม (Program Maintenance) หมายถึง การแก้ไขข้อผิดพลาดที่พบระหว่างการทดสอบหรือระหว่างการใช้งาน ซึ่งอาจเป็นการเปลี่ยนข้อมูลที่ต้องการใช้ใหม่ การปรับปรุงข้อมูลให้ทันเหตุการณ์อยู่เสมอ การปรับเปลี่ยนโครงสร้างบนหน้าจอ เป็นต้น

การเขียนผังงาน (Flowchart) ผังงาน (Flowchart) คือ รูปภาพ (Image) หรือสัญลักษณ์(Symbol) ที่ใช้เขียนแทนขั้นตอน คำอธิบาย ข้อความ หรือคำพูด ที่ใช้ในอัลกอริทึม (Algorithm) เพราะการนำเสนอขั้นตอนของงานให้เข้าใจตรงกัน ระหว่างผู้เกี่ยวข้อง ด้วยคำพูด หรือข้อความ ทำได้ยากกว่าเมื่อใช้รูปภาพ หรือสัญลักษณ์

ประเภทของผังงาน ผังงานแบ่งได้ 2 ประเภท 1. ผังงานระบบ (System Flowchart) คือ เป็นผังงานที่แสดงขั้นตอนการปฏิบัติงานหลักๆ โดย แสดงถึงตัวงานหลักที่ต้องทำในระบบ ซึ่งเป็นการมุ่งเน้นความสัมพันธ์ระหว่างงานหรือขั้นตอนต่างๆ ในระบบว่ามีกิจกรรมอะไรและมีความเกี่ยวข้องอย่างไร แต่ไม่แสดงรายละเอียดว่างานนั้นทำอย่างไร 2. ผังงานโปรแกรม (Program Flowchart) คือ ผังงานที่แสดงถึงขั้นตอนของกิจกรรมต่างๆ โดยละเอียด ทุกขั้นตอน ทำให้สามารถถ่ายทอดความเข้าใจหรือสื่อสารระหว่างกันได้

สัญลักษณ์ของผังงาน สัญลักษณ์ ชื่อเรียก ความหมาย การทำงานด้วยมือ (manual  operation)   แทนจุดที่มีการทำงานด้วยแรงคน การนำข้อมูลเข้าและออกโดยทั่วไป (general  input/output) แทนจุดที่จะนำข้อมูลเข้าหรือออกจากระบบคอมพิวเตอร์โดยไม่ระบุชนิดของอุปกรณ์ แถบบันทึกข้อมูล (magetic  tape) แทนจุดที่จะนำข้อมูลเข้าหรือออกจากโปรแกรมด้วยแถบบันทึกข้อมูล จานบันทึกข้อมูล (magnetic  disk) แทนจุดที่จะนำข้อมูลเข้าหรือออกจากโปรแกรมด้วยจานบันทึกข้อมูล

สัญลักษณ์ของผังงาน การนำเข้าข้อมูลด้วยมือ (manual input)   แทนจุดที่นำข้อมูลเข้าด้วยมือ การแสดงข้อมูลออกด้วยจอภาพ (display) แทนจุดที่แสดงข้อมูลด้วยจอภาพ การทำเอกสาร (documents) แทนจุดที่มีข้อมูลเป็นเอกสารหรือแสดงข้อมูลออกด้วยเครื่องพิมพ์ การตัดสินใจ (decision) แทนจุดที่จะต้องเลือกปฏิบัติอย่างใด อย่างหนึ่ง

สัญลักษณ์ของผังงาน การเตรียมการ (preparation)   แทนจุดกำหนดชื่อข้อมูล หรือค่าเริ่มต้นต่าง ๆ การเรียกโปรแกรมภายนอก (external  subroutine) แทนจุดเรียกใช้โปรแกรมย่อยที่ไม่ได้อยู่ในโปรแกรมนั้น การเรียกโปรแกรมภายใน (external  subroutine) แทนจุดเรียกใช้โปรแกรมย่อยที่อยู่ในโปรแกรมนั้น การปฏิบัติงาน (process) แทนจุดที่มีการปฏิบัติงานอย่างใด  อย่างหนึ่ง

สัญลักษณ์ของผังงาน การเรียงข้อมูล (sort)   แทนจุดที่มีการเรียงข้อมูลใหม่ตามข้อกำหนด ทิศทาง (Flow  line) แทนทิศทางของขั้นตอนการดำเนินงานซึ่งจะปฏิบัติต่อเนื่องกันตามหัวลูกศรชี้ หมายเหตุ (annotation) แทนจุดที่แสดงรายละเอียดเพิ่มเติม  หรือหมายเหตุของจุดต่าง ๆ ที่แสดงในผังงานด้วยสัญลักษณ์ไม่ชัดเจน การติดต่อทางไกล (communication  link) แทนช่วงที่มีการติดต่อหรือย้ายข้อมูลด้วยระบบการติดต่อทางไกล

สัญลักษณ์ของผังงาน จุดเชื่อมต่อ (connector)   แทนจุดเชื่อมต่อของผังงานเมื่อใช้สัญลักษณ์เพื่อให้ดูง่ายขึ้น จุดเชื่อต่อหน้ากระดาษ (offpage  connector) แทนจุดเชื่อมต่อของผังงานที่อยู่คนละหน้ากระดาษ เริ่มต้น/ลงท้าย (terminal) แทนจุดเริ่มต้นและลงท้ายของผังงานของโปรแกรมหลักและโปรแกรมย่อย

รูปแบบการเขียนผังงาน รูปแบบของการเขียนผังงานมี 3 แบบคือ 1. แบบเรียงลําดับ(Sequential) 2. แบบมีการกําหนดเงื่อนไข(Condition) 3. แบบมีการทํางานวนรอบ(Looping)

แบบเรียงลําดับ(Sequential) เป็นรูปแบบพื้นฐานของผังงาน และเป็นลักษณะขั้นตอนการทำงานที่พบมากที่สุด คือทำงานทีละขั้นตอนตามลำดับ

แบบมีการกําหนดเงื่อนไข(Condition) เริ่มต้น รูปแบบที่ง่ายที่สุดของโครงสร้างแบบนี้คือ การเลือกแบบมีทางออก 2 ทาง อ่านค่า รหัสพนักงาน ชั่วโมงการทำงาน อัตราค่าแรง เงินเดือน = ((ชั่วโมงการทำงาน-160)  1.5  อัตราค่าแรง) + (160  อัตราค่าแรง) ชั่วโมง การทำงาน > 160 เงินเดือน = ชั่วโมงการทำงาน * อัตราค่าแรง แสดง รหัสพนักงาน และเงินเดือน จบ

แบบมีการทํางานวนรอบ(Looping) รูปแบบนี้จะทำงานอย่างเดียวกันซ้ำไปเรื่อย ๆ ในขณะที่ยังเป็นไปตามเงื่อนไข

อ้างอิง http://dit.dru.ac.th/home/023/data_structure/we http://th.wikipedia.org/wiki/Algorithm http://adviser.eduzones.com/offy/4224