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

บทที่8

  • Upload
    galswen

  • View
    92

  • Download
    0

Embed Size (px)

Citation preview

Page 1: บทที่8

ความหมายของผงงงาน

ผงงาน (Flowchart) คอ รปภาพ (Image) หรอสญลกษณ (Symbol) ทใชเขยนแทนขนตอน ค าอธบาย ขอความ หรอค าพด ทใช

ในอลกอรทม (Algorithm) เพราะการน าเสนอขนตอนของงานใหเขาใจตรงกน ระหวางผ เกยวของ ดวยค าพด หรอขอความท าได

ยากกวา ผงงานแบงได 2 ประเภท คอ ผงงานระบบ (System Flowchart) คอ ผงงานทแสดงขนตอนการท างานในระบบอยาง

กวางๆ แตไมเจาะลงในระบบงานยอย และ ผงงานโปรแกรม (Program Flowchart) คอ ผงงานทแสดงถงขนตอนในการท างาน

ของโปรแกรม ตงแตรบขอมล ค านวณ จนถงแสดงผลลพธ

Page 2: บทที่8

วธการเขยนผงงานทด

• ใชสญลกษณตามทก าหนดไว

• ใชลกศรแสดงทศทางการไหลของขอมลจากบนลงลาง หรอจาก

ซายไปขวา

• ค าอธบายในภาพควรสนกระทดรด และเขาใจงาย

• ทกแผนภาพตองมลกศรแสดงทศทางเขา – ออก

• ไมควรโยงเสนเชอมผงงานทอยไกลมาก ๆ ควรใชสญลกษณ

จดเชอมตอแทน

• ผงงานควรมการทดสอบความถกตองของการท างานกอนน าไป

เขยนโปรแกรม

Page 3: บทที่8

ตารางแสดงสญลกษณผงงาน

การท างานดวยมอ (manual operation) แทนจดทมการท างานดวยแรงคน

การน าขอมลเขา-ออกโดยทวไป (general

input/output)

แทนจดทจะน าขอมลเขาหรอออกจากระบบคอมพวเตอรโดยไมระบชนดของอปกรณ

แถบบนทกขอมล (magnetic tape) แทนจดทน าขอมลเขาหรอออกจากโปรแกรมดวยแผนบนทกขอมล

จานบนทกขอมล (magnetic tape) แทนจดทน าขอมลเขาหรอออกจากโปรแกรมดวยจานบนทกขอมล

การน าขอมลเขาดวยมอ (manual input) แทนจดทน าขอมลเขาดวยมอ

การแสดงขอมล (display) แทนจดทแสดงขอมลดวยจอภาพ

การท าเอกสาร (documentation) แทนจดทมขอมลเปนเอกสารหรอแสดงขอมลดวยเครองพมพ

การตดสนใจ (decision) แทนจดทตองเลอกปฏบตอยางใดอยางหนง

การปฏบตงาน (process) แทนจดทมการปฏบตงานอยางใดอยางหนง

การเตรยมการ (preparation) แทนจดก าหนดชอขอมลหรอคาเรมตนตางๆ

การเรยกโปรแกรมภายนอก (external

subroutine) แทนจดเรยกใชโปรแกรมยอยทไมไดอยในโปรแกรมนน

การเรยกโปรแกรมภายใน (internal

subroutine) แทนจดเรยกใชโปรแกรมยอยทอยในโปรแกรมนน

การเรยงขอมล (sort) แทนจดทมการเรยงขอมลใหมตามขอก าหนด

ทศทาง (flow line) แทนทศทางขนตอนการด าเนนงานซจะปฏบตตอเนองกนตามหวลกศรช

หมายเหต (annotation) แทนจดทแสดงรายละเอยดเพมเตมหรอหมายเหตของจดตางๆ ทแสดงในผงงานดวยสญลกษณไมชดเจน

การตดตอทางไกล (communication

link) แทนชวงทมการตดตอหรอยายขอมลดวยระบบการตดตอทางไกล

จดเชอมตอ (connector) แทนจดเชอมตอของผงงานเมอใชสญญลกษณเพอใหดงาย

