Flowchart6
-
Upload
- -
Category
Technology
-
view
88 -
download
0
Transcript of Flowchart6
รู�ปแบบการูเขียนผั�งงาน
☺แบบตามลำ�าดั�บ (Sequence)☺แบบการูเลำ�อก/ต�ดัสิ�นใจ/เง��อนไขี (Selection/Decision/Condition)
☺แบบวนซ้ำ� า (Iteration / Loop)
รู�ปแบบตามลำ�าดั�บ(1/3)เป!นรู�ปแบบการูเขียนโปรูแกรูมที่�ง$ายที่�สิ%ดั
ที่�างานที่ลำะอย$างจากบนลำงลำ$าง แสิดังลำ�าดั�บการูที่�างานจากบนลำงลำ$างตามลำ�กศรู
งานที่� 1
งานที่� 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)
เรู��มต(นรู�บขี(อม�ลำมาเก/บไว(ในต�วแปรู A, B ที่างแป0นพิ�มพิ,
เอาคำ$า A บวกก�บ B แลำ(วเก/บไว(ใน C
พิ�มพิ,คำ$า C
จบการูที่�างาน
START
STOP
C = A + B
print C
A , B
ต�วอย$างการูเขียนผั�งงานแบบตามลำ�าดั�บ
จงเขียนโปรูแกรูมคำ�านวณคำ$าไฟฟ0า โดัยรู�บคำ$าม�เตอรู,จ�านวนการูใช้(ไฟฟ0าขีองเดั�อนที่�แลำ(ว แลำะคำ$าม�เตอรู,การูใช้(ไฟฟ0าขีองเดั�อนป3จจ%บ�น คำ�านวณคำ$าไฟฟ0า โดัยคำ�ดัอ�ตรูา 2.5 บาที่ /1 หน$วยม�เตอรู,1 .สิ��งที่�โจที่ย,ต(องการู
คำ$าไฟฟ0า2. รู�ปแบบผัลำลำ�พิธ์,
ป0อนเลำขีม�เตอรู,เดั�อนที่�แลำ(ว --> <รูอรู�บเลำขีม�เตอรู,เดั�อนที่�แลำ(ว>ป0อนเลำขีม�เตอรู,เดั�อนป3จจ%บ�น--> <รูอรู�บเลำขีม�เตอรู,เดั�อนป3จจ%บ�น>-----------------------------------------------------จ�านวนหน$วยไฟฟ0าที่�ใช้( : <แสิดังจ�านวนหน$วยไฟฟ0าที่�ใช้(>คำ$าไฟฟ0า : <แสิดังคำ$าไฟฟ0า>
ต�วอย$างการูเขียนผั�งงานแบบตามลำ�าดั�บ
3. ขี(อม�ลำน�าเขี(า– เลำขีม�เตอรู,เดั�อนที่�แลำ(ว– เลำขีม�เตอรู,เดั�อนป3จจ%บ�น
4 .ต�วแปรูที่�ใช้(ในการูปรูะมวลำผัลำ– Last_meter แที่น เลำขีม�เตอรู,เดั�อนที่�แลำ(ว– Curr_meter แที่น เลำขีม�เตอรู,เดั�อนป3จจ%บ�น– Num_meter แที่น จ�านวนหน$วยม�เตอรู,ที่�ใช้(– Electric_fee แที่น คำ$าไฟฟ0า
ต�วอย$างการูเขียนผั�งงานแบบตามลำ�าดั�บ
5 .ขี� นตอนว�ธ์การูปรูะมวลำผัลำ1 .เรู��มต(น2. รู�บคำ$าใสิ$ต�วแปรู last_meter แลำะ
curr_meter จากผั�(ใช้(ที่างแป0นพิ�มพิ,3. คำ�านวณ num_meter =
curr_meter – last_meter 4. คำ�านวณ electric_fee =
num_meter * 2.55. แสิดังคำ$า num_meter ,
electric_fee6. จบการูที่�างาน
Flow chartSTART
STOP
Num_meter = Curr_meter – Last_meter
Last_meter , Curr_meter
Electric_fee = Num_meter * 2.5
Num_meter , Electric_fee
แบบการูเลำ�อกเป!นการูเขียนโปรูแกรูมแบบมการู
เปรูยบเที่ยบเง��อนไขี แลำะที่�างานตามคำ�าสิ��งอย$างใดัอย$างหน4�งตามเง��อนไขีที่�ก�าหนดั ผัลำจากการูเปรูยบเที่ยบเง��อนไขี จะให(ผัลำลำ�พิธ์,เป!นจรู�งหรู�อเที่/จ ถ้(าผัลำเป!นจรู�ง ให(ที่�างานตามคำ�าสิ��งดั(านที่�เง��อนไขีเป!นจรู�ง ถ้(าเป!นเที่/จให(ที่�าตามคำ�าสิ��งดั(านที่�เง��อนไขีเป!นเที่/จ
• แบบที่างเลำ�อกเดัยว (IF - THEN)• แบบสิองที่างเลำ�อก (IF – THEN - ELSE)• แบบหลำายที่างเลำ�อก (IF – THEN – ELSE
IF | CASE)
แบบที่างเลำ�อกเดัยว(1/5)
เงื่��อนไข
ประโยคงื่าน
งื่านลำ�าดั�บถั�ดัไป
จรู�ง
เที่/จ
เงื่��อนไข
ประโยคงื่าน 1
งื่านลำ�าดั�บถั�ดัไป
จรู�ง
เที่/จ
ประโยคงื่าน 2
แบบที่างเลำ�อกเดัยว(2/5)
START
STOP
read age
age > 60
“You are old”
true
false
เรู��มต(นรู�บคำ$าใสิ$ต�วแปรู age
ถ้(าเป!นจรู�ง พิ�มพิ,ขี(อคำวาม You are oldถ้(าเป!นเที่/จ ไม$ต(องที่�าอะไรู
จบการูที่�างาน
เปรูยบเที่ยบคำ$า age มากกว$า 60
แบบที่างเลำ�อกเดัยว(3/5)รู�บคำ$า รูห�สิผั$านจากผั�(ใช้( ถ้(ารูห�สิผั$านที่�ป0อนมคำ$า GoodLuck ให(แสิดังขี(อว$า Welcome Manager แลำะขี(อคำวาม Exit Password System
เรู��ม
รู�บคำ$า ans
ans = “GoodLuck”
พิ�มพิ, Welcome Manager
พิ�มพิ, Exit PasswordSystem
จบ
จรู�ง
เที่/จ
แบบที่างเลำ�อกเดัยว(4/5)บรู�ษั�ที่แห$งหน4�งต(องการูเพิ��มเง�นเดั�อนให(
พิน�กงานที่�มเง�นเดั�อนต��ากว$า 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
แต$ไม$ต(องเขียนเสิ(นเช้��อมน
ขี(อคำวรูจ�าในการูเปรูยบเที่ยบเง��อนไขีแบบ 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)การูที่�างานขี4 นอย�$ก�บเง��อนไขี ถ้(าเป!นจรู�งไป
ที่�างานดั(านหน4�ง ถ้(าเป!นเที่/จก/จะไปที่�างานอกอย$างหน4�ง
เงื่��อนไข
ประโยคงื่าน2
งื่านลำ�าดั�บถั�ดัไป
จรู�งเที่/จ
ประโยคงื่าน1
แบบสิองที่างเลำ�อก(2/6)• ถ้(า sex =1
เง��อนไขีเป!นจรู�ง จะเพิ��มคำ$าต�วแปรู Male ขี4 นอก 1
• ถ้(า sex =1 เง��อนไขีเป!นเที่/จ จะเพิ��มคำ$าต�วแปรู Female ขี4 นอก 1
Sex = 1
Male = Male +1Female = Female + 1
TrueFalse
แบบสิองที่างเลำ�อก(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)เรู��ม
ร�บค�า 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)บรู�ษั�ที่แห$งหน4�งต(องการูเพิ��มเง�นเดั�อนให(พิน�กงานที่�มเง�นเดั�อนต��ากว$า 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 ที่างขี4 นไป
เง��อนไขี 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 ที่างขี4 นไป
เง��อนไขี
ค�าสั่��งื่ที่�� 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)
แบบก�าหนดัรูอบการูที่�างานเอาไว(ลำ$วงหน(า
มการูก�าหนดัรูอบการูที่�างานซ้ำ� าไว(ลำ$วงหน(า เม��อคำรูบตามจ�านวนรูอบจ4งหย%ดัที่�างานซ้ำ� าแลำ(วที่�าคำ�าสิ��งต$อไป
ก�าหนดัรูอบการูที่�างาน
ค�าสั่��งื่ที่�าซ้ำ� า 1
ค�าสั่��งื่ที่�าซ้ำ� า 2
Next
แบบก�าหนดัรูอบการูที่�างานเอาไว(ลำ$วงหน(า
คำ$า N จะเรู��มต(นที่� 1 แลำะเพิ��มคำ$าที่ลำะ 1 จนกรูะที่��ง มากกว$า 5 จ4งหย%ดัการูที่�างานซ้ำ� า แลำะที่�าคำ�าสิ��งถ้�ดัจาก Next ในแต$ลำะรูอบขีองงานที่�ให(ที่�าซ้ำ� าคำ�อ พิ�มพิ,คำ$าในต�วแปรู N ที่ลำะรูอบ
For N =1 , 5
Next
Print N
แบบตรูวจสิอบเง��อนไขีก$อนถ้(าเป!นจรู�งแลำ(วคำ$อยที่�าซ้ำ� า
แบบตรูวจสิอบเง��อนไขีก$อน ถ้(าเง��อนไขีย�งเป!นจรู�งให(ที่�างานซ้ำ� า จนกรูะที่��งเง��อนไขีเป!นเที่/จจ4งหย%ดัที่�างานซ้ำ� า แลำ(วไปที่�างานคำ�าสิ��งอ��นถ้�ดัไป
เง��อนไขี
คำ�าสิ��งงานซ้ำ� า 1
True
False
คำ�าสิ��งงานซ้ำ� า 2
แบบตรูวจสิอบเง��อนไขีก$อนถ้(าเป!นจรู�งแลำ(วคำ$อยที่�าซ้ำ� า
• ตรูวจสิอบเง��อนไขีถ้(า N <= 5– ให(พิ�มพิ, คำ$า N – เพิ��มคำ$า N อก 1
(N=N+1)
• กลำ�บไปตรูวจสิอบเง��อนไขีอก จนกว$าเง��อนจะเป!นเที่/จ จ4งหย%ดัที่�างานซ้ำ� า แลำ(วไปที่�างานคำ�าสิ��งอ��น
N <=5
N = N+1
True
False
Print N
N = 1
แบบที่�าซ้ำ� าก$อนแลำ(วคำ$อยตรูวจเง��อนไขี
แบบให(ที่�างานในคำ�าสิ��งที่�าซ้ำ� าก$อน แลำ(วคำ$อยตรูวจสิอบเง��อนไขี ถ้(าเง��อนไขีย�งเป!นเที่/จให(กลำ�บไปที่�างานในคำ�าสิ��งที่�าซ้ำ� าอก จนกรูะที่��งตรูวจสิอบแลำ(วเง��อนเป!นจรู�ง จ4งหย%ดั แลำ(วไปที่�างานคำ�าสิ��งอ��น
เง��อนไขี
คำ�าสิ��งงานซ้ำ� า 1
True
False
คำ�าสิ��งงานซ้ำ� า 2
แบบที่�าซ้ำ� าก$อนแลำ(วคำ$อยตรูวจเง��อนไขี
– ให(พิ�มพิ,คำ$าในต�วแปรู N
– เพิ��มคำ$าให(ต�วแปรู N อก 1
• ตรูวจสิอบเง��อนไขี ถ้(า N > 5 เป!นจรู�งให(หย%ดัที่�างานซ้ำ� า ถ้(าเป!นเที่/จให(กลำ�บไปที่�างานคำ�าสิ��งซ้ำ� าอกรูอบ
N > 5
True
False
N = N+1
Print N
N = 1