Flowchart

64
Basic Flowcharting
  • Upload

    -
  • Category

    Business

  • view

    132
  • download

    1

Transcript of Flowchart

Page 1: Flowchart

Basic Flowcharting

Page 2: Flowchart

การเขี�ยนผังงาน(Flowcharting)

ผังงาน หมายถึ�ง เคร��องม�อที่��ช่�วยในการเขี�ยนโปรแกรม โดยเขี�ยนเป�นเคร��องหมายภาพสัญลักษณ์&แสัดงลั'าดบขี)นตอนการที่'างาน

การเขี�ยนผังงาน เป�นการถึ�ายที่อดความเขี+าใจที่��ได+จากการว.เคราะห&งานให+อย0�ในร0ปภาพหร�อสัญลักษณ์&

ผั0+เขี�ยนโปรแกรมจะสัามารถึเขี+าใจลั'าดบขี)นตอนการเขี�ยนโปรแกรมได+อย�างรวดเร1วแลัะง�ายขี�)น แลัะง�ายต�อการตรวจสัอบความถึ0กต+องขีองลั'าดบขี)นตอนในว.ธี�การประมวลัผัลั

Page 3: Flowchart

การเขี�ยนผังงาน(Flowcharting)

งานที่3กช่น.ดที่��ม�การว.เคราะห&เป�นลั'าดบขี)นตอนแลั+ว เราสัามารถึน'ามาเขี�ยนผังงานได+ แม+กระที่�งงานที่��เก��ยวขี+องกบช่�ว.ตประจ'าวนขีองเราเอง

Page 4: Flowchart

ตวอย�างผังงานที่�วไป(1/3)

แสัดงการโยนเหร�ยญ 3 คร)ง ถึ+าออกหว ผั0+โยนจะได+เง.น 10 บาที่ ถึ+าออกก+อย ผั0+โยนจะเสั�ยเง.น 10 บาที่

เร.�มต+น

โยนเหร�ยญ

ผัลัการโยน

ได+เง.น 10 บาที่เสั�ยเง.น 10 บาที่

ครบ 3 คร)งหร�อยง?

หย3ด

หวก+อย

ยง

ครบ

Page 5: Flowchart

ตวอย�างผังงานที่�วไป(2/3)

ผังงานแสัดงการเด.นขี+ามถึนนที่��ม�สัญญาณ์ไฟจราจร

เร.�มต+น

รอสัญญาณ์ไฟ

ไฟแดงหร�อไม�

เด.นขี+ามถึนน

หย3ด

ใช่�

ไม�ใช่�

Page 6: Flowchart

ตวอย�างผังงานที่�วไป(3/3)ผังงานพ.จารณ์าการ

ใช่+ยาตามฉลัากยาที่��ป6ดขี+างขีวด แยกตามขีนาดการใช่+ดงน�)

–อาย3ต'�ากว�า 5 ป7 ห+ามรบประที่าน

–อาย3 5 - 7 ป7 คร)งลัะ 1 เม1ด

–อาย3 8 - 14 ป7 คร)งลัะ 2 เม1ด

–อาย3 15 ป7ขี�)นไป คร)งลัะ 3 เม1ด

เร.�มต+นอาย3ต'�ากว�า

5 ป7 ห+ามรบประที่าน

อาย3 5 ป7ขี)นไป แต�ไม�ถึ�ง 8 ป7 คร)งลัะ 1 เม1ด

อาย3 8 ป7ขี)นไปแต�ไม�ถึ�ง 15 ป7 คร)งลัะ 2 เม1ด

คร)งลัะ 3 เม1ด

หย3ด

ใช่�

ใช่�

ใช่�

ไม�ใช่�

ไม�ใช่�

ไม�ใช่�

Page 7: Flowchart

ผังงานที่างคอมพ.วเตอร&ผังงานที่างคอมพ.วเตอร&แบ�งออกเป�น 2 ประเภที่ ได+แก�

ผังงานระบบ (System flowchart)

ผังงานโปรแกรม (Program flowchart)

Page 8: Flowchart

ผังงานระบบ(System flowchart) ใช่+แสัดงขี)นตอนการที่'างานขีองระบบงาน

อย�างกว+าง ๆ ที่)งระบบ โดยแสัดงให+เห1นถึ�งความสัมพนธี&ขีองสั�วนสั'าคญต�าง ๆ ในระบบน)น

เช่�น เอกสัารเบ�)องต+น หร�อสั��อบนที่�กที่��ใช่+อย0�เป�นอะไร แลัะผั�านไปยงหน�วยงานใด ม�ก.จกรรมอะไรในหน�วยงานน)น ๆ แลั+วสั�งต�อไปยงหน�วยงานใด เป�นต+น ดงน)น ผังงานระบบ จะเก��ยวขี+องกบ คน วสัด3 แลัะเคร��องจกร โดยแสัดงการน'าขี+อม0ลัเขี+า ประมวลัผัลั แสัดงผัลัลัพธี& ว�ามาจากที่��ใดกว+าง ๆ

