Important Announcement
PubHTML5 Scheduled Server Maintenance on (GMT) Sunday, June 26th, 2:00 am - 8:00 am.
PubHTML5 site will be inoperative during the times indicated!

Home Explore 1206071313502512_12110610101817

1206071313502512_12110610101817

Published by jiranan8469, 2017-07-19 05:48:22

Description: 1206071313502512_12110610101817

Search

Read the Text Version

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

การเขียนผงั งาน ( Flowchart ) ผงั งาน คือ แผนภาพที่มีการใชส้ ญั ลกั ษณ์รูปภาพและลูกศรท่ีแสดงถึงข้นั ตอนการทางานของโปรแกรมหรือระบบทีละข้นั ตอน รวมไปถึงทิศทางการไหลของขอ้ มลู ต้งั แต่แรกจนไดผ้ ลลพั ธ์ตามท่ีตอ้ งการประโยชน์ของผงั งาน ช่วยลาดบั ข้นั ตอนการทางานของโปรแกรม และสามารถนาไปเขียนโปรแกรมไดโ้ ดยไมส่ ับสน ช่วยในการตรวจสอบ และแกไ้ ขโปรแกรมไดง้ ่าย เม่ือเกิดขอ้ ผดิ พลาด ช่วยใหก้ ารดดั แปลง แกไ้ ข ทาไดอ้ ยา่ งสะดวกและรวดเร็ว ช่วยใหผ้ อู้ ื่นสามารถศึกษาการทางานของโปรแกรมไดอ้ ยา่ งง่าย และรวดเร็วมากข้ึนวธิ ีการเขียนผงั งานทด่ี ี ใชส้ ัญลกั ษณ์ตามท่ีกาหนดไว้ ใชล้ ูกศรแสดงทิศทางการไหลของขอ้ มูลจากบนลงล่าง หรือจากซา้ ยไปขวา คาอธิบายในภาพควรส้ันกะทดั รัด และเขา้ ใจง่าย ทุกแผนภาพตอ้ งมีลูกศรแสดงทิศทางเขา้ - ออก ไมค่ วรโยงเส้นเช่ือมผงั งานท่ีอยไู่ กลมาก ๆ ควรใชส้ ญั ลกั ษณ์จุดเชื่อมต่อแทน ผงั งานควรมีการทดสอบความถูกตอ้ งของการทางานก่อนนาไปเขียนโปรแกรมผงั งานโปรแกรม ( Program Flowchart ) การเขียนผงั โปรแกรมจะประกอบไปดว้ ยการใชส้ ญั ลกั ษณ์มาตรฐานตา่ ง ๆ ท่ีเรียกวา่ สญั ลกั ษณ์ ANSI ( AmericanNational Standards Institute ) ในการสร้างผงั งาน ดงั ตวั อยา่ งท่ีแสดงในรูปต่อไปน้ี จุดเริ่มตน้ / สิ้นสุดของโปรแกรม ลูกศรแสดงทิศทางการทางานของโปรแกรมและการไหลของขอ้ มูล ใชแ้ สดงคาสัง่ ในการประมวลผล หรือการกาหนดคา่ ขอ้ มูลใหก้ บั ตวั แปร แสดงการอ่านขอ้ มูลจากหน่วยเก็บขอ้ มลู สารองเขา้ สู่หน่วยความจาหลกั ภายใน เคร่ืองหรือการแสดงผลลพั ธ์จากการประมวลผลออกมา การตรวจสอบเงื่อนไขเพือ่ ตดั สินใจ โดยจะมีเส้นออกจารรูปเพอื่ แสดงทิศทางการ ทางานตอ่ ไป เง่ือนไขเป็นจริงหรือเป็นเทจ็ แสดงผลหรือรายงานที่ถูกสร้างออกมา แสดงจุดเช่ือมต่อของผงั งานภายใน หรือเป็นท่ีบรรจบของเส้นหลายเส้นท่ีมาจาก หลายทิศทางเพ่ือจะไปสู่การทางานอยา่ งใดอยา่ งหน่ึงที่เหมือนกนั การข้ึนหนา้ ใหม่ ในกรณีที่ผงั งานมีความยาวเกินกวา่ ที่จะแสดงพอในหน่ึงหนา้

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

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

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

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

โครงสร้างการทางานแบบมีการทางานซ้า เป็นโครงสร้างที่มีการประมวลผลกลุ่มคาส่ังซ้าหลายคร้ัง ตามลกั ษณะเงื่อนไขที่กาหนด อาจเรียก การทางานซ้าแบบน้ีไดอ้ ีกแบบวา่ การวนลูป ( Looping ) โครงสร้างแบบการทางานซ้าน้ีจะมีอยู่ 2 ประเภท คือ DO WHILE DO UNTILDO WHILE เป็นโครงสร้างท่ีมีการทดสอบเงื่อนไขก่อน ถา้ เง่ือนไขเป็นจริงกจ็ ะเขา้ มาทางานในกลุ่มคาส่ังที่ตอ้ งทาซ้า ซ่ึงเรียกวา่ การเขา้ ลูป หลงั จากน้นั ก็จะยอ้ นกลบั ไปตรวจสอบเงื่อนไขใหม่อีก ถา้ เงื่อนไขยงั คงเป็นจริงอยู่ กย็ งั คงตอ้ งทากลุ่มคาสั่งซ้าหรือเขา้ ลูปต่อไปอีก จนกระทงั่ เงื่อนไขเป็นเทจ็ ก็จะออกจากลูปไปทาคาสัง่ ถดั ไปท่ีอยถู่ ดั จาก DO WHILE หรืออาจเป็ นการจบการทางานDO UNTIL เป็นโครงสร้างการทางานแบบทางานซ้าเช่นกนั แต่มีการทางานที่แตกตา่ งจาก DO WHILE คือจะมีการเขา้ ทางานกลุ่มคาสงั่ ที่อยภู่ ายในลูปก่อนอยา่ งนอ้ ย 1 คร้ัง แลว้ จึงจะไปทดสอบเงื่อนไข ถา้ เง่ือนไขเป็นเท็จกจ็ ะมีการเขา้ ทากลุ่มคาสง่ั ท่ีตอ้ งทาซ้าอีก หลงั จากน้นั ก็จะยอ้ นกลบั ไปตรวจสอบเง่ือนไขใหม่อีก ถา้ เงื่อนไขยงั คงเป็นเทจ็ อยู่ กย็ งั ตอ้ งทากลุ่มคาสง่ั ซ้าหรือเขา้ ลูปต่อไปอีก จนกระทง่ั เงื่อนไขเป็นจริง จึงจะออกจากลูปไปทาคาสงั่ ถดั จาก 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 ดงั น้ี


Like this book? You can publish your book online for free in a few minutes!
Create your own flipbook