การเขียนผังงานของโปรแกรม

ผังงานและการเขียนโปรแกรม


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

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

ผังงานแบ่งได้ 2 ประเภท 

1. ผังงานระบบ (System Flowchart) 
คือ ผังงานที่แสดงขั้นตอนการทำงานในระบบอย่างกว้าง ๆ แต่ไม่เจาะลงในระบบงานย่อย 
2. ผังงานโปรแกรม (Program Flowchart) 
คือ ผังงานที่แสดงถึงขั้นตอนในการทำงานของโปรแกรม ตั้งแต่รับข้อมูล คำนวณ จนถึงแสดงผลลัพธ์ 

การโปรแกรมแบบมีโครงสร้าง หรือ การโปรแกรมโครงสร้าง คือ การโปรแกรมที่ประกอบด้วยกระบวนการ 3 รูปแบบ ได้แก่ การทำงานแบบตามลำดับ(Sequence) การเลือกกระทำตามเงื่อนไข(Decision) และ การทำซ้ำ(Loop) มีตำราหลายเล่มแยกการเลือกตามเงื่อนไขเป็น if กับ select case หรือ การทำซ้ำแยกได้เป็น do while กับ do until แต่ก็ยังนับได้ว่าการเขียนโปรแกรมโครงสร้างมีกระบวนการเพียง 3 รูปแบบ และมีแนวคิดใหม่ว่าการโปรแกรมไม่จำเป็นต้องใช้ Structure Programming หากศึกษาในรายละเอียดก็พบว่าทุกภาษายังจำเป็นต้องมีกระบวนการ 3 รูปแบบนี้อยู่เป็นพื้นฐาน เช่น Microsoft Access ที่มีการใช้งาน Tool หรือ wizard ให้ใช้ แต่ก็ยังต้องมีการลง code ใน module ซึ่งต้องมีประสบการณ์ในการโปรแกรมแบบ Structure Programming เพื่อควบคุม Object ให้ทำงานประสานกันได้

1. การทำงานแบบตามลำดับ(Sequence)

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

2. การเลือกกระทำตามเงื่อนไข(Decision or Selection)

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

3. การทำซ้ำ(Repeation or Loop)

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

การเขียนผังงานเพื่ออธิบายขั้นตอนการทำงาน 

 ผังงาน เป็นเครื่องมือสำหรับวาดภาพ 2 มิติ นำเสนอขั้นตอนการทำงาน มักใช้ในการแสดงแบบโปรแกรมที่ไม่ซับซ้อนมากนัก ต่อมาก็มีการประยุกต์ใช้แสดงขั้นตอนการทำงานของส่วนงานต่าง ๆ เพราะสัญลักษณ์ในแผนภาพช่วยในการอธิบายการทำงานแบบมีเงื่อนไขได้ดีกว่าการเขียนเชิงพรรณา 
ประโยชน์ของการใช้ผังงาน 
1. ทำให้เข้าใจ และแยกแยะปัญหาได้ง่าย (Problem Define) 
2. แสดงลำดับการทำงาน (Step Flowing) 
3. หาข้อผิดพลาดได้ง่าย (Easy to Debug) 
4. ทำความเข้าใจโปรแกรมได้ง่าย (Easy to Read) 
5. ไม่ขึ้นกับภาษาใดภาษาหนึ่ง (Flexible Language) 

การเขียนโปรแกรม

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


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


ตัวอย่าง การเดินทางไปที่ทำงาน



ตัวอย่าง ผังงานแสดงกระวนการปรับปรุงข้อมูลเงินเดือน



ตัวอย่าง ผังงานหาพื้นที่สี่เหลี่ยม


อ้างอิง

1. http://suwanan.weebly.com






ความคิดเห็น

โพสต์ยอดนิยมจากบล็อกนี้

คำถามการเขียนผังงานของโปรแกรม