Upload
others
View
1
Download
0
Embed Size (px)
Citation preview
ผงงาน
1. ความหมายของผงงาน 2. ประโยชนของผงงาน 3. กฎเกณฑตางๆ เกยวกบผงงาน 4. สญลกษณทใชในการเขยนผงงาน 5. ลกษณะของผงงานทด
1. บอกความหมายของผงงานได 2. บอกประโยชนของผงงานได 3. บอกกฎเกณฑตางๆ เกยวกบผงงานได 4. บอกสญลกษณทใชในการเขยนผงงานได 5. บอกลกษณะของผงงานทดได
สาระการเรยนร
จดประสงคการเรยนร
หนวยท 3
ผงงาน โดย อรรณพ ทองธรกล วทยาลยอาชวศกษาขอนแกน
55
ผงงาน
สาระส าคญ
งานกอสรางทกอยางกอนทชางจะลงมอท าการใดๆ ตองมการเขยนแบบแปลนกอนทกครง เพอชวยใหผปฏบตงานกอสรางสามารถท างานไดตามความตองการ ตลอดจนเกดความปลอดภยในขณะปฏบตงานเชนเดยวกบการเขยนโปรแกรม ผพฒนาโปรแกรมตองเรมตนจากการวเคราะหงานแลวเขยนผงงานกอน เพอชวยท าใหการเขยนโปรแกรมนนงายขน และสะดวกตอการปรบปรงแกไขโปรแกรมในภายหลง ไมวาจะเขยนโปรแกรมเองหรอไมกตาม
1. ความหมายของผงงาน
ผงงานคอ แผนภาพแสดงล าดบขนตอน เพออธบายล าดบภายในของอลกอรธมโดยใช สญลกษณ รปภาพ ลกศรเปนเครองมอทใชเขยน เครองมอชนดนมขอดคอ อานเขาใจงาย เพราะใชรปภาพเปนสญลกษณแสดงการท างาน โดยมเสน และลกศรแสดงทศทางการไหลของงานจากจดหนงไปยงอกจดหนง การเขยนผงงานจะชวยใหการวเคราะหระบบงายขน ผงงานจะเรมจากการน าเขาขอมล การระบอปกรณทใช การอธบายขนตอนการประมวลผลโดยใชสญลกษณและขอความ เพอแสดงขนตอนการท างานของโปรแกรม (ปญญาพล หอระตะ.2545:15)
2. ประโยชนของผงงาน
ผงงานเปรยบไดกบแผนทประกอบการเดนทาง ซงจะชวยอ านวยความสะดวกแกนกเดนทางไมใหเดนหลงทาง หรอใชเวลาในการเดนทางทสนลง ผงงานมประโยชนพอสงเขปไดดงน
2.1 ชวยล าดบขนตอนการท างานของโปรแกรม และสามารถน าไปเขยนโปรแกรมไดโดย ไมสบสน
2.2 ชวยใหการตรวจสอบ และแกไขโปรแกรมงายขน เมอเกดขอผดพลาด 2.3 ชวยใหการดดแปลง แกไข ท าไดสะดวกและรวดเรว 2.4 ชวยใหผอนสามารถศกษาการท างานของโปรแกรมไดงาย และรวดเรวมากขน 2.5 ไมไดขนกบภาษาคอมพวเตอรใดๆ
ขอจ ากดของผงงาน 1. ผเขยนโปรแกรมบางคนไมนยมเขยนผงงานกอนเขยนโปรแกรม เพราะคดวาเสยเวลา
ผงงาน โดย อรรณพ ทองธรกล วทยาลยอาชวศกษาขอนแกน
56
2. ผงงานเปนการสอความหมายกนระหวางบคคล ไมไดขนกบภาษาใดภาษาหนง ท าใหเครองไมสามารถทราบไดวาผงงานนนตองการใหท าอะไร
3. การท างานของผงงานไมสามารถทราบไดวาขนตอนใดส าคญกวากน เพราะมสญลกษณ ในลกษณะเดยวกน
4. การเขยนผงงานสนเปลอง เพราะตองใชกระดาษและอปกรณอนๆ เพอประกอบการเขยน
3. กฎเกณฑเกยวกบผงงาน (ปญญาพล หอระตะ.2545:15)
3.1 ผงงาน ประกอบขนจากการใชสญลกษณ ประกอบกบประโยคทเขยนไวภายในสญลกษณ เชน สญลกษณจดเรมตน/จดสนสด
Start : การเรมตน Stop : การสนสด Entry : การเขา Exit : การออก Return : การกลบคน สญลกษณประมวลผล สญลกษณตดสนใจ เปนตน
3.2 มทศทางการไหล จากบนลงลาง จากซายไปขวา
3.3 เสนแสดงการไหลควรมจดตดกนใหนอยทสดเพอลดความผดพลาด
3.4 หากมการรวมเสนแสดงการไหลตงแต 2 เสนขนไป ควรน ามารวมเปนเสนเดยว
3.5 ค าอธบายการท างาน ควรสนกะทดรดและเขาใจงาย
3.6 ผงงานจะแสดงความสมพนธระหวางเวลาทเกดขนดวยล าดบการเขยน จากซายไปขวา หรอจากบนลงลาง 3.7 สญลกษณทใชมรปแบบแนนอน อาจใชโปรแกรมส าเรจรปตางๆชวยในการเขยน เชน Visio หรอ Microsoft Office แสดงตามภาพท 3-1
Start/Stop/Entry/Exit/Return
y = a + b - c
x<y ?
ผงงาน โดย อรรณพ ทองธรกล วทยาลยอาชวศกษาขอนแกน
57
Yes
No
ภาพท 3-1 เครองมอส าหรบเขยนผงงานใน Microsoft Office (ทมา : อรรณพ ทองธรกล.2555)
4. สญลกษณทใชในการเขยนผงงาน
การเขยนผงงานถอเปนขนตอนทส าคญ ในการเขยนโปรแกรมคอมพวเตอร เพอใชแสดงขนตอนการท างาน โดยการน าภาพสญลกษณมาเรยงกนตามมาตรฐานของหนวยงานทรบผดชอบคอ American National Standards Institute (ANSI) และ International Standard Organization (ISO) (ปญญาพล หอระตะ.2545:15) มดงน
4.1 สญลกษณจดเรมตน หรอจดสนสด (Terminator) ใชแทนจดเรมตนของโปรแกรมและจดสนสดของโปรแกรม
4.2 สญลกษณก าหนดคา การค านวณและการประมวลผล (Process) ใชแทนกระบวนการ
ท างานตามฟงกชนตางๆ 4.3 สญลกษณการตดสนใจ (Decision) ใชแทนการเปรยบเทยบหาทางเลอกของการตดสนใจ
Start/Stop/Entry/Exit/Return
y = a + b
age>20 ?
ผงงาน โดย อรรณพ ทองธรกล วทยาลยอาชวศกษาขอนแกน
58
4.4 สญลกษณการเตรยมท างานแบบวนรอบ (Preparation) ใชแทนการก าหนดคาเรมตนของการท างานลวงหนา
4.5 สญลกษณรบขอมลเขาหรอน าขอมลออก (Input/Output) ใชแทนการน าเขาขอมลและ
การแสดงผลลพธของขอมล โดยไมระบสอ
4.6 สญลกษณรบคาทางแปนพมพ (Manual Input) ใชแทนการรบคาทางแปนพมพ
4.7 สญลกษณการแสดงผลลพธทางจอภาพ (Display) ใชแทนการแสดงผลออกทางจอภาพ
4.8 สญลกษณแสดงผลลพธทางเครองพมพ (Document) ใชแทนการแสดงผลออกทางเครองพมพ
4.9 สญลกษณจดเชอมตอ (Connector) ใชแทนจดเชอมตอของแผนภาพในหนาเดยวกน
4.10 สญลกษณจดเชอมตอระหวางหนา (Off-Page Connector) ใชแทนจดเชอมตอของแผนภาพทอยคนละหนา โดยใชตวเลขหรอตวอกษรใสในสญลกษณ
4.11 สญลกษณแสดงทศทางการไหล (Flow line) ใชแทนทศทางในการท างาน
for i=1 to 100
input x
input x
print x
print x
A
A
i = 0 i = i + 1
A
i = 0
i = i + 1
A
ผงงาน โดย อรรณพ ทองธรกล วทยาลยอาชวศกษาขอนแกน
59
4.12 สญลกษณหมายเหต (Comment) ใชแทนค าอธบายเพอใหเขาใจรายละเอยดขนตอน การท างาน แตไมมผลตอการท างานของโปรแกรม
รบคาจากแปนพมพ 4.13 สญลกษณการเกบขอมลแบบออนไลน (Online Storage) ใชแทนการใชอปกรณหนวยความจ าแบบออนไลนในการรบคาและแสดงขอมล
4.14 สญลกษณโปรแกรมยอย (Subprogram) เรมท างานหลงจากจบค าสงในโปรแกรมยอยแลวกลบไปท าค าสงตอไป
database file
ผงงาน โดย อรรณพ ทองธรกล วทยาลยอาชวศกษาขอนแกน
60
ตารางท 3-1 สญลกษณตางๆของผงงาน http://สญ-ลกษณ.blogspot.com/2013/03/flowchart.html
ผงงาน โดย อรรณพ ทองธรกล วทยาลยอาชวศกษาขอนแกน
61
ตารางท 3-2 สญลกษณตางๆของผงงาน http://สญ-ลกษณ.blogspot.com/2013/03/flowchart.html
ผงงาน โดย อรรณพ ทองธรกล วทยาลยอาชวศกษาขอนแกน
62
5. ลกษณะการเขยนผงงานทด
การเขยนผงงานเพอประกอบการพฒนาโปรแกรม มขอแนะน าในการเขยนผงงานดงน 1. ผงงานมจดเรมตนและจดสนสดอยางละหนงจดเทานน 2. ผงงานทด สญลกษณตองมลกศรบอกทศทางเขาออกอยางละ 1 ทศทาง 3. สญลกษณจดเรมตนมลกศรชทศทางออก สญลกษณจดสนสดมลกศรชทศทางเขา 4. สญลกษณการตดสนใจมลกศรชเขา 1 ทาง และลกศรชออก 2 ทาง 5. ผงงานมล าดบขนตอนการท างานจากบนลงลาง จากซายไปขวา 6. ไมเขยนเสนลกศรตดกนกบขนตอนการท างาน 7. ควรใชจดเชอมโยงเมอตองการเชอมตอล าดบขนตอนทอยหางกนมาก 8. ผงงานควรสะอาด ชดเจน อานแลวเขาใจงายทกขนตอน 9. ครอบคลมทกขนตอนและมวธทดสอบผงงาน เพอน าไปเขยนโปรแกรมไดงายขน
6. หลกในการเขยนผงงานทด
การเขยนผงงานทด ตองรจกเลอกใชสญลกษณทเหมาะสม รวมถงอปกรณทชวยในการเขยนผงงาน ซงจะชวยใหการเขยนผงงานสะดวกและรวดเรวยงขน การเขยนผงงาน ตองเขยนตามขนตอนและวธการประมวลผลตามทไดท าการวเคราะหไวแลว ซงตองพจารณาตามล าดบกอนหลงของการท างาน เพอจดภาพของผงงานใหเปนมาตรฐานงายตอการเขาใจ และชวยใหการเขยนโปรแกรมจากผงงานมประสทธภาพยงขน ท าใหการเขยนผงงานเปนมาตรฐานเดยวกนจะใชล าดบในการเขยนผงงาน ดงน 1. การก าหนดคาเรมตน เปนการก าหนดคาเรมตนใหกบตวแปรตางๆ ทจ าเปนบางตว ไดแก ตวแปรทใชเปนตวนบรอบการท างาน หรอตวแปรทค านวณผลรวมตางๆ 2. การรบขอมลเขา เปนการรบขอมลน าเขามาจากแหลงขอมลตางๆ เพอใชเปนสวนหนงของการประมวลผล แลวน าคามาเกบไวในตวแปรใดๆ ตามทก าหนดไว 3. การประมวลผล เปนการประมวลผลตามทไดมการก าหนด หรอเปนการค านวณคาตางๆ ซงจะตองท าทละล าดบขนตอนและแยกรปแตละรปออกจากกนใหชดเจน 4. การแสดงผลลพธ เปนการแสดงขอมลทไดจากการค านวณ หรอผลลพธทตองการหรอคาจากตวแปรตางๆ ซงการแสดงผลลพธนมกจะกระท าหลงจากการประมวลผล หรอหลงจากการรบขอมลเขา
ผงงาน โดย อรรณพ ทองธรกล วทยาลยอาชวศกษาขอนแกน
63
No
ตวอยางผงงานทด ผงงานใหหาคาเฉลยของผลรวมของเลขจาก 1 – n แสดงตามภาพท 3-2
N
ภาพท 3-2 ตวอยางผงงานทด (ทมา : อรรณพ ทองธรกล.2555)
7. การเขยนผงงาน (Flowchart)
ตามม าตรฐาน ของ American National Standards Institute (ANSI) และ International Standard Organization (ISO) การเขยนผงงานเปนการน าสญลกษณตางๆทก าหนดไวมาเรยงล าดบ การท างาน เพอแสดงรายละเอยดขนตอนตางๆ แบงได 2 ชนด คอ
1. ผงงานระบบ (System Flowchart) 2. ผงงานโปรแกรม (Program Flowchart)
Yes
n
i = 0,sum = 0
i = i + 1
sum = sum + i
i<n?
?
avg=sum/n
i,sum,avg
Stop
Start
Initialize : การก าหนดคา
Process : การประมวลผล
Connect : จดเชอมตอเขา 1 จด
Input : การน าเขาขอมล
Decision : เงอนไข ( ใช,ไมใช )
Process : การประมวลผล
Output : การแสดงผล
การเรมตน
การสนสด
ผงงาน โดย อรรณพ ทองธรกล วทยาลยอาชวศกษาขอนแกน
64
7.1 ผงงานระบบ (System Flowchart)
ผงงานระบบ เปนผงงานทใชแสดงถงขนตอนในการท างานของระบบงานหนงๆ เชน ผงงานระบบงานการเงน แสดงตามภาพท 3-3
ตวอยางผงงานระบบ
ภาพท 3-3 ตวอยางผงงานระบบงานการเงน (ทมา : https://meantoo.files.wordpress.com/2012/11/flowchart01.jpg)
7.2 ผงงานโปรแกรม (Program Flowchart) ผงงานโปรแกรม เปนผงงานทใชแสดงถงขนตอนในการท างานของโปรแกรม แตละขนตอนมการใชค าสงอยางไร ผออกแบบสามารถดเปรยบเทยบและตดตามขนตอนการประมวลผลทงหมดได แสดงตามภาพท 3-4
ผงงาน โดย อรรณพ ทองธรกล วทยาลยอาชวศกษาขอนแกน
65
No
N Yes
Y Yes
No No
Yes
ตวอยางผงงานโปรแกรม
ใหค านวณหาจ านวนนกเรยนในหองเรยน พรอมทงระบจ านวนนกเรยนในแตละเพศ
Input จ านวนนกเรยน, เพศของแตละคน
Compute นบวา มจ านวนเพศละกคน
Output บอกวา จ านวนเพศชายกคน, จ านวนเพศหญงกคน
ภาพท 3-4 ตวอยางผงงานโปรแกรม (ทมา : อรรณพ ทองธรกล.2555)
i=0,tm=0,tf=0
n
Read
sex
sex=‘m’? tm=tm+1 tf=tf+1
i=i+1
i<n?
Print n,tm,tf
Stop
A
A
Start
Initialize
Input
Input
Process Process
Process
Decision
Output
Connect to point
Connect in point