การเขียนผังงาน

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

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

ผังงานโปรแกรม ( Program Flowchart )
การเขียนผังโปรแกรมจะประกอบไปด้วยการใช้สัญลักษณ์มาตรฐานต่าง ๆ ที่เรียกว่า สัญลักษณ์ ANSI ( American National Standards Institute ) ในการสร้างผังงาน ดังตัวอย่างที่แสดงในรูปต่อไปนี้

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

รูปที่1 แสดง สัญลักษณ์ในการเขียนผังงานโปรแกรม


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

รูปที่ 2 แสดงการเขียนผังงานที่แสดงขั้นตอนการส่งจดหมาย

ตัวอย่างที่ 2 เขียนผังงานแสดงวิธีการรับประทานยา ที่แบ่งขนาดรับประทานตามอายุของผู้ทานดังนี้
• อายุมากกว่า 10 ปี รับประทานครั้งละ 2 ช้อนชา
• อายุมากกว่า 3 ปี ถึง 10 ปี รับประทานครั้งละ 1 ช้อนชา
• อายุมากกว่า 1 ปี ถึง 3 ปี รับประทานครั้งละ 1/2 ช้อนชา
• แรกเกิดถึง 1 ปี ห้ามรับประทาน

รูปที่ 3 แสดงการเขียนผังงานแสดงวิธีการรับประทานยา


โครงสร้างการทำงานแบบมีการเลือก ( Selection )
เป็นโครงสร้างที่ใช้การตรวจสอบเงื่อนไขเพื่อการทำงานอย่างใดอย่างหนึ่ง โดยโครงสร้างแบบนี้จะมีอยู่ด้วยกัน 2 รูปแบบ คือ IF – THEN – ELSE และ IF – THEN

รูปที่4 แสดงโครงสร้างผังงานแบบมีการเลือก

โครงสร้างแบบ IF – THEN – ELSE เป็นโครงสร้างที่จะทำการเปรียบเทียบเงื่อนไขที่ใส่ไว้ในส่วนหลังคำว่า IF และเมื่อได้ผลลัพธ์จากการเปรียบเทียบก็จะเลือกว่าจะทำงานต่อในส่วนใด กล่าวคือถ้าเงื่อนไขเป็นจริง ( TRUE ) ก็จะเลือกไปทำงานต่อที่ส่วนที่อยู่หลัง THEN แต่ถ้าเงื่อนไขเป็นเท็จ ( FALSE ) ก็จะไปทำงานต่อในส่วนที่อยู่หลังคำว่า ELSE

แต่ถ้าสำหรับโครงสร้างแบบ IF – THEN เป็นโครงสร้างที่ไม่มีการใช้ ELSE ดังนั้น ถ้ามีการเปรียบเทียบเงื่อนไขที่อยู่หลัง IF มีค่าเป็นจริง ก็จะไปทำส่วนที่อยู่หลัง Then แต่ถ้าเงื่อนไขเป็นเท็จ ก็จะไปทำคำสั่งที่อยู่ถัดจาก IF – THEN แทน

ตัวอย่าง 3 การเขียนผังงานอ่านค่าข้อมูลเข้ามาเก็บไว้ในตัวแปร A และ B แล้วทำการเปรียบเทียบในตัวแปรทั้งสอง โดยมีเงื่อนไขดังนี้
• ถ้า A มากกว่า B ให้คำนวณหาค่า A – B และเก็บผลลัพธ์ไว้ในตัวแปรชื่อ RESULT
• ถ้า A น้อยกว่าหรือเท่ากับ B ให้คำนวณหาค่า A + B และเก็บผลลัพธ์ไว้ในตัวแปรชื่อ RESULT

รูปที่ 3 แสดงการเขียนผังงานอ่านค่าข้อมูล

ตัวอย่าง 4 การเขียนผังงานเปรียบเทียบค่าข้อมูลที่เก็บอยู่ในตัวแปร X โดยมีเงื่อนไขดังนี้
• ถ้า X > 0 ให้พิมพ์คำว่า ” POSITIVE NUMBER “
• ถ้า X < 0 ให้พิมพ์คำว่า ” NEGATIVE NUMBER “
• ถ้า X = 0 ให้พิมพ์คำว่า ” ZERO NUMBER “