Page 9: Flowchart

ตวอย�างผังงานระบบ

ผังงานแสัดงการค'านวณ์พ�)นที่��สัามเหลั��ยมจ'านวน 100 ร0ป

เร.�มต+น

บนที่�กความสั0งแลัะความยาวฐานลังในด.สัก&

รบความสั0ง แลัะความยาวฐานขีองสัามเหลั��ยม 100 ร0ป

ด.สัก&ที่��บนที่�กแลั+ว

ค'านวณ์พ�)นที่��ขีองสัามเหลั��ยม

พ.มพ&รายงานขีองพ�)นที่��สัามเหลั��ยม

จบ

Page 10: Flowchart

ผังงานโปรแกรม(Program

flowchart) เป�นผังงานที่��แสัดงขี)นตอนขีองค'าสั�งที่��ใช่+ใน

โปรแกรม

ผังงานน�)แยกย�อยมาจากผังงานระบบ โดยผั0+เขี�ยนโปรแกรมจะด�งเอาแต�ลัะจ3ดที่��เก��ยวขี+องกบการประมวลัผัลัในคอมพ.วเตอร&ที่��ปรากฏใน ผังงานระบบมาเขี�ยนแสัดงรายลัะเอ�ยดในการประมวลัผัลัอย�างเป�นลั'าดบขี)นตอน เพ��อน'าไปประกอบการเขี�ยนโปรแกรมต�อไป

Page 11: Flowchart

ตวอย�างผังงานโปรแกรม

ผังงานแสัดงการค'านวณ์พ�)นที่��สัามเหลั��ยมจ'านวน 100 ร0ป

เร.�มต+น

รบความสั0ง แลัะความยาวฐานที่�ลัะร0ป

ครบ 100 ร0ปแลั+วใช่�หร�อไม�

ค'านวณ์พ�)นที่��= 0.5 * ฐาน * สั0ง

พ.มพ&พ�)นที่��สัามเหลั��ยมที่�ลัะร0ป

จบ

ไม�ใช่�

ใช่�

Page 12: Flowchart

เปร�ยบเที่�ยบผังงานระบบแลัะผังงานโปรแกรมเร.�มต+น

บนที่�กความสั0งแลัะความยาวฐานลังในด.สัก&

รบความสั0ง แลัะความยาวฐานขีองสัามเหลั��ยม 100 ร0ป

ด.สัก&ที่��บนที่�กแลั+ว

ค'านวณ์พ�)นที่��ขีองสัามเหลั��ยม

พ.มพ&รายงานขีองพ�)นที่��สัามเหลั��ยม

จบ

เร.�มต+น

รบความสั0ง แลัะความยาวฐานที่�ลัะร0ป

ครบ 100 ร0ปแลั+วใช่�หร�อไม�

ค'านวณ์พ�)นที่��= 0.5 * ฐาน * สั0ง

พ.มพ&พ�)นที่��สัามเหลั��ยมที่�ลัะร0ป

จบ

ไม�ใช่�

ใช่�

ผังงานระบบ

ผังงานโปรแกรม

Page 13: Flowchart

ประโยช่น&ขีองการเขี�ยนผังงาน เราสัามารถึเร�ยนร0+แลัะเขี+าใจผังงานได+ง�าย เพราะ

ผังงานไม�ขี�)นอย0�กบภาษาคอมพ.วเตอร&ภาษาใดภาษาหน��ง

ผังงานเป�นการสั��อความหมายด+วยภาพ ที่'าให+ง�ายแลัะสัะดวกต�อการพ.จารณ์าลั'าดบขี)นตอนในการที่'างานด�กว�าการบรรยายเป�นตวอกษร

ช่�วยให+การค+นหาความผั.ดพลัาดขีองลั'าดบการที่'างานได+รวดเร1ว แลัะสัามารถึแก+ไขีได+ง�าย

การเขี�ยนโปรแกรมโดยพ.จารณ์าจากผังงาน สัามารถึที่'าได+รวดเร1วแลัะง�ายขี�)น

ในการบ'าร3งรกษาโปรแกรม หร�อม�การเปลั��ยนแปลังแก+ไขีโปรแกรมให+ม�ประสั.ที่ธี.ภาพ ถึ+าด0จากผังงานจะช่�วยให+สัามารถึที่บที่วนการที่'างานในโปรแกรมได+ง�ายขี�)น

Page 14: Flowchart