จดเชอมตอหนากระดาษ (off page

connector) แทนจดเชอมตอของผงงานทอยคนละหนากระดาษ

แทนจดเรมตนและลงทายของผงงานของโปรแกรมหลกและ

Page 4: บทที่8

การตดตอทางไกล (communication

link)

แทนชวงทมการตดตอหรอยายขอมลดวยระบบการตดตอทางไกล

จดเชอมตอ (connector) แทนจดเชอมตอของผงงานเมอใชสญญลกษณเพอใหดงาย

จดเชอมตอหนากระดาษ (off page

connector) แทนจดเชอมตอของผงงานทอยคนละหนากระดาษ

เรมตนและลงทาย (terminal) แทนจดเรมตนและลงทายของผงงานของโปรแกรมหลกและโปรแกรมยอย

รปแบบการเขยนผงงาน •แบบตามลาดบ (Sequence)

•แบบการเลอก/ตดสนใจ/เงอนไข (Selection/Decision/Condition)

•แบบวนซ า (Iteration / Loop)

Page 5: บทที่8

1.)โครงสรางแบบเปนล าดบ (Sequence Structure)

โครงสรางลกษณะนเปนโครงสรางพนฐานของผงงาน และเปนลกษณะขนตอนการท างานทพบมากทสด คอท างานทละขนตอนล าดบ ตวอยางผงงานทมโครงสรางแบบเปนล าดบ

Page 6: บทที่8

จากตวอยางผงงานการค านวณดอกเบย สามารถอธบายเปนขนตอนไดดงน

1.เรมตนการท างาน 2.รบคาเงนตน และอตราดอกเบยเพอใชในการค านวณหาดอกเบย 3.ค านวณหาดอกเบยโดยใชสมการตอไปน ดอกเบย = เงนตน * อตราดอกเบย 4.แสดงคาของดอกเบยซงค านวณได 5.จบการท างาน

Page 7: บทที่8

2.)โครงสรางแบบมตวเลอก (Selection Structure)

โครงสรางการท างานแบบมการเลอกมรปแบบทซบซอนกวาโครงสรางแบบเปนล าดบรปแบบทงายทสดของโครงสรางแบบนคอ การเลอกแบบมทางออก 2 ทาง ในการเลอกแบบมทางออก 2 ทาง นจะมทางออกจากสญลกษณการตดสนใจเพยง 2 ทาง คอ ใชหรอไมใช เทานน (แตระบบการเขยนผงงานระบบ อนญาตใหมทางออกจากการตดสนใจไดมากกวา 2 ทาง)

Page 8: บทที่8

ตวอยางผงงานทมโครงสรางแบบมการเลอก ผงงานการค านวณดอกเบยซงมอตราดอกเบย 2 อตรา คอถาเงนตนนอยกวา 1 ลานบาท จะคดดอกเบยดวยอตรารอยละ 4 แตถามเงนตนมากกวา 1 ลานบาท จะคดดอกเบยดวยอตรารอยละ 5

จากผงงานสามารถอธบายเปนขนตอนไดดงน 1.เรมตนการท างาน 2.รบคาเงนตน 3.พจารณาเงนตนทรบคาเขามามากกวา 1 ลานบาทหรอไม - - ถาใช ใหค านวณดอกเบยในอตรารอยละ 5 ดงนน ดอกเบย = เงนตน * 0.05 - - ถาไมใช ใหค านวณดอกเบยในอตรารอยละ 5 ดงนน ดอกเบย = เงนตน * 0.04 4.แสดงคาดอกเบยทค านวณได 5.จบการท างาน

Page 9: บทที่8

3.)โครงสรางแบบท าซ า (Iteration Structure)

โครงสรางการท างานแบบท าซ า จะท างานแบบเดยวกนซ าไปเรอย ๆ ในขณะทยงเปนไปตามเงอนไขหรอเงอนไขเปนจรง จนกระทงเงอนไขเปนเทจจงท างานอนตอไป ตวอยางผงงานทมโครงสรางแบบท าซ า ผงงานการค านวณยอดบญช (เงนตนทบดอกเบย)

Page 10: บทที่8