รูปที่ 4 แสดงการเขียนผังงานเปรียบเทียบค่าข้อมูล


โครงสร้างการทำงานแบบมีการทำงานซ้ำ
เป็นโครงสร้างที่มีการประมวลผลกลุ่มคำสั่งซ้ำหลายครั้ง ตามลักษณะเงื่อนไขที่กำหนด อาจเรียก การทำงานซ้ำแบบนี้ได้อีกแบบว่า การวนลูป ( Looping ) โครงสร้างแบบการทำงานซ้ำนี้จะมีอยู่ 2 ประเภท คือ
• DO WHILE
• DO UNTIL

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

แสดงโครงสร้างการทำงานซ้ำแบบ DO WHILE

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

แสดงโครงสร้างการทำงานซ้ำแบบ DO UNTIL

สรุปข้อแตกต่างระหว่าง DO WHILE และ DO UNTIL มีดังนี้
1. DO WHILE ในการทำงานครั้งแรกจะต้องมีการตรวจสอบเงื่อนไขก่อนทุกครั้ง ก่อนที่จะมีการเข้ลูปการทำงาน
2. DO UNTIL การทำงานครั้งแรกจะยังไม่มีการตรวจสอบเงื่อนไข แต่จะเข้าไปทำงานในลูปก่อนอย่างน้อย 1 ครั้งแล้วจึงจะไปตรวจสอบเงื่อนไข
3. DO WHILE จะมีการเข้าไปทำงานในลูปก็ต่อเมื่อตรวจสอบเงื่อนไขแล้วพบว่า เงื่อนไขเป็นจริง แต่เมื่อพบว่าเงื่อนไขเป็นเท็จ ก็จะออกจากลูปทันที
4. DO UNTIL จะมีการเข้าไปทำงานในลูปก็ต่อเมื่อตรวจสอบเงื่อนไขแล้วพบว่า เงื่อนไขเป็นเท็จ แต่เมื่อพบว่าเงื่อนไขเป็นจริง ก็จะออกจากลูปทันที

ตัวอย่าง 5 จงเขียนผังงานแสดงการเพิ่มของข้อมูลตัวเลขที่เก็บอย่ในหน่วยความจำที่แอดเดรส 1 โดยที่ค่าเริ่มต้นจาก 0 ให้ทำการเพิ่มค่าทีละ 1 เรื่อยไปจนกระทั่ง J มีค่าข้อมูลมากกว่า 100 จึงหยุดการทำงาน

ตัวอย่างนี้ เป็นตัวอย่างการทำงานแบบทำซ้ำ ซึ่งจะสามารถแสดงการเขียนได้ทั้งแบบ DO WHILE และ DO UNTIL ดังนี้

แสดงตัวอย่างการใช้ DO WHILE และ DO UNTIL

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

หลักการเขียนผังงานระบบผังงานระบบ คือ รูปภาพหรือสัญลักษณ์ที่ใช้แทนลำดับ หรือขั้นตอนในโปรแกรมรูปภาพหรือสัญลักษณ์ที่ใช้เป็นเอกลักษณ์ และแทนความหมายอย่างใดอย่างหนึ่ง 

โดยทั่วไปผังงานคอมพิวเตอร์แบ่งเป็น 2 ประเภทใหญ่

1. ผังงานระบบ(System Flowchat)
เป็นผังงานที่แสดงถึงขั้นตอนการทำงานภายในระบบหนึ่ง ๆ โดยจะแสดงถึงความเกี่ยวข้องของส่วนที่สำคัญต่าง ๆ ในระบบนั้น เช่น เอกสารเบื้องต้น หรือสื่อบันทึกข้อมูลที่ใช้อยู่เป็นอะไร และผ่านไปยังหน่วยงานใด มีกิจกรรมอะไรในหน่วยงานนั้น แล้วจะส่งต่อไปหน่วยงานใด เป็นต้น ดังนั้นผังงานระบบอาจเกี่ยวข้องกับคน วัสดุ และเครื่องจักร ซึ่งแต่ละจุดจะประกอบไปด้วย การนำข้อมูลเข้า วิธีการประมวลผลและการแสดงผลลัพธ์ (Input – Process – Output) ว่ามาจากที่ใดอย่างกว้าง ๆ จึงสามารถเขียนโปรแกรมจากผังงานระบบได้

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