ขี+อจ'ากดขีองการเขี�ยนผังงาน

การเขี�ยนผังงานไม�เหมาะกบงานที่��ม�ว.ธี�การซับซั+อน เช่�น ม�การที่��เง��อนไขีในการที่อสัอบมากมาย ซั��งมกจะใช่+ตารางการตดสั.นใจ(decision table) เขี+ามาช่�วยมากกว�า

Page 15: Flowchart

สัญลักษณ์&ในการเขี�ยนผังงาน(1/13)

การเขี�ยนผังงานเป�นการน'าเอาภาพสัญลักษณ์&ต�าง ๆ มาเร�ยงต�อกน เพ��อแสัดงลั'าดบขี)นตอนการที่'างาน โดยม�เสั+นลั0กศรเช่��อมระหว�างภาพต�างๆ

สัญลักษณ์&ในการเขี�ยนผังงานที่��น.ยมใช่+กนน)น เป�นสัญลักษณ์&ขีองหน�วยงานที่��ช่��อว�า American National Standard Institute (ANSI) แลัะ International Standard Organization (ISO) เป�นผั0+ก'าหนดแลัะรวบรวมให+เป�นสัญลักษณ์&มาตรฐานในการเขี�ยนผังงาน

Page 16: Flowchart

สัญลักษณ์&ในการเขี�ยนผังงาน(2/13)

สัญลักษณ์&

ความหมาย ตวอย�างการใช่+

ค'าอธี.บาย

การเร.�มต+นหร�อสั.)นสั3ดการเขี�ยนผังงาน(Terminal)

1 .เร.�มต+นผังงาน

2. จบผังงาน

รบขี+อม0ลัหร�อแสัดงขี+อม0ลัโดยไม�ระบ3สั��อ(Input/output)

1 .รบค�าใสั�ในตวแปรช่��อ name

2. แสัดงค�าจากตวแปร area

START

STOP

read name

display area

Page 17: Flowchart

สัญลักษณ์&ในการเขี�ยนผังงาน(3/13)

สัญลักษณ์&

ความหมาย ตวอย�างการใช่+

ค'าอธี.บาย

การประมวลัผัลั(Process)

1 .ค'านวณ์ A

+ B แลัะเก1บไว+ใน C

2. ก'าหนดค�า sum เที่�ากบ 0

การเปร�ยบเที่�ยบหร�อตวสั.นใจ(Compare / Decision)

เปร�ยบเที่�ยบถึ+า i ม�ค�า

น+อยกว�าหร�อเที่�ากบ 10

- เป�นจร.ง พ.มพ&ค�า i เสัร1จแลั+วไปที่'าค'าสั�งอ��น ๆ

- เป�นเที่1จ ไปที่'าค'าสั�งอ��น ๆ

C = A + B

Sum = 0

i <= 10

true

false

แสดง i

Page 18: Flowchart

สัญลักษณ์&ในการเขี�ยนผังงาน(4/13)

สัญลักษณ์&

ความหมาย ตวอย�างการใช่+

ค'าอธี.บาย

การแสัดงผัลัลัพธี&ที่างเคร��องพ.มพ&(Docume

nt)

พ.มพ&ค�า A

ที่างเคร��องพ.มพ&

การแสัดงผัลัลัพธี&ที่าง

จอภาพ(Display)

แสัดงค�า A, B

บนจอภาพ

print A

display A , B

Page 19: Flowchart

สัญลักษณ์&ในการเขี�ยนผังงาน(5/13)

สัญลักษณ์&

ความหมาย ตวอย�างการใช่+

ค'าอธี.บาย

หมายเหต3(Comment)

รบค�าที่างการกดแป=นพ.มพ&(Manual Input)

รบค�า A ที่างแป=นพ.มพ&

read A A = Age

read A

Page 20: Flowchart

สัญลักษณ์&ในการเขี�ยนผังงาน(6/13)สัญลักษ

ณ์&ความหมาย ตวอย�าง

การใช่+ค'าอธี.บาย

การก'าหนดค�าต�างๆ ไว+ลั�วงหน+า(Preparation)

ก'าหนดให+ i ม�ค�าเที่�ากบ

1 แลัะเพ.�มค�าที่�ลัะ 1

จนม�ค�าเป�น 100

จ�งออกจากการที่'างานซั')า โดยแต�ลัะรอบ

บวกค�า sum ด+วยค�า i

แสัดงที่.ศที่างแลัะลั'าดบขีองการที่'างาน(Flow line)

for i =1 to 100

sum = sum + i

i

Page 21: Flowchart

สัญลักษณ์&ในการเขี�ยนผังงาน(7/13)

สัญลักษณ์&

ความหมาย ตวอย�างการใช่+

ค'าอธี.บาย

