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

22
การเขียนผังงาน (Flowchart ) โดย... ครูศศิกานต์ บรรเทา

Upload: fair-kung-nattaput

Post on 22-Apr-2015

7.033 views

Category:

Documents


0 download

DESCRIPTION

 

TRANSCRIPT

Page 1: การเขียนผังงาน (Flowchart)

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

โดย...

ครูศศกิานต์ บรรเทา

Page 2: การเขียนผังงาน (Flowchart)

ความหมายของผงังาน (Flowchart)

ผังงาน (Flowchart) คือ รูปภาพ (Image) หรือสญัลกัษณ์(Symbol) ท่ีใช้เขียนแทนขัน้ตอน ค าอธิบาย ข้อความ หรือค าพดู ท่ีใช้ในอลักอริทมึ (Algorithm) เพราะการน าเสนอขัน้ตอนของงานให้เข้าใจตรงกนั ระหวา่งผู้ เก่ียวข้อง ด้วยค าพดู หรือข้อความ ท าได้ยากกวา่เม่ือใช้รูปภาพ หรือสญัลกัษณ์

ใช้สญัลกัษณ์ภาพท่ีก าหนดตามมาตรฐาน ANSI (American National Standards Institute) และ ISO (International Standard Organization) เพ่ือส่ือความหมายไปในแนวทางเดียวกนั

Page 3: การเขียนผังงาน (Flowchart)

ประเภทของผงังาน (Flowchart)

• ผงังานระบบ (System Flowchart) เป็นผงังานท่ีใชแ้สดงขั้นตอนการท างานของระบบงานอยา่งกวา้งๆ ทั้งระบบ แสดงใหเ้ห็นถึงความสัมพนัธ์ของส่วนท่ีเก่ียวขอ้งกบัระบบงานทั้งหมด ตั้งแต่เร่ืองของวสัดุอุปกรณ์ บุคลากร และหน่วยงานท่ีเก่ียวขอ้ง

• ผงังานโปรแกรม (Program Flowchart) เป็นผงังานส่วนการท างานของการด าเนินงานโปรแกรมซ่ึงแยกยอ่ยมาจากผงังานระบบ ลกัษณะของผงังานแสดงถึง การป้อนค่าขอ้มูล การประมวลผลขอ้มูลและการแสดงขอ้มูล

Page 4: การเขียนผังงาน (Flowchart)

ประโยชน์ของผงังาน (Flowchart)

1. ท าให้เข้าใจ และแยกแยะปัญหาได้ง่าย (Problem Define)

2. แสดงล าดบัการท างาน (Step Flowing)

3. หาข้อผดิพลาดได้ง่าย (Easy to Debug)

4. ท าความเข้าใจโปรแกรมได้ง่าย (Easy to Read)

5. ไม่ขึน้กบัภาษาใดภาษาหนึ่ง (Flexible Language)

Page 5: การเขียนผังงาน (Flowchart)

ใชเ้ป็นการแสดงเร่ิมตน้และส้ินสุด

การน าขอ้มูล เขา้-ออก

การปฏิบติังาน

การตดัสินใจ

สัญลกัษณ์ท่ีใชใ้นการเขียน Flowchart

Page 6: การเขียนผังงาน (Flowchart)

ทิศทางขั้นตอนการด าเนินงาน

จุดเช่ือมต่อผงังานในหนา้เดียวกนั

จุดเช่ือมต่อผงังานคนละหนา้กระดาษ

สัญลกัษณ์ท่ีใชใ้นการเขียน Flowchart (ต่อ)

Page 7: การเขียนผังงาน (Flowchart)

มี 3 แบบ

1.แบบล าดบั

2.แบบทางเลือก

3.แบบวนซ ้ า

โครงสร้างของการเขียน Flow Chart

Page 8: การเขียนผังงาน (Flowchart)

1.โครงสร้างแบบล าดบั (Sequential Structure)

โครงสร้างแบบน้ีจะเป็นการท างานเป็นขั้นตอน เพ่ือแกไ้ขปัญหาจะท างานตามค าสัง่ท่ีเขียนไวต้ามล าดบั ตั้งแต่ค าสัง่แรกไปจนไปถึงค าสัง่สุดทา้ย

