Download - กิจกรรมที่ 2 · Web view- ผ งงานโปรแกรมอย างละเอ ยด (detail program flowchart) หร อ ผ งงานไมโคร
![Page 1: กิจกรรมที่ 2 · Web view- ผ งงานโปรแกรมอย างละเอ ยด (detail program flowchart) หร อ ผ งงานไมโคร](https://reader036.vdocuments.pub/reader036/viewer/2022081611/5f05f2167e708231d415838d/html5/thumbnails/1.jpg)
กจกรรมท 21. อลกอรทม (Algorithm)
อลกอรทม คอ ขนตอนการทำางานทเปนลำาดบคอมพวเตอรทำางานทละคำาสงตามลำาดบ โปรแกรมคอมพวเตอรจะประกอบดวยคำาสงจำานวนมากทควบคมใหคอมพวเตอรทำางานไปตามขนตอนทกำาหนดไว อลกอรทมจะชวยอธบายลำาดบขนตอนทสอดคลองกบการทำางานของโปรแกรม อาจใชเครองมอตางๆ ชวยในการแสดงขนตอน เชน ผงงาน (FLOW CHART) และ ซโดโคด (PSEUDOCODE) ประกอบดวย
- อลกอรทมแบบแตกยอย(Divide-and-conquer) เปนอลกอรทมทจะมการนำาปญหาหลกทไดมาทำาการแยกออกเปนปญหายอยๆ แลวนำาคำาตอบทไดจากปญหายอยตาง ๆ มารวมกนเขาดวยกนโดยอลกอรทมนเราสามารถหาคำาตอบของปญหาไดงายขนจากการรวมคำาตอบของปญหาหลกนนเอง - อลกอรทมแบบเคลอนท (Dynamic Programming)ปญหาทเราไดรบมานนบางครงไมสามารถแบงปญหาออกเปนปญหายอยๆ ได ซงถาเราพยายามจะแบงปญหานน ๆ ออกเปนปญหายอยทเลกทสด อลกอรทมของเราอาจจะใชเวลาทำางานเปนแบบทวคณ(Exponential) ได แตเวลาทเราแกปญหาตาง ๆ เรามกจะพบวาบางครงเราตองแกปญหา
![Page 2: กิจกรรมที่ 2 · Web view- ผ งงานโปรแกรมอย างละเอ ยด (detail program flowchart) หร อ ผ งงานไมโคร](https://reader036.vdocuments.pub/reader036/viewer/2022081611/5f05f2167e708231d415838d/html5/thumbnails/2.jpg)
ยอย ๆ ทเหมอนกนซำาไปซำามาโดยการหลกเลยงการคำานวณเพอหาคำาตอบซำา ๆ ซาก ๆ น Dynamic Programming จะแกปญหายอย ๆ เหลานนเพยง ครงเดยวแลวเกบผลลพธไว ซงถาหากพบวาตองมการแกปญหายอยนนซำาอกเรากสามารถนำาคำาตอบมาจากคำาตอบทเคยคำานวณเกบไวมาใชได - อลกอรทมแบบทางเลอก (Greedy Algorithm)เปนอลกอรทมทจะหาคำาตอบโดยการเลอกทางออกทดทสดทพบไดในขณะนนเพอใหไดคำาตอบทดทสด แตในบางครง Greedy Algorithms อาจจะไมสามารถหาคำาตอบของปญหาทดทสดไดเสมอไป
อลกอรทมทดตองประกอบดวย– แตละขนในอลกอรทมตองชดเจนและถกตอง– ลำาดบการเขยนคำาสงตองเปนไปตามลำาดบทถกตอง
ชดเจน เพอนำาไปสคำาตอบทถกตอง– อลกอรทมตองมจดสนสดเสมอ– ใชเวลาในการประมวลผลนอย– แกไขดดแปลงไดงาย
2. การเขยนผงงาน (Flowchart)การเขยนผงงาน (Flowchart) คอ เปนเครองมอ
หนงทใชรปภาพ แสดงถงขนตอนการเขยนโปรแกรม หรอขนตอนการแกปญหาทละขน และมเสนทแสดงทศทางการไหลของขอมลตงแตจดเรมตนจนกระทงไดผลลพธตามท
![Page 3: กิจกรรมที่ 2 · Web view- ผ งงานโปรแกรมอย างละเอ ยด (detail program flowchart) หร อ ผ งงานไมโคร](https://reader036.vdocuments.pub/reader036/viewer/2022081611/5f05f2167e708231d415838d/html5/thumbnails/3.jpg)
ตองการ ซงทำาใหผอานสามารถอานและทำาความเขาใจไดโดยงาย
ประเภทของผงงาน แบงเปน 2 ประเภทคอ1. ผงงานระบบ (system flowchart) เปนผง
งานทเขยนขนมาเพอทำาใหมองเหนภาพอยางกวาง ๆ จะเหนการทำางานของขอมลแตละสวนของระบบผงงาน ซงแสดงขอบเขต และลำาดบขนตอนการทำางานของระบบหนง ๆ รวมทงแสดงรปแบบของขอมลเขา (Input) และขอมลออก (Output) วาถกรบเขาหรอแสดงผลโดยผานสอประเภทใด เนองจากผงงานระบบเปนแผนภาพทแสดงถงระบบโดยรวม ดงนนกระบวนการหรอโปรแกรมหนง ๆ อาจถกแสดงเปนเพยงขนตอนหนงในผงงานระบบเทานน
2. ผงงานโปรแกรม(program flowchart) ผงงานโปรแกรมเปนการเขยนขนมาเพอทำาใหมองเหนภาพการทำางานของโปรแกรมซงเปนสวนหนงของระบบผงโปรแกรมยงแบงออกเปนสองแบบคอ
- ผงงานโปรแกรมมอดล (modular program flowchart) บางครงเรยกวา บลอกไดอะแกรม (block diagram) ในแตละบลอกจะแสดงถงการ ทำางานอยางกวาง ๆ ของแตละขนของโปรแกรม โดยจะแสดงเพยงการทำางานของระบบทงระบบแตไมสามารถแสดงรายละเอยด
- ผงงานโปรแกรมอยางละเอยด (detail program flowchart) หรอ ผงงานไมโคร (micro flowchart) จะแสดงทละขนตอนของการทำางาน การคำานวณ การทดสอบ และการเปรยบเทยบในการทำางานของปญหา ผงงานนจะแสดงใหเหนถงการทำางานอยางละเอยดของแตละขนของระบบ ผงงานชนดนสามารถนำาไปเขยนโปรแกรมซงจะชวยใหผเขยนโปรแกรมสามารถเขยนโปรแกรมไดงายขน
![Page 4: กิจกรรมที่ 2 · Web view- ผ งงานโปรแกรมอย างละเอ ยด (detail program flowchart) หร อ ผ งงานไมโคร](https://reader036.vdocuments.pub/reader036/viewer/2022081611/5f05f2167e708231d415838d/html5/thumbnails/4.jpg)
สญลกษณทใชในการเขยนผงงาน (FLOWCHATING SYMBOLS)
การเขยนผงโปรแกรมจะประกอบไปดวยการใชสญลกษณมาตรฐานตาง ๆ ทเรยกวา สญลกษณ ANSI ( American National Standards Institute ) แบงเปน 3 กลมดวยกน คอ
1. สญลกษณพนฐาน (Basic Symbols)สญลกษณ ชอ คำาอธบาย
สญลกษณการประมวลผล
(PROCESS)
แทนการประมวลผล ประกอบไปดวยกลมคำาสงโปรแกรมเพอแสดงกระบวนการทำางานหรอฟงกชนการทำางานตางๆ
สญลกษณอนพต/เอาทพต
(INPUT / OUTPUT)
แทนการนำาขอมลหรอการแสดงผลลพธของขอมล โดยไมมการระบอปกรณทชดเจนลงไป
สญลกษณจดเชอมตอ
(Connect)
แทนจดเชอมโยงของแผนภาพในหนาเดยวกน
สญลกษณแทนการเชอมโยงตอเนองอกหนาหนง
(Off-page Connector)
แทนจดเชอมโยงของแผนภาพจากหนาหนง
ไปอกหนาหนง
![Page 5: กิจกรรมที่ 2 · Web view- ผ งงานโปรแกรมอย างละเอ ยด (detail program flowchart) หร อ ผ งงานไมโคร](https://reader036.vdocuments.pub/reader036/viewer/2022081611/5f05f2167e708231d415838d/html5/thumbnails/5.jpg)
สญลกษณคำาอธบายเพมเตม(Comment)
ใชสำาหรบบรรยายคำาอธบายหรอหมายเหต
เพมเตม เพอสอใหเขาใจยงขน
สญลกษณ ชอ คำาอธบาย
สญลกษณเสนทศทาง
ใชสำาหรบกำาหนดทศทางในการดำาเนนงานของแผนภาพ
สญลกษณแสดงผลทางเครองพมพ(Document)
เปนสญลกษณเพอสงเอาทพตหรอรายงานออกทาง
เครองพมพ
2. สญลกษณระบบ (System Symbols)
สญลกษณ ชอ คำาอธบาย
สญลกษณเทปแมเหลก
(MagneticTape)
แทนสอจดเกบขอมลแบบเทปแมเหลก ซงเปนไดทงอนพตและเอาทพต
สญลกษณสอจดเกบขอมลแบบ
ออนไลน
แทนสอจดเกบขอมลทมความจสง
![Page 6: กิจกรรมที่ 2 · Web view- ผ งงานโปรแกรมอย างละเอ ยด (detail program flowchart) หร อ ผ งงานไมโคร](https://reader036.vdocuments.pub/reader036/viewer/2022081611/5f05f2167e708231d415838d/html5/thumbnails/6.jpg)
(Online Storage)
สญลกษณสอจดเกบขอมลแบบดสก
(Magnetic Disk)
แทนดสก ซงเปนอปกรณทคอมพวเตอรสามารถเขาถงขอมลไดโดยตรง ในลกษณะอนพตและเอาทพต
สญลกษณการรวม(Merge)
แทนการรวม เชน การรวมไฟลสองไฟลเพอเกบไวอกไฟลหนง
สญลกษณ ชอ คำาอธบายสญลกษณการจด
เรยงขอมล(Sort)
แทนการจดเรยงขอมล หรอ ชดตวเลข
สญลกษณการจดเกบขอมลแบบออฟ
ไลน(Off-lineStorage)
แทนสอหรออปกรณจดเกบขอมลทไม
สามารถเขาถงขอมลไดโดยตรงจาก
คอมพวเตอร โดยไมมการระบชอ
อปกรณทชดเจนลงไป
![Page 7: กิจกรรมที่ 2 · Web view- ผ งงานโปรแกรมอย างละเอ ยด (detail program flowchart) หร อ ผ งงานไมโคร](https://reader036.vdocuments.pub/reader036/viewer/2022081611/5f05f2167e708231d415838d/html5/thumbnails/7.jpg)
สญลกษณแสดงผลทาง
จอภาพ(Display)
ใชสำาหรบการแสดงผลขอมลทางจอภาพ
หรอเทอรมนล
สญลกษณอนพตดวยมอผานทาง
แปนพมพ(Manual
input)
แทนการรบขอมลทางแปนพมพหรอ
คยบอรด
สญลกษณประมวลผลดวยมอ(Manual
Operation)
แทนการประมวลผลดวยแรงงานมนษย
สญลกษณลงคเพอการสอสาร
แทนการตดตอสอสาร ซงทงสองฝงอยตางพนท เชน การสอสารทางไกลผานระบบโทรศพท หรอ ดาวเทยม เปนตน
3. สญลกษณการโปรแกรม (Programming Symbols)
![Page 8: กิจกรรมที่ 2 · Web view- ผ งงานโปรแกรมอย างละเอ ยด (detail program flowchart) หร อ ผ งงานไมโคร](https://reader036.vdocuments.pub/reader036/viewer/2022081611/5f05f2167e708231d415838d/html5/thumbnails/8.jpg)
สญลกษณ ชอ คำาอธบาย
สญลกษณการตดสนใจ
(Decision)
ใชสำาหรบการสรางเงอนไขเพอตดสนใจทางเลอกทตองการ
สญลกษณการทำางานเปนรอบ
(Preparation)
แทนการทำางานเปนรอบ (loop)
สญลกษณแทนกลมขนตอนหรอ
โปรแกรมยอย(Predefined
Process)
แทนชอกระบวนการทประกอบไปดวยกลมขนตอนโปรแกรมใน
โปรแกรมยอย
สญลกษณแสดงจดเรมตนหรอสน
สด(Terminator)
แทนจดเรมตนของโปรแกรมและจดสนสดของโปรแกรม
![Page 9: กิจกรรมที่ 2 · Web view- ผ งงานโปรแกรมอย างละเอ ยด (detail program flowchart) หร อ ผ งงานไมโคร](https://reader036.vdocuments.pub/reader036/viewer/2022081611/5f05f2167e708231d415838d/html5/thumbnails/9.jpg)
รปแบบการเขยนผงงานผงงานทวไปจะประกอบดวยโครงสรางพนฐาน 3 รป
แบบตอไปนคอ1.โครงสรางแบบเปนลำาดบ (sequence structure)2.โครงสรางแบบมการเลอก (selection structure)3.โครงสรางแบบทำาซำา (iteration structure)
1.โครงสรางแบบเปนลำาดบ (sequence structure)เปนการแสดงขนตอนการทำางานทเรยงลำาดบกนไป ไมม
การขามขนตอน หรอยอนกลบ ดงตวอยาง
![Page 10: กิจกรรมที่ 2 · Web view- ผ งงานโปรแกรมอย างละเอ ยด (detail program flowchart) หร อ ผ งงานไมโคร](https://reader036.vdocuments.pub/reader036/viewer/2022081611/5f05f2167e708231d415838d/html5/thumbnails/10.jpg)
2.โครงสรางแบบมการเลอก (selection structure) เปนโครงสรางทมการตรวจสอบเงอนไข ใหโปรแกรม
เลอกทจะทำางาน มดงรปแบบตอไปน- ผงงานโครงสรางแบบทางเลอก แบบ If
![Page 11: กิจกรรมที่ 2 · Web view- ผ งงานโปรแกรมอย างละเอ ยด (detail program flowchart) หร อ ผ งงานไมโคร](https://reader036.vdocuments.pub/reader036/viewer/2022081611/5f05f2167e708231d415838d/html5/thumbnails/11.jpg)
- ผงงานโครงสรางแบบทางเลอก แบบ Nested If เงอนไขทเปนจรงและเทจ โดยถาเปนจรงจะทำางานอยาง
หนง และถาเปนเทจจะทำางานอกอยางหนง
![Page 12: กิจกรรมที่ 2 · Web view- ผ งงานโปรแกรมอย างละเอ ยด (detail program flowchart) หร อ ผ งงานไมโคร](https://reader036.vdocuments.pub/reader036/viewer/2022081611/5f05f2167e708231d415838d/html5/thumbnails/12.jpg)
- ผงงานโครงสรางแบบทางเลอก แบบ Case พจารณาเงอนไขตางๆ ทเกดขน ถาเงอนไขในทางเลอก
ใดเปนจรง กจะทำางานตามทางเลอกนน
3.โครงสรางแบบทำาซำา (iteration structure)โครงสรางการทำางานแบบทำาซำา จะทำางานแบบเดยวกน
ซำาไปเรอย ๆ ในขณะทยงเปนไปตามเงอนไขหรอเงอนไขเปนจรง จนกระทงเงอนไขเปนเทจจงทำางานอนตอไปมดงรปแบบตอไปน
- ผงงานโครงสรางแบบทำาซำา แบบ Do… While- ผงงานโครงสรางแบบทำาซำา แบบ While- ผงงานโครงสรางแบบทำาซำา แบบ For Next
![Page 13: กิจกรรมที่ 2 · Web view- ผ งงานโปรแกรมอย างละเอ ยด (detail program flowchart) หร อ ผ งงานไมโคร](https://reader036.vdocuments.pub/reader036/viewer/2022081611/5f05f2167e708231d415838d/html5/thumbnails/13.jpg)
- ผงงานโครงสรางแบบทำาซำา แบบ Do … While
- ผงงานโครงสรางแบบทำาซำา แบบ While
- ผงงานโครงสรางแบบทำาซำา แบบ For Next
![Page 14: กิจกรรมที่ 2 · Web view- ผ งงานโปรแกรมอย างละเอ ยด (detail program flowchart) หร อ ผ งงานไมโคร](https://reader036.vdocuments.pub/reader036/viewer/2022081611/5f05f2167e708231d415838d/html5/thumbnails/14.jpg)
แหลงทมา : http://rujipan.rmutl.ac.th/downloads/02-Flowchart.doc http://eclassnet.kku.ac.th/etraining/file/1120018367Algorithm_Flowchart.dochttp://182529.blog.mthai.com/2007/08/01/public-2 http://cit.kmitnb.ac.th/ebook/http://www.ict.pyo.nu.ac.th/sanchaiy/1-2007/SA/Lect%2007%20Flowchart.ppthttp :// pirun . ku . ac . th / ~faasnbk / 729112/729112_08 . ppt http://www.compsci.buu.ac.th/~suwanna/310322CPROG/documents/cProg01.ppt