Upload
patipat04
View
196
Download
3
Embed Size (px)
Citation preview
การเขยนผงการเขยนผงงานเบองตนงานเบองตน
Basic Basic FlowchartingFlowcharting
การเขยนผงการเขยนผงงานงาน(Flowcharting)(Flowcharting)• ผงงาน หมายถง เครองมอทชวยในการเขยน
โปรแกรม โดยเขยนเปนเครองหมายภาพสญลกษณแสดงลำาดบขนตอนการทำางาน
• การเขยนผงงาน เปนการถายทอดความเขาใจทไดจากการวเคราะหงานใหอยในรปภาพหรอสญลกษณ
• ผเขยนโปรแกรมจะสามารถเขาใจลำาดบขนตอนการเขยนโปรแกรมไดอยางรวดเรวและงายขน และงายตอการตรวจสอบความถกตองของลำาดบขนตอนในวธการประมวลผล
การเขยนผงการเขยนผงงานงาน(Flowcharting)(Flowcharting)• งานทกชนดทมการวเคราะหเปนลำาดบขน
ตอนแลว เราสามารถนำามาเขยนผงงานได แมกระทงงานทเกยวของกบชวตประจำาวนของเราเอง
ตวอยางผงงานทวไปตวอยางผงงานทวไป((1/3)1/3)• แสดงการโยน
เหรยญ 3 ครง ถาออกหว ผโยนจะไดเงน 10 บาท ถาออกกอย ผโยนจะเสยเงน 10 บาท
เรมตน
โยนเหรยญ
ผลการโยน
ไดเงน 10 บาทเสยเงน 10 บาท
ครบ 3 ครงหรอยง?
หยด
หวกอย
ยง
ครบ
ตวอยางผงงานทวไปตวอยางผงงานทวไป(2/3)(2/3)• ผงงานแสดงการ
เดนขามถนนทมสญญาณไฟจราจร
เรมตน
รอสญญาณไฟ
ไฟแดงหรอไม
เดนขามถนน
หยด
ใช
ไมใช
ตวอยางผงงานตวอยางผงงานทวไปทวไป(3/3)(3/3)• ผงงานพจารณาการใชยา
ตามฉลากยาทปดขางขวด แยกตามขนาดการใชดงน– อายตำากวา 5 ป หามรบ
ประทาน– อาย - 5 7 ป ครงละ 1
เมด– อาย - 8 14 ป ครงละ
2 เมด– อาย 15 ปขนไป ครงละ
3 เมด
เรมตน
อายตำากวา 5 ป หามรบประทาน
อาย 5 ปขนไป แตไมถง 8 ป ครงละ 1 เมด
อาย 8 ปขนไปแตไมถง 15 ป ครงละ 2 เมด
ครงละ 3 เมด
หยด
ใช
ใช
ใช
ไมใช
ไมใช
ไมใช
ผงงานทางคอมพวเตอรผงงานทางคอมพวเตอรผงงานทางคอมพวเตอรแบงออกเปน 2 ประเภท ไดแก
ผงงานระบบ (System flowchart)
ผงงานโปรแกรม (Program flowchart)
ผงงานระบบผงงานระบบ(System (System flowchart)flowchart)• เปนผงงานทใชแสดงขนตอนการทำางานของระบบ
งานอยางกวาง ๆ ทงระบบ โดยแสดงใหเหนถงความสมพนธของสวนสำาคญตาง ๆ ในระบบนน
• เชน เอกสารเบองตน หรอสอบนทกทใชอยเปนอะไร และผานไปยงหนวยงานใด มกจกรรมอะไรในหนวยงานนน ๆ แลวสงตอไปยงหนวยงานใด เปนตน
• ดงนน ผงงานระบบ จะเกยวของกบ คน วสด และเครองจกร โดยแสดงการนำาขอมลเขา ประมวลผล แสดงผลลพธ วามาจากทใดกวาง ๆ
ตวอยางผงงานระบบตวอยางผงงานระบบ• ผงงานแสดงการ
คำานวณพนทสามเหลยมจำานวน 100 รป
เรมตน
บนทกความสงและความยาวฐานลงในดสก
รบความสง และความยาวฐานของสามเหลยม 100 รป
ดสกทบนทกแลว
คำานวณพนทของสามเหลยม
พมพรายงานของพนทสามเหลยม
จบ
ผงงานผงงานโปรแกรมโปรแกรม(Program (Program
flowchart)flowchart)• เปนผงงานทแสดงขนตอนของคำาสงทใชในโปรแกรม
• ผงงานนแยกยอยมาจากผงงานระบบ โดยผเขยนโปรแกรมจะดงเอาแตละจดทเกยวของกบการประมวลผลในคอมพวเตอรทปรากฏในผงงานระบบมาเขยนแสดงรายละเอยดในการประมวลผลอยางเปนลำาดบขนตอน เพอนำาไปประกอบการเขยนโปรแกรมตอไป
ตวอยางผงงานโปรแกรมตวอยางผงงานโปรแกรม• ผงงานแสดงการ
คำานวณพนทสามเหลยมจำานวน 100 รป
เรมตน
รบความสง และความยาวฐานทละรป
ครบ 100 รปแลวใชหรอไม
คำานวณพนท= 0.5 * ฐาน * สง
พมพพนทสามเหลยมทละรป
จบ
ไมใช
ใช
เปรยบเทยบผงงานระบบและผงเปรยบเทยบผงงานระบบและผงงานโปรแกรมงานโปรแกรมเรมตน
บนทกความสงและความยาวฐานลงในดสก
รบความสง และความยาวฐานของสามเหลยม 100 รป
ดสกทบนทกแลว
คำานวณพนทของสามเหลยม
พมพรายงานของพนทสามเหลยม
จบ
เรมตน
รบความสง และความยาวฐานทละรป
ครบ 100 รปแลวใชหรอไม
คำานวณพนท= 0.5 * ฐาน * สง
พมพพนทสามเหลยมทละรป
จบ
ไมใช
ใช
ผงงานระบบ
ผงงานโปรแกรม
ประโยชนของการเขยนผงประโยชนของการเขยนผงงานงาน• เราสามารถเรยนรและเขาใจผงงานไดงาย เพราะผงงาน
ไมขนอยกบภาษาคอมพวเตอรภาษาใดภาษาหนง• ผงงานเปนการสอความหมายดวยภาพ ทำาใหงายและ
สะดวกตอการพจารณาลำาดบขนตอนในการทำางานดกวาการบรรยายเปนตวอกษร
• ชวยใหการคนหาความผดพลาดของลำาดบการทำางานไดรวดเรว และสามารถแกไขไดงาย
• การเขยนโปรแกรมโดยพจารณาจากผงงาน สามารถทำาไดรวดเรวและงายขน
• ในการบำารงรกษาโปรแกรม หรอมการเปลยนแปลงแกไขโปรแกรมใหมประสทธภาพ ถาดจากผงงานจะชวยใหสามารถทบทวนการทำางานในโปรแกรมไดงายขน
ขอจำากดของการเขยนผงขอจำากดของการเขยนผงงานงาน•การเขยนผงงานไมเหมาะกบงานทมวธ
การซบซอน เชน มการทเงอนไขในการทอสอบมากมาย ซงมกจะใชตารางการตดสนใจ(decision table) เขามาชวยมากกวา
สญลกษณในการเขยนผงสญลกษณในการเขยนผงงานงาน(1/13)(1/13)•การเขยนผงงานเปนการนำาเอาภาพสญลกษณ
ตาง ๆ มาเรยงตอกน เพอแสดงลำาดบขนตอนการทำางาน โดยมเสนลกศรเชอมระหวางภาพตางๆ
•สญลกษณในการเขยนผงงานทนยมใชกนนน เปนสญลกษณของหนวยงานทชอวา American National Standard Institute (ANSI) และ International Standard Organization (ISO) เปนผกำาหนดและรวบรวมใหเปนสญลกษณมาตรฐานในการเขยนผงงาน
สญลกษณในการเขยนผงสญลกษณในการเขยนผงงานงาน(2/13)(2/13)
สญลกษณ
ความหมาย ตวอยางการใช
คำาอธบาย
การเรมตนหรอสนสดการเขยนผงงาน(Terminal)
1 .เรมตนผงงาน
2. จบผงงาน
รบขอมลหรอแสดงขอมลโดยไมระบสอ(Input/output)
1 .รบคาใสในตวแปรชอ name
2. แสดงคาจากตวแปร area
START
STOP
read name
display area
สญลกษณในการเขยนผงสญลกษณในการเขยนผงงานงาน(3/13)(3/13)
สญลกษณ
ความหมาย ตวอยางการใช
คำาอธบาย
การประมวลผล(Process)
1 .คำานวณ A + B และเกบไวใน C
2 .กำาหนดคา sum เทากบ 0
การเปรยบเทยบหรอตวสนใจ(Compare / Decision)
เปรยบเทยบถา i มคา
นอยกวาหรอเทากบ 10
- เปนจรง พมพคา i เสรจแลวไปทำาคำาสงอน ๆ
- เปนเทจ ไปทำาคำาสงอน ๆ
C = A + B
Sum = 0
i <= 10true
false
แสดง i
สญลกษณในการเขยนผงสญลกษณในการเขยนผงงานงาน(4/13)(4/13)
สญลกษณ
ความหมาย ตวอยางการใช
คำาอธบาย
การแสดงผลลพธทางเครองพมพ(Document)
พมพคา A ทาง
เครองพมพ
การแสดงผลลพธทางจอภาพ(Display)
แสดงคา A, B
บนจอภาพ
print A
display A , B
สญลกษณในการเขยนผงสญลกษณในการเขยนผงงานงาน(5/13)(5/13)
สญลกษณ
ความหมาย ตวอยางการใช
คำาอธบาย
หมายเหต(Comment)รบคาทางการกดแปนพมพ(Manual Input)
รบคา A ทางแปนพมพ
read A A = Age
read A
สญลกษณในการเขยนผงสญลกษณในการเขยนผงงานงาน(6/13)(6/13)สญลกษ
ณความหมาย ตวอยาง
การใชคำาอธบาย
การกำาหนดคาตางๆ ไวลวงหนา(Preparation)
กำาหนดให i มคาเทากบ
1 และเพมคาทละ 1
จนมคาเปน 100 จงออก
จากการทำางานซำา โดยแตละรอบ
บวกคา sum ดวยคา i
แสดงทศทางและลำาดบของการทำางาน(Flow line)
for i =1 to 100
sum = sum + i
i
สญลกษณในการเขยนผงสญลกษณในการเขยนผงงานงาน(7/13)(7/13)
สญลกษณ
ความหมาย ตวอยางการใช
คำาอธบาย
จดตอเนองในหนาเดยวกน(In-Page connector)
หลงจากพมพคา A
แลวใหทำาตามทจด
ตอเนอง A ซงอยใน
หนาเดยวกนจดตอเนองทอยคนละหนา(Off-Page Connector)
หลงจากกำาหนดคา A
เทากบ 3 ใหทำาตาม
จดตอเนองชอ 1 ซง
ไมไดอยในหนาเดยวกน
A
write A
A = 3
1
สญลกษณในการเขยนผงสญลกษณในการเขยนผงงานงาน(8/13)(8/13)สญลกษ
ณความหมาย ตวอยาง
การใชคำาอธบาย
การรบหรอแสดงขอมลโดยใชบตรเจาะร(Punch card)
1 . อานคา A ทบตรเจาะร 1 ใบ
2 .เจาะคา B,C บนบตร 1 ใบ
ชดของบตรเจาะร(Card Desk)
เจาะคา B1 , B2 , Bn
บนบตร n ใบ
read A
punch B , C
punch bi b=1 ,…n
สญลกษณในการเขยนผงสญลกษณในการเขยนผงงานงาน(9/13)(9/13)
สญลกษณ
ความหมาย ตวอยางการใช
คำาอธบาย
การรบหรอแสดงขอมลโดยใชเทปกระดาษ(Punched tape)
อานคา ID , name
บนเทปกระดาษ
การรบหรอแสดงขอมลโดยใชเทปแมเหลกเปนสอ(Magnatic tape)
read ID , name
สญลกษณในการเขยนผงสญลกษณในการเขยนผงงานงาน(10/13)(10/13)
สญลกษณ
ความหมาย ตวอยางการใช
คำาอธบาย
การรบหรอแสดงขอมลโดยใชจานแมเหลกเปนสอ(Magnatic disk)การรบหรอแสดงขอมลโดยใชดรมแมเหลกเปนสอ(Magnatic drum)
สญลกษณในการเขยนผงสญลกษณในการเขยนผงงานงาน(11/13)(11/13)
สญลกษณ
ความหมาย ตวอยางการใช
คำาอธบาย
การทำางานทกำาหนดไวแลว เชน โปรแกรมยอย(Predefine Process)
เรยกโปรแกรม
ยอยชอ findGrade
ใหทำางานการควบคมการทำางานดวยมนษย บางครงเรยกการทำางานแบบออฟไลน (Offline Processing)
findGrade
สญลกษณในการเขยนผงสญลกษณในการเขยนผงงานงาน(12/13)(12/13)
สญลกษณ
ความหมาย ตวอยางการใช
คำาอธบาย
การทำางานแบบออฟไลนของอปกรณทไมไดถกควบคมจากหนวยประมวลผลกลางโดยตรง(Auxiliary Operation)การจดเรยงลำาดบขอมล(Sorting)
สญลกษณในการเขยนผงสญลกษณในการเขยนผงงานงาน(13/13)(13/13)
สญลกษณ
ความหมาย ตวอยางการใช
คำาอธบาย
การสงขอมลทางสายสอสาร(Communication Link)
หลกการจดภาพผงหลกการจดภาพผงงานงาน(1/2)(1/2)• ทศทางของผง
งานจะเรมจากสวนบนของหนากระดาษลงมายงสวนลาง และจากซายมอไปของหนากระดาษ และควรเขยนเครองหมายลกศรกำากบทศทางไวดวย
START
STOP
read age
age > 60
“You are old”
true
false
บน
ลาง
ทศทางของเสน
หลกการจดภาพผงหลกการจดภาพผงงานงาน(2/2)(2/2)• สญลกษณหรอ
ภาพทใชในการเขยนผงงานมขนาดตาง ๆ กนได แตจะตองมรปมาตรฐานตามความหมายทกำาหนด
START
sum = 0
i = 1 to 10
sum = sum + i
isum
STOP
ขนาดของสญลกษณปรบใหเหมาะสมกบขอความในสญลกษณ
หลกการจดภาพผงหลกการจดภาพผงงานงาน(3/2)(3/2)•การเขยนทศทางของผงงานควรเปนไปอยาง
มระเบยบ และหลกเลยงการขดโยงไปโยงมาในทศทางตดกน ถาจำาเปนตองโยงถงกน ควรใชเครองหมายจดตอเนองแทนและถาเปนไปไดควรเขยนผงงานใหจบในหนาเดยวกน
•คำาอธบายในภาพ เขยนเพยงสน ๆ และเขาใจงาย
•ผงงานทดควรจะมความเปนระเบยบเรยบรอยและสะอาด นอกจากนแลว จะมชอของผงงาน ผเขยน วนทเขยน และเลขหนาลำาดบ
รปแบบการเขยนผงงานรปแบบการเขยนผงงาน•แบบตามลำาดบ (Sequence)•แบบการเลอก/ตดสนใจ/เงอนไข (Selection/Decision/Condition)
•แบบวนซำา (Iteration / Loop)
รปแบบตามลำาดบรปแบบตามลำาดบ(1/3)(1/3)• เปนรปแบบการเขยนโปรแกรมทงายทสด
ทำางานทละอยางจากบนลงลาง แสดงลำาดบการทำางานจากบนลงลางตามลกศร
งานท 1
งานท 2
งานท 3
อานขอมล
คำานวณขอมล
พมพผลลพธ
คำานวณ
คำานวณ
คำานวณ
รปแบบตามลำาดบรปแบบตามลำาดบ(2/3)(2/3)START
STOP
A = 5
B = 3
C = A + B
print C
เรมตนกำาหนดคาตวแปร A มคาเปน 5
กำาหนดคาตวแปร B มคาเปน 3
เอาคา A บวกกบ B แลวเกบไวใน C
พมพคา C
จบการทำางาน
รปแบบตามลำาดบรปแบบตามลำาดบ(3/3)(3/3)เรมตนรบขอมลมาเกบไวในตวแปร A, B ทางแปนพมพ
เอาคา A บวกกบ B แลวเกบไวใน C
พมพคา C
จบการทำางาน
START
STOP
C = A + B
print C
A , B
ตวอยางการเขยนผงงานแบบตวอยางการเขยนผงงานแบบตามลำาดบตามลำาดบ
• จงเขยนโปรแกรมคำานวณคาไฟฟา โดยรบคามเตอรจำานวนการใชไฟฟาของเดอนทแลว และคามเตอรการใชไฟฟาของเดอนปจจบน คำานวณคาไฟฟา โดยคดอตรา 25. บาท 1/ หนวยมเตอร
1 .สงทโจทยตองการคาไฟฟา
2 .รปแบบผลลพธปอนเลขมเตอรเดอนทแลว --> <รอรบเลขมเตอรเดอนทแลว>ปอนเลขมเตอรเดอนปจจบน--> <รอรบเลขมเตอรเดอนปจจบน>-----------------------------------------------------จำานวนหนวยไฟฟาทใช : <แสดงจำานวนหนวยไฟฟาทใช>คาไฟฟา : <แสดงคาไฟฟา>
ตวอยางการเขยนผงงานแบบตวอยางการเขยนผงงานแบบตามลำาดบตามลำาดบ
3. ขอมลนำาเขา– เลขมเตอรเดอนทแลว– เลขมเตอรเดอนปจจบน
4. ตวแปรทใชในการประมวลผล– Last_meter แทน เลขมเตอรเดอนทแลว– Curr_meter แทน เลขมเตอรเดอนปจจบน– Num_meter แทน จำานวนหนวยมเตอรทใช– Electric_fee แทน คาไฟฟา
ตวอยางการเขยนผงงานแบบตวอยางการเขยนผงงานแบบตามลำาดบตามลำาดบ
5. ขนตอนวธการประมวลผล1 .เรมตน2 .รบคาใสตวแปร last_meter และ curr_meter
จากผใชทางแปนพมพ3. คำานวณ num_meter = curr_meter –
last_meter 4. คำานวณ electric_fee = num_meter * 2.55. แสดงคา num_meter , electric_fee6. จบการทำางาน
Flow chartFlow chartSTART
STOP
Num_meter = Curr_meter – Last_meter
Last_meter , Curr_meter
Electric_fee = Num_meter * 2.5
Num_meter , Electric_fee
แบบการเลอกแบบการเลอกเปนการเขยนโปรแกรมแบบมการเปรยบเทยบ
เงอนไข และทำางานตามคำาสงอยางใดอยางหนงตามเงอนไขทกำาหนด ผลจากการเปรยบเทยบเงอนไข จะใหผลลพธเปนจรงหรอเทจ ถาผลเปนจรง ใหทำางานตามคำาสงดานทเงอนไขเปนจรง ถาเปนเทจใหทำาตามคำาสงดานทเงอนไขเปนเทจ
• แบบทางเลอกเดยว (IF - THEN)• แบบสองทางเลอก (IF – THEN - ELSE)• แบบหลายทางเลอก (IF – THEN – ELSE IF |
CASE)
แบบทางเลอกเดยวแบบทางเลอกเดยว(1/5)(1/5)
เงอนไข
ประโยคงาน
งานลำาดบถดไป
จรง
เทจ
เงอนไข
ประโยคงาน 1
งานลำาดบถดไป
จรง
เทจ
ประโยคงาน 2
แบบทางเลอกเดยวแบบทางเลอกเดยว(2/5)(2/5)START
STOP
read age
age > 60
“You are old”
true
false
เรมตน
รบคาใสตวแปร age
ถาเปนจรง พมพขอความ You are oldถาเปนเทจ ไมตองทำาอะไร
จบการทำางาน
เปรยบเทยบคา age มากกวา 60
แบบทางเลอกเดยวแบบทางเลอกเดยว(3/5)(3/5)รบคา รหสผานจากผใช ถารหสผานทปอนมคา GoodLuck ใหแสดงขอวา Welcome Manager และขอความ Exit Password System
เรม
รบคา ans
ans = “GoodLuck”
พมพ Welcome Manager
พมพ Exit PasswordSystem
จบ
จรง
เทจ
แบบทางเลอกเดยวแบบทางเลอกเดยว(4/5)(4/5)• บรษทแหงหนงตองการเพมเงนเดอนใหพนกงานทม
เงนเดอนตำากวา 5000 อกคนละ 10% และใหพนกงานทกคนไดรบโบนสคนละ 3 เทาของเงนเดอน
• ขนตอนการประมวลผล1 .รบคาชอพนกงาน . เงนเดอน2.เปรยบเทยบคา เงนเดอน
- ถานอยกวา 5000 ใหเงนเดอน = เงนเดอน + (เงนเดอน * 10/100)
3.คำานวณโบนส = เงนเดอน *34.แสดงผลลพธ5.จบการทำางาน
แบบทางเลอกเดยวแบบทางเลอกเดยว(5/5)(5/5)START
STOP
read name ,salary
salary < 5000 Name , salary , bonus
true
false
salary = salary + (salary*10/100)
A
A
bonus = salary * 3
แตไมตองเขยนเสนเชอมน
ขอควรจำา• ในการเปรยบเทยบเงอนไขแบบ IF –
THEN นยมใหทำางานตามคำาสงเมอเงอนไขมคาเปนจรง ไมนยมใหทำางามตามคำาสงเปนเทจ
เงอนไข
ประโยคงาน 1
งานลำาดบถดไป
จรง
เทจ
ประโยคงาน 2
เงอนไข
ประโยคงาน 1
งานลำาดบถดไป
จรง
เทจ
ประโยคงาน 2
เงอนไข
ประโยคงาน 1
งานลำาดบถดไป
จรง
เทจ
ประโยคงาน 2
IF เงอนไข THEN BEGIN
ประโยคงาน 1 ;ประโยคงาน 2 ;
END;
เงอนไข
ประโยคงาน 1
งานลำาดบถดไป
เทจ
จรง
ประโยคงาน 2
IF เงอนไข THEN
ELSE BEGIN
ประโยคงาน 1 ;ประโยคงาน 2 ;
END;
แบบสองทางเลอกแบบสองทางเลอก(1/6)(1/6)• การทำางานขนอยกบเงอนไข ถาเปนจรงไป
ทำางานดานหนง ถาเปนเทจกจะไปทำางานอกอยางหนง
เงอนไข
ประโยคงาน2
งานลำาดบถดไป
จรงเทจ
ประโยคงาน1
แบบสองทางเลอกแบบสองทางเลอก(2/6)(2/6)• ถา sex =1
เงอนไขเปนจรง จะเพมคาตวแปร Male ขนอก 1
• ถา sex =1 เงอนไขเปนเทจ จะเพมคาตวแปร Female ขนอก 1
Sex = 1
Male = Male +1Female = Female + 1
TrueFalse
แบบสองทางเลอกแบบสองทางเลอก(3/6)(3/6)START
STOP
read age
age > 60
“You are old”
truefalse
“You are young”
เรมตน
รบคาใสตวแปร age
ถาเปนจรง พมพขอความ You are oldถาเปนเทจ พมพขอความ You are young
จบการทำางาน
เปรบเทยบคา age มากกวา 60
แบบสองทางเลอกแบบสองทางเลอก(4/6)(4/6)เรม
รบคา ans
ans = ‘y’ OR ans=‘Y’
พมพ Thank Youพมพ I’m sorry to hear that
จรงเทจ
พมพ Do you like Pascal
พมพ Good Bye
จบ
แสดงขอความ Do you like Pascal
รบคาใสตวแปร ans
เรมการทำางาน
เปรยบเทยบคา ans เทากบ y หรอ Y- ถาเปนจรง พมพThank you-ถาเปนเทจ พมพI’m sorry to hear that
พมพคำาวา Goodbye
จบการทำางาน
แบบสองทางเลอกแบบสองทางเลอก(5/6)(5/6)• บรษทแหงหนงตองการเพมเงนเดอนใหพนกงานทม
เงนเดอนตำากวา 5000 อกคนละ 10% และพนกงานทมเงนเดอนตงแต 5000 เพม 5% ใหพนกงานทกคนไดรบโบนสคนละ 3 เทาของเงนเดอน
• ขนตอนการประมวลผล1 .รบคาชอพนกงาน . เงนเดอน2.เปรยบเทยบคา เงนเดอน < 5000
- ถาเปนจรง ใหอตราเพมเงนเดอน = 10/100- ถาเปนเทจใหอตราเพมเงนเดอน = 5/100
3.คำานวณเงนเดอน = เงนเดอน + (เงนเดอน * อตราเพมเงนเดอน)
4.โบนส = เงนเดอน *35.แสดงผลลพธ6.จบการทำางาน
แบบทางเลอกเดยวแบบทางเลอกเดยว(6/6)(6/6)START
STOP
read name ,salary
salary < 5000
Name , salary , bonus
truefalse
rate = 10 / 100
A
A
bonus = salary * 3
แตไมตองเขยนเสนเชอมน
rate = 5 / 100
salary = salary+(salary * rate)
การเลอกหลายทางการเลอกหลายทาง((แบบ แบบ IF)IF)• เปนรปแบบการเลอก
การทำางานทมทางเลอกมากกวา 2ทางขนไป
เงอนไข 1
คำาสงท 1
TrueFalse
เงอนไข 2
คำาสงท 2
TrueFalse
เงอนไข 3
คำาสงท 3
TrueFalse
คำาสงท 4
การเลอกหลายทางการเลอกหลายทาง((แบบ แบบ IF)IF)
Score >=80
Grade = ‘A’
truefalse
Score >=70
Grade = ‘B’
truefalse
Score >=60
Grade = ‘C’
truefalse
Score >=50
Grade = ‘D’
truefalse
Grade = ‘F’
Score = mid + final
การเลอกหลายทางการเลอกหลายทาง((แบบ แบบ CASE)CASE)• เปนรปแบบการเลอกการทำางานทมทางเลอก
มากกวา 2 ทางขนไป
เงอนไข
คำาสงท 2คำาสงท 1 คำาสงท 4คำาสงท 3
กรณ 1 กรณ 2 กรณ 3 กรณ 4
การเลอกหลายทางการเลอกหลายทาง((แบบ แบบ CASE)CASE)
score
Grade = ‘B’Grade = ‘A’ Grade = ‘D’Grade = ‘C’
80..100 70..79 60..69 50..59
Grade = ‘F’
0..49
Score = mid + final
แบบวนซำาแบบวนซำา•แบบกำาหนดรอบไวลวง
หนา(Controlled Loop)•แบบตรวจสอบเงอนไขกอน(Pre-Test Condition)
•แบบตรวจสอบเงอนไขทหลง(Post-Test Condition)
แบบกำาหนดรอบการทำางานเอาแบบกำาหนดรอบการทำางานเอาไวลวงหนาไวลวงหนา
• มการกำาหนดรอบการทำางานซำาไวลวงหนา เมอครบตามจำานวนรอบจงหยดทำางานซำาแลวทำาคำาสงตอไป
กำาหนดรอบการทำางาน
คำาสงทำาซำ)า 1
คำาสงทำาซำ)า 2
Next
แบบกำาหนดรอบการทำางานเอาแบบกำาหนดรอบการทำางานเอาไวลวงหนาไวลวงหนา
• คา N จะเรมตนท 1 และเพมคาทละ 1 จนกระทง มากกวา 5 จงหยดการทำางานซำา และทำาคำาสงถดจาก Next ในแตละรอบของงานทใหทำาซำาคอ พมพคาในตวแปร N ทละรอบ
For N =1 , 5
Next
Print N
แบบตรวจสอบเงอนไขกอนถาเปนจรงแบบตรวจสอบเงอนไขกอนถาเปนจรงแลวคอยทำาซำาแลวคอยทำาซำา
• แบบตรวจสอบเงอนไขกอน ถาเงอนไขยงเปนจรงใหทำางานซำา จนกระทงเงอนไขเปนเทจจงหยดทำางานซำา แลวไปทำางานคำาสงอนถดไป
เงอนไข
คำาสงงานซำา 1
True
False
คำาสงงานซำา 2
แบบตรวจสอบเงอนไขกอนถาเปนจรงแบบตรวจสอบเงอนไขกอนถาเปนจรงแลวคอยทำาซำาแลวคอยทำาซำา
• ตรวจสอบเงอนไขถา N <= 5– ใหพมพ คา N – เพมคา N อก 1
(N=N+1)
• กลบไปตรวจสอบเงอนไขอก จนกวาเงอนจะเปนเทจ จงหยดทำางานซำา แลวไปทำางานคำาสงอน
N <=5
N = N+1
True
False
Print N
N = 1
แบบทำาซำากอนแลวคอยตรวจแบบทำาซำากอนแลวคอยตรวจเงอนไขเงอนไข
• แบบใหทำางานในคำาสงทำาซำากอน แลวคอยตรวจสอบเงอนไข ถาเงอนไขยงเปนเทจใหกลบไปทำางานในคำาสงทำาซำาอก จนกระทงตรวจสอบแลวเงอนเปนจรง จงหยด แลวไปทำางานคำาสงอน
เงอนไข
คำาสงงานซำา 1
True
False
คำาสงงานซำา 2
แบบทำาซำากอนแลวคอยตรวจแบบทำาซำากอนแลวคอยตรวจเงอนไขเงอนไข
– ใหพมพคาในตวแปร N
– เพมคาใหตวแปร N อก 1
• ตรวจสอบเงอนไข ถา N > 5 เปนจรงใหหยดทำางานซำา ถาเปนเทจใหกลบไปทำางานคำาสงซำาอกรอบ
N > 5
True
False
N = N+1
Print N
N = 1