จากตวอยางผงงานสามารถอธบายเปนขนตอนไดดงน 1.เรมตนการท างาน 2.รบคาเงนตน อตราดอกเบย และจ านวนปทฝากเงน ซงเปนขอมลทจ าเปนในการค านวณยอดบญช (เงนตนทบดอกเบยตามจ านวนป ทฝากเงน) 3.ก าหนดให n มคาเทากบ 0 ในผงงานน n คอจ านวนรอบของการคดดอกเบย 4.ก าหนดยอดบญชเรมตนใหเทากบเงนตนทรบคาเขามา 5.เปรยบเทยบวา n นอยกวาจ านวนปทฝากเงนหรอไม 5.1 ถาใชใหท าตามขนตอนตอไปน - ค านวณยอดบญชใหมโดยทบดอกเบยเพมเขาไปจากยอดบญชเดม โดยใชสมการตอไปน ยอดบญช = ยอดบญช + (ยอดบญช * อตราดอกเบย) - เพมคา n ไปอก 1 - กลบไปเปรยบเทยบเงอนไขในขอ 5 5.2 ถาไมใช แสดงวาคดดอกเบยทบตนครบตามจ านวนปทฝากเงนซงรบคาเขามาแลวใหท าตามขนตอนตอไปน - แสดงคายอดบญชสดทายทค านวณได - จบการท างาน

Page 11: บทที่8

โครงสรางเรยงล าดบ Sequence

โครงสรางแรกทจะกลาวถงกคอโครงสรางแบบ Sequence หรอโครงสรางแบบ

เรยงล าดบ เปนโครงสรางทน าเสนอเนอหาเปนล าดบ เสนตรง ผ เขาใชบรการ Website

จะตองอานเนอหาใหจบทละหนาตามล าดบ ไมสามารถเหนเนอหาหนาอนได Web จะ

คลายคลงกบการน าเสนอบทเรยนคอมพวเตอรชวยสอนแบบ Liner

สวนใหญการน าเสนอเนอหาแบบ Sequence นจะเปนประเภทบรการฐานขอมล

เชน Search Engine ตางๆ เชน Google.com, Yahoo.com หรอ Search Engine ทสบคน

ขอมลในหองสมด ลกษณะการน าเสนอเปนดงภาพขางตน

การน าเสนอระดบ Main Page จะถกน าเสนอแบบเรยงล าดบ สวนระดบ

รายละเอยด Detail Page จะน าเสนอในระดบลางลงมา อยางไรกตาม หากตองการจะด

เนอหาในหวขอ Main Page ถดไปจะไมสามารถท าได จะตองอานสวน Detail Page ในหว

เรองนนใหจบเสยกอน ดงภาพขางลาง

ขอด

เหมาะส าหรบการน าเสนอในรปแบบของการบรการฐานขอมล เชน Search Engine

ตางๆ iระบบฐานขอมลหองสมด ระบบฐานขอมล Video on Demand เพราะขอมลทกหนา

ผใชบรการจะตองอานใชความละเอยดดทกหนาเพอไมใหพลาดขอมลทตนเองตองการ

ขอเสย

ผใชบรการจะตองเสยเวลาอานในทกๆหนา ไมสามารถขามไปเรองอนๆหนาอนๆท

สนใจไดหรอออกจากหนา Page ทนทได ไมเหมาะส าหรบการน าเสนอเพอประชาสมพนธ

หรอเพอการศกษา เพราะผใชบรการจะไมเปนอสระจะรสกเหมอนถกบงคบใหอาน เชน

Webpage ของทางราชการเปนตน

Page 12: บทที่8

ประโยชนของผงงาน

ชวยล าดบขนตอนการท างานของโปรแกรม และสามารถน าไปเขยนโปรแกรมไดโดยไม

สบสน

ชวยในการตรวจสอบ และแกไขโปรแกรมไดงาย เมอเกดขอผดพลาด

ชวยใหการดดแปลง แกไข ท าไดอยางสะดวกและรวดเรว

ชวยใหผ อนสามารถศกษาการท างานของโปรแกรมไดอยางงาย และรวดเรวมากขน