Page 9: การเขียนผังงาน (Flowchart)

2.โครงสร้างแบบทางเลือก (Selection Structure)

ปัญหาบางอยา่งตอ้งการการตดัสินใจ เพ่ือเลือกวา่จะใชว้ธีิการใด โดยการก าหนดเง่ือนไข ใหเ้ป็นทางเลือกของโปรแกรมซ่ึง จะต้องมเีพยีงสองทางเลอืกเท่านั้น และ หลงัจากนั้นทางเลอืกทั้งสองต้องมาพบกนั และท างานในขั้นตอนต่อไป

เง่ือนไข

ชุดค าสัง่ท่ี 1 ชุดค าสัง่ท่ี 2

เทจ็จริง

Page 10: การเขียนผังงาน (Flowchart)

การท ากระบวนการหนึง่หลายครัง้ โดยมีเง่ือนไขในการควบคมุ หมายถึงการท าซ า้เป็นหลกัการท่ีท าความเข้าใจได้ยากกว่า 2 รูปแบบแรก เพราะการเขียนโปรแกรมแตล่ะภาษา จะไมแ่สดงภาพอยา่งชดัเจนเหมือนการเขียนผงังาน ผู้ เขียนโปรแกรมต้องจินตนาการด้วยตนเอง

3.โครงสร้างแบบวนซ ้ า (Repetition Structure)

Page 11: การเขียนผังงาน (Flowchart)

โครงสร้างแบบการวนซ ้ า มี 2 แบบ

เง่ือนไข

พิมพค์่า a

พิมพค์่า bเง่ือนไข

พิมพค์่า a

พิมพค์่า b

โครงสร้างแบบวนซ ้ าแบบ while โครงสร้างแบบวนซ ้ าแบบ until

เท็จ

เท็จ

จริง

จริง

Page 12: การเขียนผังงาน (Flowchart)

ข้อแนะน าในการเขียนผังงานให้ถกูวิธี เพื่อให้อ่านระบบการท างานได้ง่าย ควรใช้หลกัการเขียนดังนี ้

1. ทิศทางการท างานต้องเรียงล าดบัตามขัน้ตอนการประมวลผลที่ได้วิเคราะห์ไว้2. ใช้ช่ือตวัแปร ให้ตรงกบัขัน้ตอนการประมวลผลที่ได้วิเคราะห์ไว้3. ลกูศรก ากบัทิศทาง ใช้หวัลกูศรตรงปลายทางเทา่นัน้

4. เส้นทางการท างาน ห้ามมีจดุตดัการท างาน

5. ต้องไมม่ีลกูศรลอยๆ โดยไมม่ีการตอ่จดุการท างานใดๆ

6. ใช้สญัลกัษณ์ให้ตรงกบัความหมายการใช้งาน7. หากมคี าอธิบายเพิม่เติมให้เขียนไว้ด้านขวาของสญัลกัษณ์นัน้

หลกัในการเขียนผงังาน

Page 13: การเขียนผังงาน (Flowchart)

ตวัอยา่งการเขียน Flowchart

Page 14: การเขียนผังงาน (Flowchart)

ตวัอยา่งท่ี 1ปัญหา : การตม้มาม่าใหสุ้กขั้นตอนการแก้ปัญหา :

1.เร่ิมตน้2.ซ้ือมาม่า3.ฉีกซอง4.ตม้5.สุกไหม ?6.รับประทาน7.จบการท างาน

Page 15: การเขียนผังงาน (Flowchart)

Flowchart : เร่ิมตน้

ฉีกซอง

ตม้

สุก?

รับประทาน

จบ

ซ้ือมาม่า

Page 16: การเขียนผังงาน (Flowchart)

ปัญหา : การเขียนผงังานโปรแกรม

ตวัอยา่งท่ี 2

1. เร่ิมตน้การท างาน2. ป้อนอายนุกัเรียน3. น าค่าท่ีไดจ้ากขอ้ 1. ไปก าหนดเป็นเง่ือนไขเปรียบเทียบดงัน้ี

- ถา้ค่าอายนุกัเรียน 0 ให้ไปท่ีขอ้ 7.- ถา้ค่าอายนุกัเรียนไม่ใช่ 0 ให้ไปท่ีขอ้ 4.