การใช้งานผังงานระบบ

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

ตัวอย่าง ผังงานระบบและผังงานโปรแกรมของการคำนวณพื้นที่สามเหลี่ยม 100 รูป

ประโยชน์และข้อจำกัดของผังงานระบบ

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

1 คนส่วนใหญ่สามารถเรียนรู้และเข้าใจผังงานระบบได้ง่าย เพราะผังงานระบบไม่ขั้นอยู่กับภาษาคอมพิวเตอร์ภาษาใดภาษาหนึ่งโดยเฉพาะ

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

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

4 การเขียนโปรแกรมโดยพิจารณาจากผังงานระบบ สามารถทำให้รวดเร็วและง่ายขั้น

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

ข้อจำกัดของผังงานระบบ

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

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

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

3การเขียนผังงานระบบเป็นการสิ้นเปลือง เพราะจะต้องใช้กระดาษและอุปกรณ์อื่น ๆ ประกอบการเขียนภาพ บางครั้งการเขียนผังงานระบบอาจจะต้องใช้กระดาษมากกว่า 1 แผ่นทั้ง ๆ ที่การอธิบายงานเดียวกันจะใช้เนื้อที่เพียง 3-4 บรรทัดเท่านั้น

4 ผังงานระบบจะมีขนาดใหญ่ ถ้าโปรแกรมที่พัฒนาเป็นงานใหญ่ ทำให้ผังงานระบบแลดูเทอะทะไม่คล่องตัว และถ้ามีการปรับเปลี่ยนผังงานระบบจะทำได้ยาก บางครั้งอาจจะต้องเขียนผังงานขั้นใหม่

5 ในผังงานระบบจะบอกขั้นตอนการปฏิบัติงานว่าเป็นลำดับอย่างไร ปฏิบัติงานอะไรแต่จะไม่ระบุให้ทราบว่าทำไมจึงต้องเป็นลำดับและต้องปฏิบัติงานอย่างนั้น

6 ในภาษาคอมพิวเตอร์ที่ใช้กันในปัจจุบัน เช่น ภาษาซี ผังงานระบบไม่สามารถแทนลักษณะคำสั่งในภาษาได้ชัดเจน ตรงไปตรงมา

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

การเขียนผังงานระบบต้องใช้สัญลักษณ์ต่าง ๆ นำมาเรียงกัน เพื่อแสดงลำดับขั้นตอนการทำงาน โดยมีลูกศรเชื่อมระหว่างภาพต่าง ๆ สัญลักษณ์ที่ใช้ในการเขียนผังงานระบบที่นิยมใช้กันนั้นเป็นสัญลักษณ์ของหน่วยงานสถาบันมาตรฐานแห่งชาติสหรัฐอเมริกา (American National Standard Institute : ANSI) และองค์การมาตรฐานนานาชาติ

(International Standard Organization : ISO)หน่วยงานดังกล่าว ทำหน้าที่รวบรวมและกำหนดสัญลักษณ์มาตรฐานที่จะใช้เขียนผังงานระบบ ดังนี้

ตารางที่ 6.1 แสดงสัญลักษณ์และความหมายของผังงานระบบ

หลักเกณฑ์ในการวิเคราะห์งาน

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

กล่าวโดยสรุป การวิเคราะห์งานจะเป็นการศึกษาผลลัพธ์(Output) ข้อมูลที่นำเข้า (Input) และวิธีการประมวลผล(Process) รวมทั้งการกำหนดชื่อตัวแปร (Variable) ที่จะใช้ในโปรแกรมนั่นเองวิธีการวิเคราะห์งานให้ได้ผลดีนั้นมีหลายแบบ แต่หลักเกณฑ์ใหญ่ ๆ ที่นิยมใช้กันอย่างทั่วไปสามารพแยกเป็นข้อ ๆ ด้ามลำดับดังต่อไปนี้

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

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