จ3ดต�อเน��องในหน+าเด�ยวกน(In-Page connector)

หลังจากพ.มพ&ค�า A

แลั+วให+ที่'าตามที่��จ3ด

ต�อเน��อง A ซั��งอย0�ใน

หน+าเด�ยวกน

จ3ดต�อเน��องที่��อย0�คนลัะหน+า(Off-Page Connector)

หลังจากก'าหนดค�า A

เที่�ากบ 3 ให+ที่'าตาม

จ3ดต�อเน��องช่��อ 1 ซั��ง

ไม�ได+อย0�ในหน+าเด�ยวกน

A

write A

A = 3

1

Page 22: Flowchart

สัญลักษณ์&ในการเขี�ยนผังงาน(8/13)สัญลักษ

ณ์&ความหมาย ตวอย�าง

การใช่+ค'าอธี.บาย

การรบหร�อแสัดงขี+อม0ลัโดยใช่+บตรเจาะร0(Punch card)

1 .อ�านค�า A

ที่��บตรเจาะร0 1 ใบ

2 .เจาะค�า B,C บนบตร 1 ใบ

ช่3ดขีองบตรเจาะร0(Card Desk)

เจาะค�า B1 , B2 , Bn

บนบตร n ใบ

read A

punch B , C

punch bi b=1 ,…n

Page 23: Flowchart

สัญลักษณ์&ในการเขี�ยนผังงาน(9/13)

สัญลักษณ์&

ความหมาย ตวอย�างการใช่+

ค'าอธี.บาย

การรบหร�อแสัดงขี+อม0ลัโดยใช่+เที่ปกระดาษ(Punched tape)

อ�านค�า ID , name

บนเที่ปกระดาษ

การรบหร�อแสัดงขี+อม0ลัโดยใช่+เที่ปแม�เหลั1กเป�นสั��อ(Magnatic tape)

read ID , name

Page 24: Flowchart

สัญลักษณ์&ในการเขี�ยนผังงาน(10/13)

สัญลักษณ์&

ความหมาย ตวอย�างการใช่+

ค'าอธี.บาย

การรบหร�อแสัดงขี+อม0ลัโดยใช่+จานแม�เหลั1กเป�นสั��อ(Magnatic disk)

การรบหร�อแสัดงขี+อม0ลัโดยใช่+ดรมแม�เหลั1กเป�นสั��อ(Magnatic drum)

Page 25: Flowchart

สัญลักษณ์&ในการเขี�ยนผังงาน(11/13)

สัญลักษณ์&

ความหมาย ตวอย�างการใช่+

ค'าอธี.บาย

การที่'างานที่��ก'าหนดไว+แลั+ว เช่�น โปรแกรมย�อย(Predefine Process)

เร�ยกโปรแกรม

ย�อยช่��อ findGrade

ให+ที่'างานการควบค3มการที่'างานด+วยมน3ษย& บางคร)งเร�ยกการที่'างานแบบออฟไลัน& (Offline Processing)

findGrade

Page 26: Flowchart

สัญลักษณ์&ในการเขี�ยนผังงาน(12/13)

สัญลักษณ์&

ความหมาย ตวอย�างการใช่+

ค'าอธี.บาย

การที่'างานแบบออฟไลัน&ขีองอ3ปกรณ์&ที่��ไม�ได+ถึ0กควบค3มจากหน�วยประมวลัผัลักลัางโดยตรง(Auxiliary Operation)

การจดเร�ยงลั'าดบขี+อม0ลั(Sorting)

Page 27: Flowchart

สัญลักษณ์&ในการเขี�ยนผังงาน(13/13)

สัญลักษณ์&

ความหมาย ตวอย�างการใช่+

ค'าอธี.บาย

การสั�งขี+อม0ลัที่างสัายสั��อสัาร(Communication Link)

Page 28: Flowchart

หลักการจดภาพผังงาน(1/2)

ที่.ศที่างขีองผังงานจะเร.�มจากสั�วนบนขีองหน+ากระดาษลังมายงสั�วนลั�าง แลัะจากซั+ายม�อไปขีองหน+ากระดาษ แลัะควรเขี�ยนเคร��องหมายลั0กศรก'ากบที่.ศที่างไว+ด+วย

START

STOP

read age

age > 60

“You are old”

true

false

บน

ลั�าง

ที่.ศที่างขีองเสั+น

Page 29: Flowchart

หลักการจดภาพผังงาน(2/2)

สัญลักษณ์&หร�อภาพที่��ใช่+ในการเขี�ยนผังงานม�ขีนาดต�าง ๆ กนได+ แต�จะต+องม�ร0ปมาตรฐานตามความหมายที่��ก'าหนด

START

sum = 0

i = 1 to 10

