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

2 ธ.ค.

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

cr: http://www.bcoms.net/system_analysis/lesson63.asp

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

2 ธ.ค.

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

cr: http://www.bcoms.net/system_analysis/lesson63.asp

สัญลักษณ์ผังงาน

2 ธ.ค.

 

การทำงานด้วยมือ (manual operation) แทนจุดที่มีการทำงานด้วยแรงคน
การนำข้อมูลเข้า-ออกโดยทั่วไป (general input/output) แทนจุดที่จะนำข้อมูลเข้าหรือออกจากระบบคอมพิวเตอร์โดยไม่ระบุชนิดของอุปกรณ์
แถบบันทึกข้อมูล (magnetic tape) แทนจุดที่นำข้อมูลเข้าหรือออกจากโปรแกรมด้วยแผ่นบันทึกข้อมูล
 
จานบันทึกข้อมูล (magnetic tape) แทนจุดที่นำข้อมูลเข้าหรือออกจากโปรแกรมด้วยจานบันทึกข้อมูล
 
การนำข้อมูลเข้าด้วยมือ (manual input) แทนจุดที่นำข้อมูลเข้าด้วยมือ
 
การแสดงข้อมูล (display) แทนจุดที่แสดงข้อมูลด้วยจอภาพ
 
การทำเอกสาร (documentation) แทนจุดที่มีข้อมูลเป็นเอกสารหรือแสดงข้อมูลด้วยเครื่องพิมพ์
 
การตัดสินใจ (decision) แทนจุดที่ต้องเลือกปฏิบัติอย่างใดอย่างหนึ่ง
 
การปฏิบัติงาน (process) แทนจุดที่มีการปฏิบัติงานอย่างใดอย่างหนึ่ง
 
การเตรียมการ (preparation) แทนจุดกำหนดชื่อข้อมูลหรือค่าเริ่มต้นต่างๆ
 
การเรียกโปรแกรมภายนอก (external subroutine) แทนจุดเรียกใช้โปรแกรมย่อยที่ไม่ได้อยู่ในโปรแกรมนั้น
 
การเรียกโปรแกรมภายใน (internal subroutine) แทนจุดเรียกใช้โปรแกรมย่อยที่อยู่ในโปรแกรมนั้น
 
การเรียงข้อมูล (sort) แทนจุดที่มีการเรียงข้อมูลใหม่ตามข้อกำหนด
 
ทิศทาง (flow line) แทนทิศทางขั้นตอนการดำเนินงานซึ่จะปฏิบัติต่อเนื่องกันตามหัวลูกศรชี้
 
หมายเหตุ (annotation) แทนจุดที่แสดงรายละเอียดเพิ่มเติมหรือหมายเหตุของจุดต่างๆ ที่แสดงในผังงานด้วยสัญลักษณ์ไม่ชัดเจน
 
การติดต่อทางไกล (communication link) แทนช่วงที่มีการติดต่อหรือย้ายข้อมูลด้วยระบบการติดต่อทางไกล
 
จุดเชื่อมต่อ (connector) แทนจุดเชื่อมต่อของผังงานเมื่อใช้สัญญลักษณ์เพื่อให้ดูง่าย
 
จุดเชื่อมต่อหน้ากระดาษ (off page connector) แทนจุดเชื่อมต่อของผังงานที่อยู่คนละหน้ากระดาษ
 
เริ่มต้นและลงท้าย (terminal) แทนจุดเริ่มต้นและลงท้ายของผังงานของโปรแกรมหลักและโปรแกรมย่อย

cr: https://sites.google.com/site/opophopa/saylaksn-phang-ngan

การแบ่งโครงสร้างของผังงาน

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

 

    • 1. โครงสร้างผังงานการทำงานแบบลำดับ

 

    • 2. โครงสร้างผังงานการทำงานแบบเลือกทำ หรือมีเงื่อนไข

 

    • 3. โครงสร้างผังงานการทำงานแบบทำซ้ำ

 

 

 

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

1. โครงสร้างผังงานการทำงานแบบลำดับ

  • โครงสร้างการทำงานแบบลำดับ (Sequence) เป็นลักษณะโครงสร้างพื้นฐานของผังงานทุกผังงาน ลักษณะการทำงานของโครงสร้างผังงานแบบลำดับจะทำงานทีละขั้นตอน ตั้งแต่ขั้นตอนแรกจนถึงขั้นตอนสุดท้าย ลำดับการทำงานของผังงานจะทำงานตามทิศทางของลูกศร โครงสร้างของผังงานแบบลำดับ มีลักษณะโครงสร้างดังนี้
    • จากโครงสร้างผังงานตามรูป การทำงานจะเริ่มต้นทำงานในกระบวนการที่ 1 (Process 1) เมื่อทำงานในกระบวนการที่ 1 เสร็จ ขั้นตอนต่อไป คือ ทำงานในกระบวนการที่ 2 เมื่อทำงานในกระบวนการที่ 2 เสร็จ จึงทำงานในกระบวนการที่ 3 เป็นขั้นตอนต่อไป ตามลำดับ การทำงานจะทำงานทีละ 1 กระบวนการ การทำงานจะไม่ทำงานหลายกระบวนการพร้อมกัน

 

    • กระบวนการในการทำงานที่ 1 , 2 และ 3 อาจเป็นการรับข้อมูลเข้า การแสดงผลข้อมูล หรือการคำนวณ ก็ได้

 

  • ตัวอย่างโครงสร้างผังงานการทำงานแบบลำดับ

  • จากโครงสร้างผังงานแบบลำดับ ตามรูป สามารถอธิบายขั้นตอนการทำงานได้ดังนี้
    1. เริ่มต้นการทำงาน
    2. รับค่าข้อมูลเข้ามาเก็บไว้ในตัวแปร a และตัวแปร b
    3. คำนวณค่า a2 + b2 แล้วไปเก็บไว้ในตัวแปร x
    4. แสดงค่าในตัวแปร x
    5. สิ้นสุดการทำงาน