สามารถเรยนรและเขาใจไดงาย เพอผงงานไมขนอยกบภาษาคอมพวเตอรภาษาใด

ภาษาหนงโดยเฉพาะ

ผงงานเปนการสอความหมายดวยภาพ ท าใหงายและสะดวกในการพจารณาถง

ล าดบขนตอนในการท างาน ตางกบการบรรยายเปนตวอกษร เพราะอาจสอ

ความหมายผดไปได

ในโปรแกรมทไมซบซอน สามารถใชผงงานตรวจสอบความถกตองของล าดบขนตอน

ไดงายถามขอผดพลาด สามารถแกไขไดสะดวกและรวดเรว

การเขยนโปรแกรมโดยพจารณาจากผงงาน สามารถท างานงายและรวดเรว

การบ ารงรกษาโปรแกรม เมอมการเปลยนแปลงแกไขโปรแกรม สามารถดผงงานเพอ

แกไขค าสงใน

Page 13: บทที่8

1. โปรแกรม XMind

โปรแกรมชวยสรางผงงาน

โปรแกรม XMind เปนโปรแกรมชวยในการเขยนแผนผงความคด (Mind Map) ทไมตองเสยคาลขสทธโปรแกรมใดๆ

ทงสน โดยโปรแกรมมคณสมบตเดนคอ โปรแกรม XMIND สามารถสรางภาพความคด (Visualized Idea) ในรปแบบ

ตางๆ ไดหลากหลายประกอบดวย

1. การสรางแผนทความคด (Mind Map) เพอการจดการความคด

2. การสรางแผนผงกางปลา (Fishbone Diageam) เพอการวเคราะหปจจยและปญหา

3. การสรางผงองคกร (Organization Chart) ออกแบบผงองคกรและงาน

4. การสรางผงการตดสนใจ (Decision Tree) เพอการวเคราะหทางเลอก

5. การสรางตารางความคด (Idea spreadsheet)

6. อนๆ ตามจนตนาการ (Imagine map)

Page 14: บทที่8

2. Dia โปรแกรมออกแบบผงงาน

Dia หรอ Diagram เปนโปรแกรมส าหรบออกแบบแผนผง Diagram Flowchart ในกลม

โอเพนซอรส (OSS) มเครองมอใหใชงานหลากหลายรปแบบ เชน Flowchart, Map เปน

ตน สามารถออกแบบแผนงานไดหลากหลาย เชน ออกแบบผงหองคอมพวเตอร, ออกแบบ

ER-Diagram เปนตน ท าให Dia เปนโปรแกรมออกแบบผงงานในระดบทด

(Diagramming tool)

Page 15: บทที่8

3.โปรแกรม Edraw Mind Map

Edraw Mind Map เปนโปรแกรมสรางแผนผงมโนทศนหรอแผนผงความคด (Mind Map) โดยโปรแกรมม

ตวอยาง มแมแบบตลอดจนมวตถ (Object) ในลกษณะตางๆ ทเอาไวใชจดการกบแผนความคดทหลากหลาย

การใชงานโปรแกรมมความงาย ผลงานทไดจงมความสวยงาม นอกจากนนผลงานเมอจดท าเสรจแลวยง

สามารถน าออกไปเพอใชงานไดหลากหลายรปแบบครอบคลมการท างานปจจบนไดเปนอยางด

Page 16: บทที่8

4. โปรแกรม FreeMind

เปนโปรแกรมส าหรบสราง Mind Map ทใชส าหรบการจดการ และ บรหารความคดของสมองให

เปนไปอยางมระเบยบแบบแผน โปรแกรมเปนซอฟตแวรโอเพนซอรส ไดถกพฒนาขนบนภาษาจาวา

(Java) เพราะภาษาจาวามความยดหยนสง รองรบการท างานบนระบบปฏบตการไดหลากหลาย

อาทเชน Windows, Mac OS และ LINUX ดงนน จงตองดาวนโหลดตวแปลภาษาจาวามาตดตง

กอน จงจะสามารถท าการตดตง FreeMind และใชงาน FreeMind ไดอยางมประสทธภาพสงทสด

Page 17: บทที่8