sum = sum + i

i

sum

STOP

ขนาดของสญลักษณ์�ปรับให้�เห้มาะสมกบข�อความในสญลักษณ์�

Page 30: Flowchart

หลักการจดภาพผังงาน(3/2)

การเขี�ยนที่.ศที่างขีองผังงานควรเป�นไปอย�างม�ระเบ�ยบ แลัะหลั�กเลั��ยงการขี�ดโยงไปโยงมาในที่.ศที่างตดกน ถึ+าจ'าเป�นต+องโยงถึ�งกน ควรใช่+เคร��องหมายจ3ดต�อเน��องแที่นแลัะถึ+าเป�นไปได+ควรเขี�ยนผังงานให+จบในหน+าเด�ยวกน

ค'าอธี.บายในภาพ เขี�ยนเพ�ยงสั)น ๆ แลัะเขี+าใจง�าย

ผังงานที่��ด�ควรจะม�ความเป�นระเบ�ยบเร�ยบร+อยแลัะสัะอาด นอกจากน�)แลั+ว จะม�ช่��อขีองผังงาน ผั0+เขี�ยน วนที่��เขี�ยน แลัะเลัขีหน+าลั'าดบ

Page 31: Flowchart

ร0ปแบบการเขี�ยนผังงาน

☺แบบตามลั'าดบ (Sequence)☺แบบการเลั�อก/ตดสั.นใจ/เง��อนไขี (Selection/Decision/Condition)

☺แบบวนซั')า (Iteration / Loop)

Page 32: Flowchart

ร0ปแบบตามลั'าดบ(1/3)เป�นร0ปแบบการเขี�ยนโปรแกรมที่��ง�ายที่��สั3ด

ที่'างานที่�ลัะอย�างจากบนลังลั�าง แสัดงลั'าดบการที่'างานจากบนลังลั�างตามลั0กศร

งานที่�� 1

งานที่�� 2

งานที่�� 3

อ�านขี+อม0ลั

ค'านวณ์ขี+อม0ลั

พ.มพ&ผัลัลัพธี&

ค'านวณ์

ค'านวณ์

ค'านวณ์

Page 33: Flowchart

ร0ปแบบตามลั'าดบ(2/3)START

STOP

A = 5

B = 3

C = A + B

print C

เร.�มต+นก'าหนดค�าตวแปร A ม�ค�าเป�น 5

ก'าหนดค�าตวแปร B ม�ค�าเป�น 3

เอาค�า A บวกกบ B แลั+วเก1บไว+ใน C

พ.มพ&ค�า C

จบการที่'างาน

Page 34: Flowchart

ร0ปแบบตามลั'าดบ(3/3)

เร.�มต+นรบขี+อม0ลัมาเก1บไว+ในตวแปร A, B ที่างแป=นพ.มพ&

เอาค�า A บวกกบ B แลั+วเก1บไว+ใน C

พ.มพ&ค�า C

จบการที่'างาน

START

STOP

C = A + B

print C

A , B

Page 35: Flowchart

ตวอย�างการเขี�ยนผังงานแบบตามลั'าดบ

จงเขี�ยนโปรแกรมค'านวณ์ค�าไฟฟ=า โดยรบค�าม.เตอร&จ'านวนการใช่+ไฟฟ=าขีองเด�อนที่��แลั+ว แลัะค�าม.เตอร&การใช่+ไฟฟ=าขีองเด�อนป>จจ3บน ค'านวณ์ค�าไฟฟ=า โดยค.ดอตรา 2.5 บาที่ /1 หน�วยม.เตอร&1 .สั.�งที่��โจที่ย&ต+องการ

ค�าไฟฟ=า2. ร0ปแบบผัลัลัพธี&

ป=อนเลัขีม.เตอร&เด�อนที่��แลั+ว --> <รอรบเลัขีม.เตอร&เด�อนที่��แลั+ว>ป=อนเลัขีม.เตอร&เด�อนป>จจ3บน--> <รอรบเลัขีม.เตอร&เด�อนป>จจ3บน>-----------------------------------------------------จ'านวนหน�วยไฟฟ=าที่��ใช่+ : <แสัดงจ'านวนหน�วยไฟฟ=าที่��ใช่+>ค�าไฟฟ=า : <แสัดงค�าไฟฟ=า>

Page 36: Flowchart

ตวอย�างการเขี�ยนผังงานแบบตามลั'าดบ

3. ขี+อม0ลัน'าเขี+า– เลัขีม.เตอร&เด�อนที่��แลั+ว– เลัขีม.เตอร&เด�อนป>จจ3บน