3 ข้อมูลที่ต้องนำเข้า (Input) หมายถึง ข้อมูลที่ต้องป้อนเข้ามาเพื่อใช้ในการประมวลผล ซึ่งเป็นขั้นตอนที่ต่อเนื่องจากการวิเคราะห์ลักษณะของผลลัพธ์ คือ เมื่อพิจารณาถึงลักษณะของ Output ที่แน่นอนแล้ว ข้อมูลที่ต้องนำเข้าไปก็ควรจะพิจารณาให้เหมาะสมกับผลลัพธ์ที่ต้องการแสดงด้วย ทั้งนี้อาจจะต้องพิจารณาถึงขั้นตอนในการประมวลผลควบคู่ไปด้วย

4 ตัวแปรที่ใช้ (Variable) หมายถึง การกำหนดชื่อแทนความหมายของข้อมูลต่าง ๆ เพื่อความสะดวกในการอ้างถึงข้อมูลนั้น และการเขียนโปรแกรมด้วยการตั้งชื่อตัวแปรที่ใช้ควรคำนึงถึงความหมายที่เกี่ยวข้องกับข้อมูล การตั้งขื่อตัวแปรนี้จะขึ้นอยู่กับกฎเกณฑ์ของภาษาคอมพิวเตอร์ที่ใช้ในการเขียนโปรแกรม เพราะภาษาคอมพิวเตอร์แต่ละภาษามีกฎเกณฑ์และความสามารถในการตั้งตัวแปรแตกต่างกันไป แต่โดยทั่ว ๆ ไป การตั้งชื่อตัวแปรจะพิจารณาความหมายของข้อมูลว่าตรงกับคำใดในภาษาอังกฤษ แล้วนำมาตัดแปลงหรือย่อให้เข้ากับหลักเกณฑ์ของภาษาคอมพิวเตอร์ที่ใช้

5 วิธีการประมวลผล (Processing) หมายถึงวิธีการประมวลผลโดยแสดงขั้นตอนต่าง ๆ ที่ต้องทำตามาลำดับ เริ่มจาการรับข้อมูลนำไปประมวลผลจนได้ผลลัพธ์ ขั้นตอนนี้จะต้องแสดงการทำงานที่ต่อเนื่องตามลำดับ จึงต้องจัดลำดับก่อนหลังให้ถูกต้อง ในขั้นตอนของวิธีการนี้ถ้ายิ่งกระทำให้ละเอียดก็จะช่วยในการเขียนโปรแกรมยิ่งง่ายขึ้น

หลักทั่วไปในการเขียนผังงานระบบ

การเขียนผังงานระบบอาจจะเขียนลงในกระดาษที่มีแบบฟอร์มมาตรฐานที่เรียกว่า Flowchart Worksheet ซึ่งจะช่วยให้เขียนผังงานระบบได้สะดวกขึ้น ประหยัดเนื้อที่ ง่ายต่อการติดตามจุดต่อและดูเรียบร้อย หรือจะใช้กระดาษธรรมดาเขียนก็ได้ การเขียนรูปหรือสัญลักษณ์ต่าง ๆ ในผังงานระบบ จะใช้ Flowchart Template ซึ่งเป็นแผ่นพลาสติกที่มีช่องเจาะเป็นรูปสัญลักษณ์ต่าง ๆ ของผังงานระบบเข้าช่วยก็ได้ ปัจจุบันมีโปรแกรมคอมพิวเตอร์ที่ใช้เขียนผังงานระบบที่มีความสวยงามและเป็นมาตรฐานมากยิ่งขึ้น

ในการเขียนผังงานระบบที่ดี ควรมีหลักเกณฑ์ ดังนี้

1 มีจุดเริ่มต้นและจุดสิ้นสุดการทำงานเพียงจุดเดียวในหนึ่งผังงานระบบ

2 มีทางออกจากสัญลักษณ์ใด ๆ เพียงทางเดียว ยกเว้นสัญลักษณ์แสดงการตัดสินใจ สามารถมีทางออกมาตั้งแต่ 2 ทางได้

3 มีการเข้าสู่สัญลักษณ์ใด ๆ เพียงทางเดียว ถ้าต้องการกระทำกระบวนการเดียวกันควรใช้สัญลักษณ์ตัวเชื่อม

4 ทิศทางลำดับของขั้นตอน ควรจะเริ่มจากบนลงล่าง ซ้ายไปขวา

5 ข้อความที่บรรจุในสัญลักษณ์ควรสั้น กะทัดรัด เข้าใจง่าย

