Upload
charity-solis
View
352
Download
0
Embed Size (px)
DESCRIPTION
บทที่ 2 การเขียนผังงาน (Flow Chart). แผนการสอนรายสัปดาห์ที่ 2 สามารถเขียนลำดับขั้นตอนการทำงานได้ เขียนผังงาน Flow Chart และการเขียน Pseudo code ได้อย่างถูกต้องตามแบบแผน. Flow Chart คือ ขั้นตอนที่นำผลที่ได้จากการกำหนดและการ วิเคราะห์ปัญหามาเขียนเป็นแผนภาพหรือสัญลักษณ์ - PowerPoint PPT Presentation
Citation preview
1
บทท 2การเขยนผงงาน (Flow Chart)
แผนการสอนรายสปดาหท 2
1 . สามารถเขยนลำาดบขนตอนการทำางานได2. เขยนผงงาน Flow Chart และการเขยน Pseudo code ไดอยางถกตองตามแบบแผน
Flow Chart คอ ขนตอนทนำาผลทไดจากการกำาหนดและการ วเคราะหปญหามาเขยนเปนแผนภาพหรอสญลกษณ
Pseudo code คอ การอธบายการทำางานของโปรแกรมโดยใชการผสมผสานระหวางประโยคภาษาองกฤษ กบภาษาคอมพวเตอร เพอใชเปนแนวทางในการเขยนคำาสงคอมพวเตอร หรอเรยกอกอยางหนงวาการเขยนคำาสงลำาลอง
สญลกษณในการเขยนผงงาน(1/13)
การเขยนผงงานเปนการนำาเอาภาพสญลกษณตาง ๆ มาเรยงตอกน เพอแสดงลำาดบขนตอนการทำางาน โดยมเสนลกศรเชอมระหวางภาพตางๆ
สญลกษณในการเขยนผงงานทนยมใชกนนน เปนสญลกษณของหนวยงานทชอวา American National Standard Institute (ANSI) และ International Standard Organization (ISO) เปนผกำาหนดและรวบรวมใหเปนสญลกษณมาตรฐานในการเขยนผงงาน
สญลกษณในการเขยนผงงาน(2/13)
สญลกษณ
ความหมาย ตวอยางการใช
คำาอธบาย
(Terminal)
การเรมตนหรอสนสดการเขยนผงงาน
1 .เรมตนผงงาน
2. จบผงงาน
Input/output
รบขอมลแสดงขอมลโดยไมระบสอ
1 .รบคาใสในตวแปรชอ name
2. แสดงคาจากตวแปร area
START
STOP
read name
display area
สญลกษณในการเขยนผงงาน(3/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
สญลกษณในการเขยนผงงาน(4/13)
สญลกษณ
ความหมาย ตวอยางการใช
คำาอธบาย
Punched tape
การรบหรอแสดงขอมลโดยใชเทปกระดาษ
อานคา ID , name
บนเทปกระดาษ
Magnatic tape
การรบหรอแสดงขอมลโดยใชเทปแมเหลกเปนสอ
read ID , name
สญลกษณในการเขยนผงงาน(5/13)
สญลกษณ ความหมาย ตวอยางการใช
คำาอธบาย
Magnatic disk
การรบหรอแสดงขอมลโดยใชจานแมเหลกเปนสอ
Magnatic drum
การรบหรอแสดงขอมลโดยใชดรมแมเหลกเปนสอ
สญลกษณในการเขยนผงงาน(6/13)
สญลกษณ
ความหมาย ตวอยางการใช
คำาอธบาย
Document
การแสดงผลลพธทางเครองพมพ
พมพคา A ทาง
เครองพมพ
Display
การแสดงผลลพธทางจอภาพ
แสดงคา A, B
บนจอภาพ
write A
display A , B
สญลกษณในการเขยนผงงาน(7/13)
สญลกษณ
ความหมาย ตวอยางการใช
คำาอธบาย
Process
การประมวลผล
1 .คำานวณ A + B และเกบไวใน C
2 .กำาหนดคา sum เทากบ 0
Compare หรอDecision
การเปรยบเทยบหรอตดสนใจ
เปรยบเทยบถา i มคา
นอยกวาหรอเทากบ 10
- เปนจรง พมพคา i เสรจแลวไปทำาคำาสงอน ๆ
- เปนเทจ ไปทำาคำาสงอน ๆ
C = A + B
Sum = 0
i <= 10true
false
แสดง i
สญลกษณในการเขยนผงงาน(8/13)สญลกษ
ณความหมาย ตวอยาง
การใชคำาอธบาย
Preparation
การกำาหนดคาตางๆ ไวลวงหนา
กำาหนดให i มคาเทากบ
1 และเพมคาทละ 1
จนมคาเปน 100 จงออก
จากการทำางานซำา โดยแตละรอบ
บวกคา sum ดวยคา i
Flow line
แสดงทศทางและลำาดบของการทำางาน
for i =1 to 100
sum = sum + i
i
สญลกษณในการเขยนผงงาน(9/13)
สญลกษณ
ความหมาย ตวอยางการใช
คำาอธบาย
In-Page connector
จดตอเนองในหนาเดยวกน
หลงจากพมพคา A
แลวใหทำาตามทจด
ตอเนอง A ซงอยใน
หนาเดยวกน
Off-Page Connector
จดตอเนองทอยคนละหนา
หลงจากกำาหนดคา A
เทากบ 3 ใหทำาตาม
จดตอเนองชอ 1 ซงไมไดอยในหนา
เดยวกน
A
write A
A = 3
1
สญลกษณในการเขยนผงงาน(10/13)
สญลกษณ
ความหมาย ตวอยางการใช
คำาอธบาย
Comment
หมายเหต
Manual Input
รบคาทางการกดแปนพมพ
รบคา A ทางแปนพมพ
read A A = Age
read A
สญลกษณในการเขยนผงงาน(11/13)
สญลกษณ ความหมาย ตวอยางการใช
คำาอธบาย
Predefine Process
การทำางานทกำาหนดไวแลว เชน โปรแกรมยอย
เรยกโปรแกรม
ยอยชอ findGrade
ใหทำางาน
Offline Processing
การควบคมการทำางานดวยมนษย บางครงเรยกการทำางานแบบออฟไลน
findGrade
สญลกษณในการเขยนผงงาน(12/13)
สญลกษณ
ความหมาย ตวอยางการใช
คำาอธบาย
Auxiliary Operation
การทำางานแบบออฟไลนของอปกรณทไมไดถกควบคมจากหนวยประมวลผลกลางโดยตรง
Sorting
การจดเรยงลำาดบขอมล
สญลกษณในการเขยนผงงาน(13/13)
สญลกษณ ความหมาย ตวอยางการใช
คำาอธบาย
Communication Link
การสงขอมลทางสายสอสาร
หลกการจดภาพผงงาน1 .ทศทางของผงงานจะเรมจากสวนบนของหนา
กระดาษ ลงมายงสวนลาง และจากซายมอไปของหนากระดาษ และควรเขยนเครองหมายลกศรกำากบทศทางไวดวย
2.สญลกษณหรอภาพทใชในการเขยนผงงานมขนาดตาง ๆ กนได แตจะตองมรปมาตรฐานตามความหมายทกำาหนด
หลกการจดภาพผงงาน 3. การเขยนทศทางของผงงานควรเปนไปอยางม
ระเบยบ และหลกเลยงการขดโยงไปโยงมาในทศทางตดกน ถาจำาเปน ตองโยงถงกน ควรใชเครองหมายจดตอเนองแทนและถาเปนไปไดควรเขยน ผงงานใหจบในหนาเดยวกน 4. คำาอธบายในภาพ เขยนเพยงสน ๆ และเขาใจงาย 5. ผงงานทดควรจะมความเปนระเบยบเรยบรอยและสะอาด นอกจากนแลว จะมชอของผงงาน ผเขยน วนทเขยน และเลขหนาลำาดบ
รปแบบการเขยนผงงาน1 .แบบตามลำาดบ (Sequence)2. แบบการเลอก/ตดสนใจ/
เงอนไข (Selection/Decision/Condition)
3. แบบวนซำา (Iteration / Loop)
รปแบบตามลำาดบ(1/3)1 .แสดงลำาดบการทำางานจากบนลงลางตาม
ลกศรงานท 1
งานท 2
งานท 3
อานขอมล
คำานวณขอมล
พมพผลลพธ
คำานวณ
คำานวณ
คำานวณ
รปแบบตามลำาดบ(3/3)เรมตน
รบขอมลมาเกบไวในตวแปร A, B ทางแปนพมพ
เอาคา A บวกกบ B แลวเกบไวใน C
พมพคา C
จบการทำางาน
START
STOP
C = A + B
print C
A , B
แบบทางเลอก•แบบทางเลอกเดยว (IF - THEN)•แบบสองทางเลอก (IF – THEN -
ELSE)•แบบหลายทางเลอก (CASE)
แบบทางเลอกเดยว(1/5)
เงอนไข
ประโยคงาน
งานลำาดบถดไป
จรง
เทจ
เงอนไข
ประโยคงาน 1
งานลำาดบถดไป
จรง
เทจ
ประโยคงาน 2
แบบทางเลอกเดยว(2/5)START
STOP
read age
age > 60
“You are old”
true
false
เรมตน
รบคาใสตวแปร age
ถาเปนจรง พมพขอความ You are oldถาเปนเทจ ไมตองทำาอะไร
จบการทำางาน
เปรยบเทยบคา age มากกวา 60
แบบทางเลอกเดยว(4/5)1 .บรษทแหงหนงตองการเพมเงนเดอนใหพนกงานทมเงน
เดอนตำากวา 5000 อกคนละ 10% และใหพนกงานทกคนไดรบโบนสคนละ 3 เทาของเงนเดอน
ขนตอนการประมวลผล1 .รบคาชอพนกงาน . เงนเดอน2. เปรยบเทยบคา เงนเดอน
- ถานอยกวา 5000 ใหเงนเดอน = เงนเดอน + (เงนเดอน *10/100)
3. คำานวณโบนส = เงนเดอน *34. แสดงผลลพธ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
แตไมตองเขยนเสนเชอมน
แบบสองทางเลอก(1/6)• การทำางานขนอยกบเงอนไข ถาเปนจรงไปทำางาน
ดานหนง ถาเปนเทจ กจะไปทำางานอกอยางหนง
เงอนไข
ประโยคงาน2
งานลำาดบถดไป
จรงเทจ
ประโยคงาน1
แบบสองทางเลอก(3/6)START
STOP
read age
age > 60
“You are old”
truefalse
“You are young”
เรมตน
รบคาใสตวแปร age
ถาเปนจรง พมพขอความ You are oldถาเปนเทจ พมพขอความ You are young
จบการทำางาน
เปรบเทยบคา age มากกวา 60
แบบสองทางเลอก(5/6)• บรษทแหงหนงตองการเพมเงนเดอนใหพนกงานทมเงนเดอน
ตำากวา 5000 อกคนละ 10% และพนกงานทมเงนเดอนตงแต 5000 เพม 5% ใหพนกงานทกคนไดรบโบนสคนละ 3 เทาของเงนเดอน
• ขนตอนการประมวลผล1 .รบคาชอพนกงาน . เงนเดอน2.เปรยบเทยบคา เงนเดอน < 5000
- ถาเปนจรง ใหอตราเพมเงนเดอน = 10/100- ถาเปนเทจใหอตราเพมเงนเดอน = 5/100
3.คำานวณเงนเดอน = เงนเดอน + (เงนเดอน * อตราเพมเงนเดอน)4.โบนส = เงนเดอน *35.แสดงผลลพธ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)• เปนรปแบบการเลอกการ
ทำางานทมทางเลอกมากกวา 2 ทางขนไป
เงอนไข 1
คำาสงท 1
TrueFalse
เงอนไข 2
คำาสงท 2
TrueFalse
เงอนไข 3
คำาสงท 3
TrueFalse
คำาสงท 4
การเลอกหลายทาง(แบบ 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)
• เปนรปแบบการเลอกการทำางานทมทางเลอกมากกวา 2 ทางขนไป
เงอนไข
คำาสงท 2คำาสงท 1 คำาสงท 4คำาสงท 3
กรณ 1 กรณ 2 กรณ 3 กรณ 4
การเลอกหลายทาง(แบบ 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 > 5
True
False
N = N+1
Print N
N = 1
ใหพมพคาในตวแปร Nเพมคาใหตวแปร N อก 1
กำาหนดคาตวแปร N มคาเทากบ 1
ถา N > 5 เปนจรงใหหยดทำางานซำา
The EndWeek 3
ทำาแบบฝกหด