4 .ตวแปรที่��ใช่+ในการประมวลัผัลั– Last_meter แที่น เลัขีม.เตอร&เด�อนที่��แลั+ว– Curr_meter แที่น เลัขีม.เตอร&เด�อนป>จจ3บน– Num_meter แที่น จ'านวนหน�วยม.เตอร&ที่��ใช่+– Electric_fee แที่น ค�าไฟฟ=า

Page 37: Flowchart

ตวอย�างการเขี�ยนผังงานแบบตามลั'าดบ

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. จบการที่'างาน

Page 38: Flowchart

Flow chartSTART

STOP

Num_meter = Curr_meter – Last_meter

Last_meter , Curr_meter

Electric_fee = Num_meter * 2.5

Num_meter , Electric_fee

Page 39: Flowchart

แบบการเลั�อกเป�นการเขี�ยนโปรแกรมแบบม�การ

เปร�ยบเที่�ยบเง��อนไขี แลัะที่'างานตามค'าสั�งอย�างใดอย�างหน��งตามเง��อนไขีที่��ก'าหนด ผัลัจากการเปร�ยบเที่�ยบเง��อนไขี จะให+ผัลัลัพธี&เป�นจร.งหร�อเที่1จ ถึ+าผัลัเป�นจร.ง ให+ที่'างานตามค'าสั�งด+านที่��เง��อนไขีเป�นจร.ง ถึ+าเป�นเที่1จให+ที่'าตามค'าสั�งด+านที่��เง��อนไขีเป�นเที่1จ

• แบบที่างเลั�อกเด�ยว (IF - THEN)• แบบสัองที่างเลั�อก (IF – THEN - ELSE)• แบบหลัายที่างเลั�อก (IF – THEN – ELSE

IF | CASE)

Page 40: Flowchart

แบบที่างเลั�อกเด�ยว(1/5)

เง��อนไข

ปรัะโยคงาน

งานลั!าดบถัดไป

จร.ง

เที่1จ

เง��อนไข

ปรัะโยคงาน 1

งานลั!าดบถัดไป

จร.ง

เที่1จ

ปรัะโยคงาน 2

Page 41: Flowchart

แบบที่างเลั�อกเด�ยว(2/5)

START

STOP

read age

age > 60

“You are old”

true

false

เร.�มต+นรบค�าใสั�ตวแปร age

ถึ+าเป�นจร.ง พ.มพ&ขี+อความ You are oldถึ+าเป�นเที่1จ ไม�ต+องที่'าอะไร

จบการที่'างาน

เปร�ยบเที่�ยบค�า age มากกว�า 60

Page 42: Flowchart

แบบที่างเลั�อกเด�ยว(3/5)รบค�า รหสัผั�านจากผั0+ใช่+ ถึ+ารหสัผั�านที่��ป=อนม�ค�า GoodLuck ให+แสัดงขี+อว�า Welcome Manager แลัะขี+อความ Exit Password System

เร.�ม

รบค�า ans

ans = “GoodLuck”

พ.มพ& Welcome Manager

พ.มพ& Exit PasswordSystem

จบ

จร.ง

เที่1จ

Page 43: Flowchart

แบบที่างเลั�อกเด�ยว(4/5)บร.ษที่แห�งหน��งต+องการเพ.�มเง.นเด�อนให+

พนกงานที่��ม�เง.นเด�อนต'�ากว�า 5000 อ�กคนลัะ 10% แลัะให+พนกงานที่3กคนได+รบโบนสัคนลัะ 3 เที่�าขีองเง.นเด�อน ขี)นตอนการประมวลัผัลั

1 .รบค�าช่��อพนกงาน . เง.นเด�อน2. เปร�ยบเที่�ยบค�า เง.นเด�อน

- ถึ+าน+อยกว�า 5000 ให+เง.นเด�อน = เง.นเด�อน + (เง.นเด�อน * 10/100)

3. ค'านวณ์โบนสั = เง.นเด�อน * 34. แสัดงผัลัลัพธี&5.จบการที่'างาน

Page 44: Flowchart

แบบที่างเลั�อกเด�ยว(5/5)START

STOP

read name ,salary

salary < 5000 Name , salary , bonus

true

false

salary = salary + (salary*10/100)

A

A

bonus = salary * 3

แต�ไม�ต+องเขี�ยนเสั+นเช่��อมน�)

Page 45: Flowchart

ขี+อควรจ'าในการเปร�ยบเที่�ยบเง��อนไขีแบบ IF –

THEN น.ยมให+ที่'างานตามค'าสั�งเม��อเง��อนไขีม�ค�าเป�นจร.ง ไม�น.ยมให+ที่'างามตามค'าสั�งเป�นเที่1จ

เง��อนไข

ปรัะโยคงาน 1

งานลั!าดบถัดไป

จร.ง

เที่1จ

ปรัะโยคงาน 2

