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

Post on 22-Apr-2015

7.025 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

 

TRANSCRIPT

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

โดย...

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

การตดัสินใจ

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

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

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

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

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

มี 3 แบบ

1.แบบล าดบั

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

3.แบบวนซ ้ า

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

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

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

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

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

เง่ือนไข

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

เทจ็จริง

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

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

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

เง่ือนไข

พิมพค์่า a

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

พิมพค์่า a

พิมพค์่า b

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

เท็จ

เท็จ

จริง

จริง

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

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

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

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

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

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

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

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

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

Flowchart : เร่ิมตน้

ฉีกซอง

ตม้

สุก?

รับประทาน

จบ

ซ้ือมาม่า

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

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

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

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

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

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

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

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

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

Flowchart :

Age

Avg

Age = 0

No

Sum := Sum+Age

Num := Num + 1

Avg := Sum/NumYes

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

ตวัอยา่งท่ี 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. จบการท างาน

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

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 :

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

การบา้น

top related