4. ค านวณผลรวมอายนุกัเรียนสูตรค านวณ : ผลรวมอาย ุ = ผลรวมอาย ุ+ อายนุกัเรียน

5. ค านวณจ านวนนกัเรียนสูตรค านวณ : จ านวนนกัเรียน = จ านวนนกัเรียน + 1

6. วนไปท่ีขอ้ 2.7. ค านวณอายเุฉล่ียนกัเรียน

สูตรค านวณ : อายเุฉล่ีย = ผลรวมอาย ุ/ จ านวนนกัเรียน8. แสดงค่าขอ้มูลอายเุฉล่ียของนกัเรียน9. จบการท างาน

Page 17: การเขียนผังงาน (Flowchart)

ก าหนดช่ือตวัแปรดงัน้ีอายนุกัเรียน ใหต้วัแปรช่ือ Ageผลรวมอายุ ใหต้วัแปรช่ือ Sumจ านวนนกัเรียน ใหต้วัแปรช่ือ Numอายเุฉล่ีย ใหต้วัแปรช่ือ Avg

Page 18: การเขียนผังงาน (Flowchart)

Flowchart :

Age

Avg

Age = 0

No

Sum := Sum+Age

Num := Num + 1

Avg := Sum/NumYes

Page 19: การเขียนผังงาน (Flowchart)

ปัญหา : การเขียนผงังานโปรแกรมลดราคาสินค้า

ตวัอยา่งท่ี 3

1. เร่ิมตน้การท างาน2. ป้อนขอ้มูลราคาสินคา้3. ค านวณส่วนลด โดยใชเ้ง่ือนไขดงัน้ี- ถา้ราคาสินคา้ > 5,000 บาท ให้ค านวณส่วนลด ราคา*5/100 - ถา้ราคาสินคา้ >= 1,000 บาท ให้ค านวณส่วนลด ราคา*3/100- ถา้ราคาสินคา้ >=100 บาท ให้ค านวณส่วนลด ราคา*1/100- ถา้ราคาสินคา้ < 100 บาท ให้ค านวณส่วนลด ราคา*0/100

4. ค านวณเงินท่ีตอ้งจ่ายจริงหลงัจากลดแลว้สูตรค านวณ : เงินจ่ายจริง = ราคาสินคา้ – ส่วนลด

5. แสดงค่าของส่วนลด และเงินจ่ายจริง6. ป้อนค่าความตอ้งการในการท างานต่อหรือไม่7. น าค่าท่ีไดจ้ากขอ้ 6. มาเขียนเง่ือนไขก าหนดการท างานดงัน้ี- ถา้ค่าเป็นอกัษร y ให้วนไปท างานท่ีขอ้ 2.- ถา้ค่าเป็นอกัษร n ให้ไปท างานท่ีขอ้ 8.

8. จบการท างาน

Page 20: การเขียนผังงาน (Flowchart)

ก าหนดช่ือตวัแปรดงันี้ราคาสินคา้ ใหต้วัแปรช่ือ Payส่วนลด ใหต้วัแปรช่ือ Saleเงินจ่ายจริง ใหต้วัแปรช่ือ Netค่าความตอ้งการท างานต่อ ใหต้วัแปรช่ือ Ans

Page 21: การเขียนผังงาน (Flowchart)

Yes

pay

Pay > 5000

Pay >= 1000

Pay >= 100

Sale := Pay*0/100

Net := Pay - Sale

Sale, Net

Ans = ‘y’

Sale := Pay*5/100

Sale := Pay*3/100

Sale := Pay*1/100

No

Yes

Yes

Yes

Ans

Flowchart :

Page 22: การเขียนผังงาน (Flowchart)

ให้นกัเรียนเขียนผงังาน (Flowchart) เก่ียวกบัปัญหาอะไรก็ได้ โดยต้องมีสญัลกัษณ์การตดัสินใจประกอบอยู่ด้วย ลงในกระดาษ A4 พร้อมทัง้ระบายสีตกแตง่ให้สวยงาม โดยเขียนในรูปแบบดงันี ้

การบา้น