เง��อนไข

ปรัะโยคงาน 1

งานลั!าดบถัดไป

จร.ง

เที่1จ

ปรัะโยคงาน 2

Page 46: Flowchart

เง��อนไข

ปรัะโยคงาน 1

งานลั!าดบถัดไป

จร.ง

เที่1จ

ปรัะโยคงาน 2

IF เง��อนไข THEN BEGIN

ปรัะโยคงาน 1 ;ปรัะโยคงาน 2 ;

END;

Page 47: Flowchart

เง��อนไข

ปรัะโยคงาน 1

งานลั!าดบถัดไป

เที่1จ

จร.ง

ปรัะโยคงาน 2

IF เง��อนไข THEN

ELSE BEGIN

ปรัะโยคงาน 1 ;ปรัะโยคงาน 2 ;

END;

Page 48: Flowchart

แบบสัองที่างเลั�อก(1/6)การที่'างานขี�)นอย0�กบเง��อนไขี ถึ+าเป�นจร.งไป

ที่'างานด+านหน��ง ถึ+าเป�นเที่1จก1จะไปที่'างานอ�กอย�างหน��ง

เง��อนไข

ปรัะโยคงาน2

งานลั!าดบถัดไป

จร.งเที่1จ

ปรัะโยคงาน1

Page 49: Flowchart

แบบสัองที่างเลั�อก(2/6)• ถึ+า sex =1

เง��อนไขีเป�นจร.ง จะเพ.�มค�าตวแปร Male ขี�)นอ�ก 1

• ถึ+า sex =1 เง��อนไขีเป�นเที่1จ จะเพ.�มค�าตวแปร Female ขี�)นอ�ก 1

Sex = 1

Male = Male +1Female = Female + 1

TrueFalse

Page 50: Flowchart

แบบสัองที่างเลั�อก(3/6)START

STOP

read age

age > 60

“You are old”

truefalse

“You are young”

เร.�มต+นรบค�าใสั�ตวแปร age

ถึ+าเป�นจร.ง พ.มพ&ขี+อความ You are oldถึ+าเป�นเที่1จ พ.มพ&ขี+อความ You are young

จบการที่'างาน

เปร�ยบเที่�ยบค�า age มากกว�า 60

Page 51: Flowchart

แบบสัองที่างเลั�อก(4/6)เร.�ม

รับค#า ans

ans = ‘y’ OR ans=‘Y’

พิ%มพิ� Thank Youพิ%มพิ� I’m sorry to hear that

จร.งเที่1จ

พิ%มพิ� Do you like Pascal

พิ%มพิ� Good Bye

จบ

แสัดงขี+อความ Do you like Pascal

รบค�าใสั�ตวแปร ans

เร.�มการที่'างาน

เปร�ยบเที่�ยบค�า ans เที่�ากบ y หร�อ Y- ถึ+าเป�นจร.ง พ.มพ&Thank you- ถึ+าเป�นเที่1จ พ.มพ&I’m sorry to hear that

พ.มพ&ค'าว�า Goodbye

จบการที่'างาน

Page 52: Flowchart

แบบสัองที่างเลั�อก(5/6)บร.ษที่แห�งหน��งต+องการเพ.�มเง.นเด�อนให+พนกงานที่��ม�เง.นเด�อนต'�ากว�า 5000 อ�กคนลัะ 10% แลัะพนกงานที่��ม�เง.นเด�อนต)งแต� 5000 เพ.�ม 5% ให+พนกงานที่3กคนได+รบโบนสัคนลัะ 3 เที่�าขีองเง.นเด�อน• ขี)นตอนการประมวลัผัลั

1 .รบค�าช่��อพนกงาน . เง.นเด�อน2. เปร�ยบเที่�ยบค�า เง.นเด�อน < 5000

- ถึ+าเป�นจร.ง ให+อตราเพ.�มเง.นเด�อน = 10/100- ถึ+าเป�นเที่1จให+อตราเพ.�มเง.นเด�อน = 5/100

3 .ค'านวณ์เง.นเด�อน = เง.นเด�อน + (เง.นเด�อน * อตราเพ.�มเง.นเด�อน)

4.โบนสั = เง.นเด�อน * 35.แสัดงผัลัลัพธี&6.จบการที่'างาน

Page 53: Flowchart

แบบที่างเลั�อกเด�ยว(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)

Page 54: Flowchart

การเลั�อกหลัายที่าง(แบบ IF)

เป�นร0ปแบบการเลั�อกการที่'างานที่��ม�ที่างเลั�อกมากกว�า 2 ที่างขี�)นไป

เง��อนไขี 1

ค!าส�งที่'� 1

TrueFalse

เง��อนไขี 2

ค!าส�งที่'� 2

