การเขียนผังงาน
ความหมายของผังงาน
ผังงานคือแผนภาพชนิดหนึ่งที่ใช้แทน "ขั้นตอนวิธี" (Algorithm), ขั้นตอนการทำงาน หรือกระบวนการของสิ่งต่างๆที่เกิดขั้น โดยใช้สัญลักษณ์ที่แตกต่างกันในการทำงานแต่ละขั้นตอน และมีลูกศรเชื่อมลำดับการทำงานเหล่านั้นเข้าไว้ด้วยกัน เพื่อให้การสื่อความหมายเข้าใจง่ายและเป็นมาตรฐานเดียวกัน โดยทั่วไปผังงานแบ่งออกเป็น 2 ประเภท คือ
1) ผังงานระบบ (System Flowchart) คือ ผังงานที่แสดงขั้นตอนการทำงานของระบบอย่างกว้าง ไม่เจาะลึกลงในระบบงานย่อย
2) ผังงานโปรแกรม (Program Flowchart) คือ ผังงานที่แสดงขั้นตอนการทำงานของโปรแกรมโดยละเอียดตั้งแต่รับข้อมูลนำเข้า ประมวลผล จนได้ผลลัพธ์ตามที่ต้องการ
ขั้นตอนวิธี (Algorithm)
ขั้นตอนวิธี หมายถึง กระบวนการแก้ปัญหาที่สามารถเข้าใจได้ มีลำดับขั้นตอนการทำงานชัดเจน โดยไม่ว่าจะทำซ้ำกี่ครั้งผลลัพธ์ที่ได้ก็จะมีลักษณะเหมือนกันทุกประการ โดยทั่วไป ขั้นตอนวิธี จะประกอบด้วย วิธีการเป็นขั้นๆ และมีส่วนที่ต้องทำแบบวนซ้ำ (iterate) หรือ เวียนเกิด (recursive/loop) โดยใช้ตรรกะ (logic) ในการเปรียบเทียบ (comparison) ในขั้นตอนต่างๆ จนกระทั่งเสร็จสิ้นการทำงาน
ขั้นตอนวิธีการพับนก
ขั้นตอนวิธีการพับกระต่าย
การเขียนผังงานที่ดี
1) ใช้สัญลักษณ์ให้ถูกต้องตามที่กำหนดไว้
2) ใช้ลูกศรแสดงทิศทางการไหลของข้อมูลจากบนลงล่าง และจากซ้ายไปขวา
3) ใช้คำอธิบายที่กระชับ เข้าใจง่าย
สัญลักษณ์ของผังงาน
รูปแบบของผังงาน
แม้ว่าในการเขียนโปรแกรมจริงจะมีความซับซ้อนและผังงานที่ออกแบบจะมีความแตกต่างกัน แต่โปรแกรมโดยส่วนใหญ่มักมีการทำงานใน 3 รูปแบบคือ
1) การทำงานแบบตามลำดับ (Sequence) คือ การทำงานจากบนลงล่าง ตามคำสั่งทีละบรรทัดจนจบการทำงานและออกจากโปรแกรมไป
2) การทำงานแบบตัดสินใจ (Decission / Selection) คือ การทำงานที่มีการตัดสินใจเลือกทำงานบางอย่างตามเงื่อนไข จริง หรือ เท็จ
3) การทำงานแบบทำซ้ำ (Repeation / Loop) คือ การทำงานใดงานหนึ่งซ้ำหลายๆครั้ง โดยมีเงื่อนไขคอยควบคุมการทำงาน
ผังงานแบบลำดับ
ผังงานแบบมีทางเลือก(ตัดสินใจ)
ผังงานแบบมีการทำซ้ำ/วนซ้ำ