2. โครงสร้างผังงานการทำงานแบบเลือกทำ หรือมีเงื่อนไข

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

 

    • การทำงานหลังจากการตรวจสอบเงื่อนไข จะมีการทำงานอยู่ 2 กรณีคือ

 

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

 

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

 

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

    ตัวอย่างโครงสร้างผังงานแบบเลือกทำหรือมีเงื่อนไข

 

 

  • จากตัวอย่าง ประกอบด้วยโครงสร้างผังงาน 2 โครงสร้าง คือ การทำงานแบบลำดับและการเลือกทำ การทำงานของผังงานสามารถอธิบายลำดับขั้นตอนการทำงานได้ดังนี้
    1. เริ่มต้นการทำงาน
    2. รับค่าข้อมูล จำนวน 2 ค่า มาเก็บไว้ในตัวแปร X และ Y
    3. ตรวจสอบเงื่อนไข ถ้า X น้อยกว่า Y แล้วทำ
    3.1 คำนวณค่า SUM = X2*Y2
    มิฉะนั้นแล้ว
    3.2 คำนวณค่า SUM = X * Y
    4. แสดงค่า SUM
    5. จบการทำงาน

3. โครงสร้างผังงานการทำงานแบบทำซ้ำ

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

    1. การทำซ้ำลักษณะทำในขณะที่
    การทำงานของโครงสร้างผังงานการทำซ้ำลักษณะทำในขณะที่ (Do – While) ขั้นตอนแรกของการทำงาน คือ การตรวจสอบเงื่อนไขการทำซ้ำ ถ้าผลที่ได้จากการตรวจสอบเงื่อนไขเป็นจริง จึงเข้าสู่ขั้นตอนของการทำงานในส่วนของการทำซ้ำ
    ลักษณะของการทำงานในโครงสร้างผังงานแบบทำซ้ำในลักษณะทำในขณะที่

  • จากรูป เมื่อทำงานในกระบวนการ ที่ 1 แล้ว การทำงานของผังงานจะกลับไปตรวจสอบเงื่อนไขที่ใช้สำหรับการทำซ้ำอีกครั้ง

 

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

    ตัวอย่างโครงสร้างผังงานการทำซ้ำในลักษณะทำในขณะที่

  • ลำดับขั้นตอนการทำงานของผังงานนี้ คือ
    1. เริ่มต้นการทำงาน
    2. กำหนดค่าให้ a = 1
    3. ในขณะที่ a <>

3.1 คำ นวณค่า a = a + 1
3.2 แสดงค่า a

4. จบการทำงาน

 

  • 2. การทำซ้ำในลักษณะทำจนกระทั่ง ลักษณะของโครงสร้างผังงานการทำซ้ำลักษณะทำจนกระทั่ง (Do – Until) ขั้นตอนแรกของการทำงาน คือ ทำขั้นตอนการทำงานที่ต้องการทำซ้ำก่อนอย่างน้อยหนึ่งครั้ง หลังจากนั้นจึงทำการตรวจสอบเงื่อนไขสำหรับพิจารณาว่า จะกลับไปทำกระบวนการทำงานที่ต้องทำซ้ำหรือไม่

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

ตัวอย่างโครงสร้างผังงานการทำซ้ำในลักษณะทำจนกระทั่ง

 

 

    • จากรูป ประกอบด้วยลักษณะโครงสร้างผังงาน 2 ลักษณะ คือ

 

    • โครงสร้างผังงานการทำงานแบบลำดับ

 

    • และการทำซ้ำลักษณะทำจนกระทั่ง มีขั้นตอน ดังนี้

 

    • 1. เริ่มต้นการทำงาน

 

    • 2. กำหนดให้ a = 1

 

    • 3. ทำซ้ำจนกระทั่ง a <>
    • 3.1 แสดงค่า a

 

    • 3.2 คำนวณค่า a เท่ากับ a+1

 

  • 4. จบการทำงาน

ข้อแตกต่างระหว่างการทำซ้ำลักษณะทำในขณะที่ กับ ทำจนกระทั่ง

  • โครงสร้างผังงานการทำซ้ำ มีอยู่ 2 ลักษณะ คือ ทำในขณะที่ และ ทำจนกระทั่ง ลักษณะการทำงานของโครงสร้างผังงานทำซ้ำทั้ง 2 ลักษณะ มีการทำงานที่แตกต่างกัน สามารถสรุปความแตกต่างของลักษณะการทำงานของโครงสร้างผังงานการทำซ้ำทั้ง 2 ลักษณะ ได้ดังนี้

 

cr: http://sudruadee.blogspot.com/2007/06/4.html

ผังงานที่ใช้ในชีวิตประจำวัน

2 ธ.ค.

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

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

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

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

cr: http://www.bcoms.net/system_analysis/lesson63.asp

Hello world!

2 ธ.ค.

Welcome to WordPress.com! This is your very first post. Click the Edit link to modify or delete it, or start a new post. If you like, use this post to tell readers why you started this blog and what you plan to do with it.

Happy blogging!