TrueFalse

เง��อนไขี 3

ค!าส�งที่'� 3

TrueFalse

ค!าส�งที่'� 4

Page 55: Flowchart

การเลั�อกหลัายที่าง(แบบ 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

Page 56: Flowchart

การเลั�อกหลัายที่าง(แบบ CASE)

เป�นร0ปแบบการเลั�อกการที่'างานที่��ม�ที่างเลั�อกมากกว�า 2 ที่างขี�)นไป

เง��อนไขี

ค!าส�งที่'� 2ค!าส�งที่'� 1 ค!าส�งที่'� 4ค!าส�งที่'� 3

กรณ์� 1 กรณ์� 2 กรณ์� 3 กรณ์� 4

Page 57: Flowchart

การเลั�อกหลัายที่าง(แบบ 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

Page 58: Flowchart

แบบวนซั')า• แบบก'าหนดรอบไว+ลั�วง

หน+า(Controlled Loop)• แบบตรวจสัอบเง��อนไขีก�อน(Pre-Test Condition)

• แบบตรวจสัอบเง��อนไขีที่�หลัง(Post-Test Condition)

Page 59: Flowchart

แบบก'าหนดรอบการที่'างานเอาไว+ลั�วงหน+า

ม�การก'าหนดรอบการที่'างานซั')าไว+ลั�วงหน+า เม��อครบตามจ'านวนรอบจ�งหย3ดที่'างานซั')าแลั+วที่'าค'าสั�งต�อไป

ก'าหนดรอบการที่'างาน

ค!าส�งที่!าซ้ำ!)า 1

ค!าส�งที่!าซ้ำ!)า 2

Next

Page 60: Flowchart

แบบก'าหนดรอบการที่'างานเอาไว+ลั�วงหน+า

ค�า N จะเร.�มต+นที่�� 1 แลัะเพ.�มค�าที่�ลัะ 1 จนกระที่�ง มากกว�า 5 จ�งหย3ดการที่'างานซั')า แลัะที่'าค'าสั�งถึดจาก Next ในแต�ลัะรอบขีองงานที่��ให+ที่'าซั')าค�อ พ.มพ&ค�าในตวแปร N ที่�ลัะรอบ

For N =1 , 5

Next

Print N

Page 61: Flowchart

แบบตรวจสัอบเง��อนไขีก�อนถึ+าเป�นจร.งแลั+วค�อยที่'าซั')า

แบบตรวจสัอบเง��อนไขีก�อน ถึ+าเง��อนไขียงเป�นจร.งให+ที่'างานซั')า จนกระที่�งเง��อนไขีเป�นเที่1จจ�งหย3ดที่'างานซั')า แลั+วไปที่'างานค'าสั�งอ��นถึดไป

เง��อนไขี

ค'าสั�งงานซั')า 1

True

False

ค'าสั�งงานซั')า 2

Page 62: Flowchart

แบบตรวจสัอบเง��อนไขีก�อนถึ+าเป�นจร.งแลั+วค�อยที่'าซั')า

• ตรวจสัอบเง��อนไขีถึ+า N <= 5– ให+พ.มพ& ค�า N – เพ.�มค�า N อ�ก 1

(N=N+1)

• กลับไปตรวจสัอบเง��อนไขีอ�ก จนกว�าเง��อนจะเป�นเที่1จ จ�งหย3ดที่'างานซั')า แลั+วไปที่'างานค'าสั�งอ��น

N <=5

N = N+1

True

False

Print N

N = 1

Page 63: Flowchart

แบบที่'าซั')าก�อนแลั+วค�อยตรวจเง��อนไขี

แบบให+ที่'างานในค'าสั�งที่'าซั')าก�อน แลั+วค�อยตรวจสัอบเง��อนไขี ถึ+าเง��อนไขียงเป�นเที่1จให+กลับไปที่'างานในค'าสั�งที่'าซั')าอ�ก จนกระที่�งตรวจสัอบแลั+วเง��อนเป�นจร.ง จ�งหย3ด แลั+วไปที่'างานค'าสั�งอ��น

เง��อนไขี

ค'าสั�งงานซั')า 1

True

False

ค'าสั�งงานซั')า 2

Page 64: Flowchart

แบบที่'าซั')าก�อนแลั+วค�อยตรวจเง��อนไขี

– ให+พ.มพ&ค�าในตวแปร N

– เพ.�มค�าให+ตวแปร N อ�ก 1

• ตรวจสัอบเง��อนไขี ถึ+า N > 5 เป�นจร.งให+หย3ดที่'างานซั')า ถึ+าเป�นเที่1จให+กลับไปที่'างานค'าสั�งซั')าอ�กรอบ

N > 5

True

False

N = N+1

Print N

N = 1