6 ขนาดของสัญลักษณ์ที่ใช้ควรมีขนาดที่เหมาะสม สวยงาม

7 เส้นทางที่ใช้ในผังงานควรเป็นระเบียบเรียบร้อย ชัดเจน ไม่พันกันไปมาจนไม่สามารถทราบจุดตั้งต้นและจุดสิ้นสุดที่แน่นอนได้

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

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

1. ทำความเข้าใจและวิเคราะห์ปัญหา
2. กำหนดแผนในการแก้ปัญหา
3. เขียนโปรแกรมตามแผนที่กำหนด
4. ทดสอบและตรวจสอบความถูกต้องของโปรแกรม
5. นำโปรแกรมที่ผ่านการทดสอบไปใช้งาน

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

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

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

รูปแสดงสัญลักษณ์ที่ใช้ในการเขียนผังงาน

ตัวอย่าง การเขียนผังงานแบบเรียงลำดับ

http://www.lks.ac.th/anchalee/if1_00.swf
รูป แสดงผังงานการบวกเลข 2 จำนวน
http://www.lks.ac.th/anchalee/if1_0.swf
รูป แสดงการทำงานของผังงานการบวกเลข 2 จำนวน

อธิบายผังงานการบวกเลข 2 จำนวน

1. Start เริ่มต้นการทำงาน
2. x=5 และ y=3 กำหนดค่าให้ตัวแปร x มีค่าเท่ากับ 5 ตัวแปร y มีค่าเท่ากับ 3
3. z=x+y เมื่อ x+y ได้ค่าเท่าไรให้นำไปเก็บไว้ยังตัวแปร z
4. แสดงค่าที่เก็บไว้ในตัวแปร z
5. Stop จบการทำงาน

ตัวอย่าง การเขียนผังงานแบบมีการกำหนดเงื่อนไขโดยรับค่าความสูง 1-150  ซม. แสดงว่า เตี้ย แต่ถ้าเกินแสดงว่าสูง

อธิบายผังงานรับค่าอายุ

1. Start เริ่มต้นการทำงาน
2. รับค่าความสูงมาเก็บไว้ในตัวแปร  tall
3. ตรวจสอบเงื่อนไขว่าความสูงุอยู่ในช่วง 1 ถึง  150  ซม. หรือไม่
4. ถ้าใช่แสดงข้อความ You are  short ถ้าไม่ใช่ให้พิมพ์ You are tall
5. Stop จบการทำงาน

เขียนโปรแกรมตามแผนที่กำหนด
เมื่อผู้เขียนโปรแกรมเขียนผังงานเสร็จเรียบร้อยแล้ว ขั้นตอนต่อไปคือ
การเขียนโปรแกรมตามผังงาน ที่ได้กำหนดเอาไว้ ในกรณีที่เขียนด้วยภาษาซี
การเขียนโปรแกรมก็ต้องเป็นไปตามกฎเกณฑ์และโครงสร้างของภาษาซี เท่านั้น

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

นำโปรแกรมที่ผ่านการทดสอบไปใช้งาน
ถ้าหากรันโปรแกรมแล้วใช้งานได้แสดงว่าจะได้ไฟล์ที่มีส่วนขยายเป็น EXE เพื่อนำไปทดสอบ้งานในที่ต่างๆ และถ้านำไปใช้งานแล้วมีปัญหาก็ให้ทำการแก้ไขโปรแกรมอีกครั้ง แต่ถ้ารันโปรแกรมแล้วไม่มีปัญหาใดๆ แสดงว่าโปรแกรมนี้ใช้งานได้อย่างสมบูรณ์ จากนั้นผู้เขียนโปรแกรม ก็ต้องจัดทำคู่มือประกอบการใช้งานและนำไปเผยแพร่ต่อไป

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

ข้อมูลเพิ่มเติม

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

About these ads

ใส่ความเห็น

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / เปลี่ยนแปลง )

Twitter picture

You are commenting using your Twitter account. Log Out / เปลี่ยนแปลง )

Facebook photo

You are commenting using your Facebook account. Log Out / เปลี่ยนแปลง )

Google+ photo

You are commenting using your Google+ account. Log Out / เปลี่ยนแปลง )

Connecting to %s

ติดตาม

Get every new post delivered to your Inbox.

%d bloggers like this: