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

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

ช่วยลำดับขั้นตอนการทำงานของโปรแกรม และสามารถนำไปเขียนโปรแกรมได้โดยไม่สับสน

ช่วยในการตรวจสอบ และแก้ไขโปรแกรมได้ง่าย เมื่อเกิดข้อผิดพลาด

ช่วยให้การดัดแปลง แก้ไข ทำได้อย่างสะดวกและรวดเร็ว

ช่วยให้ผู้อื่นสามารถศึกษาการทำงานของโปรแกรมได้อย่างง่าย และรวดเร็วมากขึ้น

วิธีการเขียนผังงานที่ดี

ใช้สัญลักษณ์ตามที่กำหนดไว้

ใช้ลูกศรแสดงทิศทางการไหลของข้อมูลจากบนลงล่าง หรือจากซ้ายไปขวา

คำอธิบายในภาพควรสั้นกระทัดรัด และเข้าใจง่าย

ทุกแผนภาพต้องมีลูกศรแสดงทิศทางเข้า – ออก

ไม่ควรโยงเส้นเชื่อมผังงานที่อยู่ไกลมาก ๆ ควรใช้สัญลักษณ์จุดเชื่อมต่อแทน

ผังงานควรมีการทดสอบความถูกต้องของการทำงานก่อนนำไปเขียนโปรแกรม

ผังงานโปรแกรม ( Program Flowchart )

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

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

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

     วิธีที่ 1
1.นั่งรถสองแถวไปมีนบุรี
2.นั่งรถตู้ที่มีนบุรีไป มหาลัย
3.ถึงมหาลัย

     วิธีที่ 2
1.เดินจากบ้านไปมีนบุรี
2.นั่งรถเมย์ไปมหาลัย
3.ถึงมหาลัย

 วิธีที่ 3

1.นั่ง Taxi ไปมหาลัย
2.ถึงมหาลัย

จะสังเกตุได้ว่า ใน 1 ปัญหา มีวิธีแก้ไขหลายวิธี แต่ละคนอาจจะคิดวิธีแก้ไขปัญหา(Algorithm) แตกต่างกันออกไป
(จากตัวอย่างบางคนอาจจะอาศัยรถคนอื่นไปก็ได้จริงมั้ยค่ะ) เมื่อเรารู้จัก Algorithm แล้ว เราก็เอา Algorithm
ที่เราคิดได้ ไปเขียนเป็น Flowchart (ตามลำดับขั้นตอนของ Algorithm)

สัญลักษณ์(Symbol)
การเขียน Flowchart เบื้องต้นเราจะใช้สัญลักษณ์ดังต่อไปนี้

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

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

ช่วยลำดับขั้นตอนการทำงานของโปรแกรม และสามารถนำไปเขียนโปรแกรมได้โดยไม่สับสน

ช่วยในการตรวจสอบ และแก้ไขโปรแกรมได้ง่าย เมื่อเกิดข้อผิดพลาด

ช่วยให้การดัดแปลง แก้ไข ทำได้อย่างสะดวกและรวดเร็ว

ช่วยให้ผู้อื่นสามารถศึกษาการทำงานของโปรแกรมได้อย่างง่าย และรวดเร็วมากขึ้น

วิธีการเขียนผังงานที่ดี

ใช้สัญลักษณ์ตามที่กำหนดไว้

ใช้ลูกศรแสดงทิศทางการไหลของข้อมูลจากบนลงล่าง หรือจากซ้ายไปขวา

คำอธิบายในภาพควรสั้นกระทัดรัด และเข้าใจง่าย

ทุกแผนภาพต้องมีลูกศรแสดงทิศทางเข้า – ออก

ไม่ควรโยงเส้นเชื่อมผังงานที่อยู่ไกลมาก ๆ ควรใช้สัญลักษณ์จุดเชื่อมต่อแทน

ผังงานควรมีการทดสอบความถูกต้องของการทำงานก่อนนำไปเขียนโปรแกรม

ผังงานโปรแกรม ( Program Flowchart )

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

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

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

     วิธีที่ 1
1.นั่งรถสองแถวไปมีนบุรี
2.นั่งรถตู้ที่มีนบุรีไป มหาลัย
3.ถึงมหาลัย

     วิธีที่ 2
1.เดินจากบ้านไปมีนบุรี
2.นั่งรถเมย์ไปมหาลัย
3.ถึงมหาลัย

 วิธีที่ 3

1.นั่ง Taxi ไปมหาลัย
2.ถึงมหาลัย

จะสังเกตุได้ว่า ใน 1 ปัญหา มีวิธีแก้ไขหลายวิธี แต่ละคนอาจจะคิดวิธีแก้ไขปัญหา(Algorithm) แตกต่างกันออกไป
(จากตัวอย่างบางคนอาจจะอาศัยรถคนอื่นไปก็ได้จริงมั้ยค่ะ) เมื่อเรารู้จัก Algorithm แล้ว เราก็เอา Algorithm
ที่เราคิดได้ ไปเขียนเป็น Flowchart (ตามลำดับขั้นตอนของ Algorithm)

สัญลักษณ์(Symbol)
การเขียน Flowchart เบื้องต้นเราจะใช้สัญลักษณ์ดังต่อไปนี้

รูปภาพ

รูปแบบการเขียน Flowchart
    การเขียนเราจะเขียนในลักษณะ Top-Down คือจากบนลงล่าง(Flow คือการไหล,Flowchart ก็คือ ผังงานการไหลของข้อมูล)

การเขียนมี 3 ลักษณะ คือ sequence(ตามลำดับ) selection(ทางเลือก/เงื่อนไข) iteration(ทำซ้ำ)

Sqquence(ตามลำดับ)
ตามชื่อเลยค่ะ เป็นการเขียนแบบไล่ทำไปทีละลำดับ ไม่มีแยก (เปรียบเสมือน ขับรถไป ไม่มีทางแยกให้เลี้ยวไปไหน)

รูปภาพ

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

Selection(ทางเลือก/เงื่อนไข)
แล้วถ้ามีเงื่อนไข หรือ ทางเลือก ละ ประมาณว่า (สมมุตินะ) ถ้านั่งรถไปมีนบุรีแล้ว รถตู้เต็ม คนต่อแถวเยอะมากเลย
ไปเรียนไม่ทันแน่ๆ ก็ให้นั่ง Taxi (เห็นมั้ยว่ามันมีทางเลือกและ หรือเงื่อนไขนั่นเอง)

รูปภาพ

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

Iteration(ทำซ้ำ)
     อีกรูปแบบหนึ่ง คือ การทำซ้ำๆ เช่น เราอยากกินข้าว กินไปเรื่อยๆ ถ้าอิ่มก็กลับบ้าน ถ้าไม่อิ่มก็กินต่อ

รูปภาพ

ที่มา

https://sites.google.com/site/udplan/prakas-1/karkheiynphangnganflowchart

Leave a Reply

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 / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s