• ความสมั พนั ธร์ ะหว่างการ Inherit และ Constructor • คลำสที่เปน็ คลำสลกู จะมกี ำรสืบ ทอด Attribute และ Method ชนดิ public และ protected จำก คลำสแมท่ งั้ หมด แต่จะไมส่ ืบทอด Attribute และ Method ท่เี ป็น ชนดิ private จำกคลำสแม่ คลำสลกู สำมำรถเรียกใช้ Method ที่ เปน็ public และ protected ของคลำสแม่ทกุ Method ยกเวน้ Constructor Method ของคลำสแม่ซ่งึ จะไมม่ ีกำรสืบทอดมำสูค่ ลำส ลกู ในกรณีท่ีมกี ำรสร้ำงวัตถุจำกคลำสลูก จะมีกำร เรยี กใช้ Constructor ของคลำสลูกเทำ่ น้นั โดยไมม่ ีกำร เรยี ก Constructor ของคลำสแม่ ดังน้นั ผเู้ ขียนโปรแกรม ภำษำ Java จำเป็นต้องมกี ำรใสค่ ำสั่งเรยี กใช้ Constructor ของคลำส แมใ่ นสว่ นทีเ่ ปน็ Constructor Method ของคลำสลกู เอง • สรปุ •
• ส่วนประกอบของ OOP มี 4 ข้อคอื • 1. Abstraction ในกำรสร้ำงวตั ถุจะกำรพิจำรณำถึง คณุ สมบัติทเ่ี ก่ียวข้องเทำ่ นั้น ทำใหก้ ำรออกแบบวตั ถุตรงกับ วตั ถปุ ระสงค์ท่ีต้ังไว้ • 2. Encapsulation กำรนำเอำ Method รวมไว้เป็น ส่วนหนึง่ ของวัตถุ เพอื่ ซ่อนรำยละเอียดของวตั ถไุ ว้ลดควำมซบั ซ้อนใน กำรใชง้ ำนของวัตถลุ ง • 3. Inheritance กำรถ่ำยทอดคุณสมบัติจำกคลำสแม่ ไปสูค่ ลำสลูก และคลำส Object เป็นคลำสแรกท่ีวตั ถทุ ุกชนิดใน ภำษำ Java จะมกี ำรสบื ทอดคุณสมบตั มิ ำ • 4. Polymorphism แบง่ เปน็ Overloading และ Overriding เ พือ่ ช่วยใหผ้ ้เู ขียนโปรแกรมสำมำรถตัง้ ช่อื Method ซำ้ กันได้ ทำให้ สะดวกในกำรใชง้ ำน โดยที่หนง่ึ Method สำมำรถใช้งำนไดก้ ับข้อมลู ทกุ ชนดิ ดังเชน่ คำสัง่ println() • Class Diagram ใน UML คอื กำรแทนคลำสในเชิงรูปภำพ เพ่อื ใช้เปน็ ช่องทำงสำหรบั สื่อสำรระหวำ่ งผู้พฒั นำโปรแกรมรว่ มกนั อย่ำงมี ประสิทธภิ ำพ • 2.4 ภาษาคอมพิวเตอร์ท่ีใช้ในการพัฒนาโปรแกรม •
• แต่ละภำษำมโี ครงสรำ้ งของโปรแกรม ไวยำกรณ์ และควำมสำมำรถ ใช้ สภำพแวดล้อมของคอมพวิ เตอรท์ แ่ี ตกตำ่ งกัน ภำษำคอมพิวเตอร์ทน่ี ิยม ใชใ้ นกำรเขียนโปรแกรมไดแ้ ก่ • 1. ภำษำฟอร์แทรน (FORTRAN) พัฒนำข้นึ ใน พ.ศ. 2497 สร้ำงข้ึน สำหรบั แกป้ ัญหำทำงดำ้ นคณิตศำสตร์และวศิ วกรรมศำสตร์ และ สำมำรถใชก้ บั งำนด้ำนกรำฟิก ทำงด้ำนฐำนขอ้ มูล และทำงด้ำนเวิรด์ โพรเซสซิ่งไดเ้ ช่นกนั • 2. ภำษำเบสิก (BASIC) พัฒนำข้ึนใน พ.ศ. 2508 โดยออกแบบใหเ้ ป็น ภำษำทงี่ ำ่ ย ๆ แตม่ คี วำมสำมำรถของภำษำฟอร์แทรน รวมกบั ภำษำโค บอลเข้ำดว้ ยกัน สำมำรถนำไปใช้งำนไดอ้ ยำ่ งกว้ำงขวำง สำมำรถใช้ โต้ตอบได้ ผใู้ ช้สำมำรถได้รบั กำรตอบสนองเพอื่ สั่งพมิ พ์เข้ำเครอื่ ง คอมพวิ เตอร์ นยิ มใช้กับเครอ่ื งไมโครคอมพิวเตอร์ ภำษำเบสกิ เป็นทงั้ ตวั อินเตอร์พรเี ตอร์ และคอมไพเลอร์ในตัว เหมำะสำหรับงำนทำงด้ำน วทิ ยำศำสตร์และธุรกจิ กำรค้ำ • 3. ภำษำโคบอล (COBOL) พัฒนำข้นึ ใน พ.ศ. 2502 เพ่ือใช้งำนด้ำน ธุรกจิ และพำณิชยกำร ลักษณะภำษำโคบอลเป็นธรรมชำติ เขยี นได้รวบ รัดอำ่ นง่ำย ควำมสำคญั ของภำษำโคบอลคือ ขดี ควำมสำมำรถในกำรจดั และกำรปรบั แต่งไฟลข์ อ้ มูลท่ยี ำวได้สะดวก ขอ้ มลู ส้ันก็สะดวกเช่นกัน รวมทัง้ กำรสรำ้ งไฟลร์ ำยงำนข้อมูลด้วย • 4. ภำษำปำสคำล (Pascal) พฒั นำข้ึนใน พ.ศ. 2514 เป็นภำษำ โครงสรำ้ งทีส่ รำ้ งเสริมควำมคดิ ท่เี ป็นระบบได้ดี ภำษำปำสคำลเปน็ ภำษำที่คลำ้ ยกบั ภำษำอลั กอ แตเ่ ป็นภำษำท่ีเลก็ กวำ่ นิยมใชก้ บั ไมโครคอมพิวเตอร์ เปน็ ภำษำที่ใชง้ ำนง่ำยโดยใช้ภำษำอังกฤษงำ่ ย ๆ
• 5. ภำษำซี (C) พัฒนำขน้ึ ใน พ.ศ. 2517 พฒั นำเปน็ ภำษำท่มี โี ครงสร้ำง เรียบร้อยมำก เปน็ ภำษำทม่ี ีประสทิ ธภิ ำพใกลเ้ คยี งกบั ภำษำเคร่ือง แต่ ใช้งำนได้ง่ำยกวำ่ ถกู นำไปใช้งำนโปรแกรมระบบ (System Programming) ภำษำซีท่ใี ชก้ บั คอมพวิ เตอร์จะเปน็ ภำษำทง่ี ่ำย กะทดั รัด เน่ืองจำกภำษำซีเป็นภำษำอสิ ระจำกสถำปัตยกรรม คอมพวิ เตอร์รุ่นใด ๆ ทงั้ น้ัน ใช้โปรแกรมร่วมกับคอมพิวเตอร์รุ่นใดกไ็ ด้ • 6. ภำษำอลั กอล (ALGOL) พัฒนำข้ึนใน พ.ศ. 2503 เปน็ ภำษำท่ีมี ควำมสำมำรถสงู รูปลกั ษณะคลำ้ ยภำษำฟอร์แทรน แต่เป็นภำษำท่ีมี ควำมยดื หยุ่นในกำรใช้งำน ขอ้ ควำมรวบรดั สร้ำงขึ้นเพือ่ เป็นภำษำ เอนกประสงค์ สำหรบั กำรแสดงกระบวนกำรแก้ปญั หำทำงอัลกอรทิ มึ เป็นภำษำทม่ี ีโครงสรำ้ งเปน็ ทำงกำร อ่ำนง่ำย • 7. ภำษำลสิ ฟ์ (LISP) พฒั นำขึ้นใน พ.ศ. 2503 เช่นกนั เปน็ ภำษำทีม่ ี ควำมสำมำรถสูงทำงด้ำนงำนแบบลิสฟ์โพรเซสซ่งิ นกั วิจยั คอมพิวเตอร์ ศกึ ษำเกย่ี วกับปญั หำเทยี มหรือสมองเทยี ม (Artificial Intelligent) เลอื กใชภ้ ำษำลิสฟ์ ซึง่ สำมำรถเปลี่ยนแปลงควำมยำว หรือโครงสร้ำงใน ขณะทคี่ อมพิวเตอร์กำลงั ทำงำนอยู่ได้ นิยมใชแ้ สดงรปู ประโยค ภำษำองั กฤษ หรอื สูตรทำงคณิตศำสตร์ วิทยำศำสตร์และเลียนแบบ กระบวนกำรแก้ปญั หำของมนุษย์ดว้ ย • 8. ภำษำอำร์ พี จี (RPG) พฒั นำขน้ึ ใน พ.ศ. 2507 เปน็ ภำษำทใ่ี ช้กับ มินิคอมพวิ เตอร์ สำหรับงำนทำงดำ้ นธรุ กจิ สำมำรถสร้ำงรำยงำนจำก ขอ้ มูล โดยกำรเขียนภำษำอำร์ พี จี สำมำรถเขยี นและใช้งำนเปน็ ส่วน ๆ ไมจ่ ำเปน็ ต้องเขยี นเป็นโปรแกรมยำว ๆ
• 9. ภำษำพี แอล วนั (PL/1) พัฒนำขึ้นใน พ.ศ. 2508 เป็นภำษำที่ ออกแบบไวใ้ ช้งำนทำงธุรกจิ และวิทยำศำสตร์ เปน็ ภำษำที่นำเอำขีด ควำมสำมำรถของภำษำฟอร์แทรน และภำษำโคบอลไว้ดว้ ยกัน เป็น ภำษำที่งำ่ ย รวบรัด สำมำรถรวบไฟลห์ รอื เรคคอร์ดทงั้ ทำงดำ้ น Input และ Output ได้ สำมำรถแสดงข้อมลู ในรปู ของอำร์เรย์ได้ง่ำย • 10. ภำษำเอ พี เอล (APL) พัฒนำขนึ้ ใน พ.ศ. 2510 เป็นภำษำท่มี ีชุด ตวั กระทำพ้ืนฐำน (Primitive Operators) ทีใ่ ช้ทำหน้ำทตี่ ่ำง ๆ เชน่ สร้ำงเลขดัชนี สรำ้ งเลขแบบสุม่ เป็นภำษำยอดนิยมของนกั สถติ ิ สำมำรถใชง้ ำนทำงด้ำนธุรกจิ ได้เชน่ กนั เช่น กำรผลิตเอกสำร ด้ำน วเิ ครำะห์ ด้ำนกรำฟกิ กำรจดั กำรระบบฐำนขอ้ มูล ลกั ษณะภำษำคลำ้ ย ภำษำสนทนำ เข้ำใจง่ำย แต่สำมำรถทำงำนได้เรว็ • 11. ภำษำสมอลทอ้ ค (SMALL TALK) พฒั นำขน้ึ ใน พ.ศ. 2515 เพือ่ ใช้ ในวงกำรศกึ ษำ สำมำรถชว่ ยครแู กป้ ัญหำทำงกำรสอนได้ ใชส้ รำ้ ง กรำฟิก และกำรอธิบำยทำงกำรศกึ ษำได้ดี แตก่ ส็ ำมำรถนำมำใช้งำน ด้ำนธรุ กิจได้ด้วย จงึ มลี ักษณะเป็นภำษำเอนกประสงค์ • 12. ภำษำไพลอ็ ท (PILOT) พฒั นำขึ้นใน พ.ศ. 2516 เป็นภำษำท่ี พฒั นำขึน้ สำหรบั ใชส้ อนเด็กเก่ียวกับกำรทำงำนของคอมพวิ เตอร์ นยิ ม นำไปเขยี นโปรแกรมกำรสอน เพื่อใช้เปน็ คอมพิวเตอรช์ ว่ ยสอน (CAI) ภำษำที่ใช้ควบค่กู บั ไพล็อทคอื ภำษำโลโก้ (LOGO) ซง่ึ พฒั นำข้นึ มำดว้ ย จุดมุ่งหมำยเดยี วกนั • 13. ภำษำฟอร์ท (FORTH) พฒั นำขึน้ ใน พ.ศ. 2518 มลี ักษณะคล้ำย ภำษำแอสแซมบลี ระดับสูง ออกแบบไวใ้ ชง้ ำน System Promgramming ผู้ใช้สำมำรถพมิ พค์ ำส่ังใหม่ ๆ
• เขำ้ ไปได้ และสำมำรถเกบ็ คำสง่ั และเรียกออกมำใช้งำนได้ ดงั นนั้ ผู้ใช้ สำมำรถนำไปใช้สรำ้ งโปรแกรมให้เหมำะสมกบั ควำมต้องกำรของตนได้ มักใช้ในงำนสถิติ ธรุ กิจกำรเงิน และด้ำนไฟลิ่ง
• เนือ่ งจำกในปัจจบุ ันทกุ ๆ ปีจะมีภำษำคอมพิวเตอร์เกดิ ข้ึนมำกมำย และภำษำต่ำง ๆ จะมีจดุ ดีและจุดดอ้ ยแตกตำ่ งกนั ไป ผู้ใชจ้ งึ จำเป็นต้อง ทำกำรคดั เลือกภำษำทจี่ ะนำมำใช้งำนอย่ำงระมดั ระวัง เนื่องจำกเมื่อ ศึกษำและพฒั นำซอฟต์แวร์ด้วยภำษำใดภำษำหนง่ึ แล้ว กำรเปลีย่ นไป ใช้ภำษำอ่นื ในภำยหลงั จะเปน็ เรอื่ งที่ยำกลำบำกอย่ำงย่งิ ทง้ั ในเรอ่ื งของ คำ่ ใชจ้ ่ำยและเวลำทต่ี อ้ งสูญเสยี ไป รวมท้ังปัญหำของบคุ ลำกรที่ตอ้ ง ศกึ ษำหำควำมชำนำญใหมอ่ ีกด้วย • ในกำรเลอื กภำษำคอมพิวเตอรท์ จี่ ะนำมำใช้ สิ่งทคี่ วร พิจำรณำคือ • 1. ในหน่วยงำนหนง่ึ ๆ ควรจะใช้ภำษำคอมพวิ เตอร์ภำษำเดียวกัน เพรำะกำรดูแลรกั ษำซอฟตแ์ วรท์ ี่พฒั นำขนึ้ ตลอดจนกำรจดั หำบคุ ลำกร จะกระทำให้งำ่ ยกว่ำ • 2. ในกำรเลือกภำษำควรเลอื กโดยดูจำกคุณสมบัติหรือข้อดขี องภำษำ นัน้ ๆเป็นหลัก • 3. ถ้ำโปรแกรมทเ่ี ขียนขนึ้ น้ันตอ้ งนำไปทำงำนบนเครอ่ื งต่ำง ๆ กัน ควร เลือกภำษำท่สี ำมำรถใชง้ ำนไดบ้ นทกุ เครื่อง เพรำะจะทำใหเ้ ขียน โปรแกรมเพียงคร้งั เดียวเท่ำนน้ั
• 4. ผใู้ ชค้ วรจำกัดภำษำคอมพิวเตอร์ท่ีจะใช้ ไม่ควรติดตงั้ ตัวแปล ภำษำคอมพวิ เตอร์ทกุ ภำษำบนเครื่องทุกเครอื่ ง • 5. ภำษำคอมพิวเตอรท์ ีเ่ ลือกใช้ จะถูกจำกดั โดยนักเขียนโปรแกรมทีม่ ี อยู่ เพรำะควรใช้ภำษำทีม่ ีผูร้ อู้ ย่บู ้ำง • 6. บำงครงั้ ในงำนทไ่ี มย่ ่งุ ยำกนกั อำจใช้ภำษำคอมพวิ เตอรพ์ ้ืนฐำน เชน่ ภำษำ BASIC เพรำะเขียนโปรแกรมได้งำ่ ยและรวดเร็ว รวมท้งั มตี ดิ ตง้ั อยู่บนเครอ่ื งไมโครคอมพิวเตอรส์ ว่ นมำกอยแู่ ลว้
วงจรกำรออกแบบและพฒั นำโปรแกรม 3.1 คุณลักษณะของโปรแกรมที่ดี โปรแกรมท่ดี คี วรมีคณุ ลักษณะพ้นื ฐำน ดงั น้ี 1. ใหผ้ ลลัพธท์ ่ีถูกต้องตำมควำมต้องกำร 2. ตรวจสอบควำมถูกตอ้ งของรูปแบบของขอ้ มูลได้ 3. รูปแบบของโปรแกรมสำมำรถทำควำมเข้ำใจได้โดยง่ำย โดย โปรแกรมทเี่ ขยี นข้ึนควรมรี ูปแบบกำรประมวลผลอยำ่ งเปน็ ระบบ และ มีคำอธบิ ำยที่ช่วยใหเ้ ข้ำใจไดด้ ียิง่ ขนึ้
• 4. เอ้อื อำนวยต่อกำรปรับปรุงแก้ไขทีอ่ ำจเกดิ ขึ้นในอนำคต และตอ้ งมี เอกสำรประกอบโปรแกรมทพ่ี ฒั นำด้วย • 3.2 วงจรกำรพัฒนำโปรแกรม
• วงจรกำรพัฒนำโปรแกรม (PDLC) คือ ข้นั ตอนกำรทำงำนท่ี โปรแกรมเมอรใ์ ชส้ ำหรับสร้ำงโปรแกรม ประกอบด้วย 5 ขัน้ ตอน ดังนี • 1.กำรวเิ ครำะห์ปญั หำ (Program Analysis) 2.กำรออกแบบโปรแกรม (Program Design) 3.กำรเขียนโปรแกรม (Program Coding) 4.กำรทดสอบโปรแกรม (Program Testing) 5.กำรบำรุงรักษำโปรแกรม (Program Maintenance)
3.3 ขอ้ พจิ ำรณำในกำรออกแบบกำรทำงำนสำหรบั พฒั นำโปรแกรม
3.4 รูปแบบกำรเขยี นโปรแกรมคอมพิวเตอร์ กำรเขยี นโปรแกรม มี 2 แบบ คอื
การเขียนโปรแกรมแบบโมดูลาร์ โมดลู (Module) คอื โปรแกรมย่อยๆ (Subroutine) ที่ สำมำรถทำงำนเปน็ อสิ ระ มี 2 แบบ คือ โปรแกรมย่อย ภำยใน และ โปรแกรมย่อยภำยนอก
การเขยี นโปรแกรมแบบบนลงล่าง มองปัญหำโดยเน้นภำพรวมโครงสรำ้ งกำรทำงำนใช้ผังโครงสร้ำง (Structure Chart) ในกำรกำหนดกำรทำงำนกำหนดโมดลู หลักเพื่อ เรมิ่ ตน้ เรยี กโมดูลย่อยและจบกำรทำงำนไม่เน้นแสดงลำดับกำร ประมวลผล
กำรวิเครำะห์ปัญหำสำหรบั กำรออกแบบ โปรแกรม • 4.1 ควำมหมำยของกำรวเิ ครำะหป์ ัญหำ • นอกจำกวิธีกำรแก้ปัญหำท่ียกตัวอย่ำงมำซึ่งได้แก่ วิธีกำรลอง ผิดลองถูก กำรใช้เหตุผล กำรใช้วิธีขจัด ยังมีวิธีกำรแก้ปัญหำอีก ม ำ ก ม ำ ย ที่ ผู้ แ ก้ ปั ญ ห ำ ส ำ ม ำ ร ถ เ ลื อ ก ใ ช้ ใ ห้ เ ข ำ กั บ ตั ว ปั ญ ห ำ แ ล ะ ประสบกำรณ์ของผู้แก้ปัญหำ แต่อย่ำงไรก็ตำม หำกพจิ ำรณำกันอย่ำงดี วิธีกำรเหล่ำน้ันล้วนมีขั้นตอนที่คล้ำยคลึงกัน และจำกกำรศึกษำ พฤติกรรมในกำรเรียนรู้และแก้ปัญหำของมนุษย์ พบว่ำโดยปกติ มนุษย์ มีกระบวนกำรในกำรแก้ปัญหำที่มีลำดับข้ันตอนทั้งสิ้น 4 ข้ันตอน ซ่ึง เป็นเสมือนขั้นบันได (stair) ท่ีทำให้มนุษย์สำมำรถประสบควำมสำเร็จ ใน กำ ร แก้ ปั ญห ำ ต่ำ งๆ ได้ กร ะ บ ว น กำ รทั้ ง 4 ข้ั น ต อน นั้ น ไดแ้ ก่
4.2 หลักเกณฑก์ ำรวเิ ครำะหง์ ำน
• กำร เขยี นโปรแกรมคอมพิวเตอร์ เพื่อใช้สำหรับช่วยในกำรแกป้ ญั หำ ข้นั ตอนของกำรวเิ ครำะหป์ ญั หำสำหรบั เตรยี มกำรกอ่ นลงมือเขียน โปรแกรม คอมพวิ เตอร์ มีขนั้ ตอนดงั นี้ 1. กำรทำควำมเข้ำใจกบั งำน 2. กำรพิจำรณำลกั ษณะของข้อมลู เข้ำและขอ้ มลู ออก 3. กำรทดลองแกไ้ ขปัญหำด้วยตนเอง 4. กำรเขยี นขัน้ ตอนวิธีกำรทำงำน 5. กำรทดสอบข้ันตอนกำรทำงำน กำรวิเครำะห์ข้อมูลเพื่อนำผลสรุปที่ได้ไปใช้ในกำรวำงแผนและตัดสินใจนั้น จะต้องเลือกวิธีกำรวิเครำะห์ข้อมูลให้ถูกต้องและเหมำะสม โดยพิจำรณำว่ำ ต้องกำรวิเครำะห์ข้อมูลแบบก่ีตัวแปร และต้องกำรเสนอผลในรูปสถิติเชิง พรรณนำหรือสถติ ิเชงิ อนุมำน ซ่ึงวธิ ีกำรวิเครำะหข์ อ้ มลู แตล่ ะแบบจะแตกต่ำงกัน ไปขน้ึ อยู่กบั ระดบั ข้อมลู
4.4 กำรทดสอบข้นั ตอนวธิ กี ำรแกป้ ญั หำ
• 1. ขั้นตอนกำรพัฒนำโปรแกรม ในกำรเขียนโปรแกรมเพ่ือแก้ปัญหำ ต่ำงๆจำำเป็นต้องมีกำรวำงแผน และออกแบบโปรแกรมไว้ล่วงหน้ำ โดยกำำหนดขนั้ ตอนวธิ ีกำรทำำงำนให้ ชดั เจน ซึ่งกระบวนกำรวิเครำะห์ และออกแบบโปรแกรมเรียกว่ำ วัฏจักร กำรพฒั นำระบบงำน System Development Lift Cycle (SDLC) ซ่ึงมีกระบวนกำรทำำงำนเริ่มต้น จำกกำรวิเครำะห์ปัญหำไปจนถึงกำรนำำ โปรแกรมไปใช้งำนและ ปรับปรุงพัฒนำระบบให้ดีข้ึน มีข้ันตอนของ วัฏจักรกำรพัฒนำ ระบบงำน ดังต่อไปนี้ ข้ันตอนท่ี 1 กำรวิเครำะห์ปัญหำ (Problem Analysis) • ขั้นตอนที่ 2 กำรออกแบบโปรแกรม (Program Design) • ขน้ั ตอนที่ 3 กำรเขียนโปรแกรม (Program Coding) • ขน้ั ตอนท่ี 4 กำรทดสอบและแกไ้ ขโปรแกรม (Program Testing & Verification) ข้นั ตอนท่ี • 5 กำรจัดทำำเอกสำรและคมู่ อื กำรใชง้ ำน (Program Documentation) • ขน้ั ตอนที่ 6 กำรใชง้ ำนจริง (Program Implement) • ขนั้ ตอนที่ 7 กำรปรบั ปรุงและพฒั นำโปรแกรม (Program Maintenance) • 1.1 กำรวเิ ครำะห์ปญั หำ (Problem Analysis) ขนั้ ตอนกำร วิเครำะห์ ปญั หำสำมำรถจำำแนกได้ดังนี้
กำรเขียนผงั งำนของโปรแกรม •การเขียนผงั งาน(Flowcharting)
•ผังงำน หมำยถึง เครื่องมือท่ีช่วยในกำรเขียนโปรแกรม โดยเขียนเป็น เครอ่ื งหมำยภำพสัญลักษณแ์ สดงลำดบั ข้นั ตอนกำรทำงำน •กำรเขียนผังงำน เป็นกำรถ่ำยทอดควำมเข้ำใจที่ได้จำกกำร วิเครำะห์งำนให้อย่ใู นรูปภำพหรือสญั ลกั ษณ์ •ผ้เู ขยี นโปรแกรมจะสำมำรถเข้ำใจลำดับข้ันตอนกำรเขียนโปรแกรม ได้อย่ำงรวดเร็วและง่ำยขึ้น และง่ำยต่อกำรตรวจสอบควำมถูกต้องของ ลำดับขนั้ ตอนในวิธกี ำรประมวลผล 5.1 ควำมหมำยของผงั งำน ผังงาน (Flowchart) คือ ผงั งำน (Flowchart) คือ รปู ภำพ (Image) หรือสญั ลักษณ์ (Symbol) ที่ใช้เขียนแทนข้ันตอน คำอธบิ ำย ข้อควำมหรือคำพดู ทใ่ี ช้ใน อัลกอรทิ มึ (Algorithm) เพรำะกำรนำเสนอขน้ั ตอนของงำนให้เขำ้ ใจ ตรงกนั ระหว่ำงผเู้ กีย่ วขอ้ ง ดว้ ยคำพดู หรอื ขอ้ ควำม ทำไดย้ ำกกว่ำเมือ่ ใชร้ ูปภำพ หรอื สญั ลกั ษณ์ ผงั งำนแบ่งได้ 2 ประเภท 1. ผงั งำนระบบ (System Flowchart) คอื ผังงำนท่ีแสดงขน้ั ตอน กำรทำงำนในระบบอย่ำงกวำ้ งๆ แตไ่ มเ่ จำะลงในระบบงำนย่อย
• 2. ผงั งำนโปรแกรม (Program Flowchart) คอื ผังงำนที่แสดงถงึ ขนั้ ตอนในกำรทำงำนของโปรแกรม ตงั้ แตร่ บั ขอ้ มูล คำนวณ จนถึง แสดงผลลพั ธ์ การเขยี นผังงาน ( Flowchart ) ผงั งำน คอื แผนภำพที่มกี ำรใช้สญั ลักษณร์ ูปภำพและลกู ศรทแ่ี สดง ถึงขั้นตอนกำรทำงำนของโปรแกรมหรือระบบทลี ะขน้ั ตอน รวมไปถึง ทศิ ทำงกำรไหลของข้อมลู ตงั้ แตแ่ รกจนได้ผลลพั ธ์ตำมที่ต้องกำร • สัญลักษณ์ผังงาน
• วิธเี ขียนผังงานท่ดี ี • 1. ใชส้ ัญลักษณตำมท่กี ำหนดไว้ • 2. ใชล้ ูกศรแสดงทศิ ทำงกำรไหลของข้อมลู จำกบนลงล่ำง หรือจำก ซำ้ ยไปขวำ • 3. คำอธบิ ำยในภำพสญั ลักษณผ์ งั งำนควรสั้นกะทดั รัด และเข้ำใจ ง่ำย • 4. ทุกแผนภำพตอ้ งมีลูกศรแสดงทศิ ทำงเขำ้ - ออก • 5. ไมค่ วรโยงเสน้ เชื่อมผังงำนที่อยไู่ กลมำก ๆ ควรใช้ สญั ลกั ษณจ์ ดุ เช่ือมตอ่ แทน • 6. ผังงำนควรมกี ำรทดสอบควำมถูกตอ้ งของกำรทำงำน กอ่ นนำไป เขย่ี นโปรแกรมจริง • 5.2 ประโยชนข์ องผังงำนตอ่ กำรเขียนโปรแกรม • 1. ลำดับขน้ั ตอนกำรทำงำนของโปรแกรม และสำมำรถนำไปเขยี น โปรแกรมไดโ้ ดยไมส่ บั สน • 2. ตรวจสอบควำมถูกต้อง และแก้ไขโปรแกรมได้ง่ำยเม่ือเกิด ข้อผิดพลำด • 3. กำรปรบั ปรุง เปล่ยี นแปลง แก้ไข ทำไดอ้ ยำ่ งสะดวกและรวดเรว็
• 4. ทำใหผ้ ู้อื่นสำมำรถศึกษำกำรทำงำนของโปรแกรมไดอ้ ย่ำงงำ่ ย และ รวดเรว็ มำกขนึ้ • 5.3 ประเภทของผงั งำน • ผงั งานแบง่ ได้ 2 ประเภท • 2.1 ผงั งานระบบ (System Flowchart) • ผังงำนทีแ่ สดงกำรทำงำนของระบบซง่ึ แสดงภำพรวมของ ระบบ โดยมีกำรนำข้อมูลเขำ้ ประมวลผล และขอ้ มูลออก โดยแสดงถงึ ส่ือนำขอ้ มลู เขำ้ -ออก แต่ไม่ได้แสดงวิธีกำรประมวลผล • กำรนำขอ้ มลู เขำ้ วิธกี ำรประมวลผล และกำรแสดงผลลัพธ์ (Input – Process - Output) ดงั ภำพ
• 2.2 ผังงานโปรแกรม (Program Flowchart) • ผังงำนที่แสดงกำรทำงำนย่อยหรือลำดับในโปรแกรม ซ่ึง แสดงรำยละเอียดขั้นตอนกำรทำงำนและประมวลผลโปรแกรมน้ันๆทำ ให้รู้วิธีกำรคำนวณรับข้อมูลจำกสื่อใด และประมวลผลอย่ำงไร รวมถึง กำรแสดงผลลพั ธ์ดว้ ยส่อื หรอื วธิ ีใด • ตัวอย่ำง
• 5.4 สัญลักษณ์ทใี่ ช้ในกำรเขียนผงั งำน • ในกำรเขียนผงั งำนจะต้องใช้รปู ภำพ หรอื สัญลกั ษณ์ มำใช้ แทนขน้ั ตอนกำรทำงำนของโปรแกรม ลกั ษณะของรูปภำพ หรือ สัญลกั ษณ์ จะมีควำมหมำยในตัวของมันเอง ซึ่งมีหนว่ ยงำนที่ ชอ่ื American National Standard Institvte (ANSI) และ Internation Standard Organization (ISO) ได้ รวบรวมและกำหนดให้เปน็ สัญลักษณม์ ำตรฐำนท่ีจะใชใ้ นกำรเขียนผัง งำน และผงั งำนระบบ เพ่ือใหเ้ ขำ้ ใจตรงกันดงั ตอ่ ไปนี้
• 5.5 หลักเกณฑก์ ำรเขียนผงั งำน • กำรเขียนผังงำนอำจจะเขียนลงในกระดำษที่มีแบบฟอร์มมำตรฐำนท่ี เรียกว่ำ Flowchart Worksheet ซ่ึงจะช่วยให้เขียนผังงำนได้ สะดวก ประหยัดเน้ือที่ ง่ำยต่อกำรติดตำมจุดต่อเนื่อง และดู เรียบร้อย หรือจะใช้กระดำษธรรมดำเขียนก็ได้ กำรเขียนรูปหรือ สัญลักษณ์ต่ำงๆในผังงำน จะใช้ Flowchart Template ซึ่งเป็นแผ่น พลำสติกที่มีช่องเจำะเป็นรูปสัญลักษณ์ต่ำงๆ ของผังงำนเข้ำช่วยก็ ได้ ปัจจุบันมีโปรแกรมคอมพวิ เตอร์ที่ใช้เขียนผังงำน ทำให้ผังงำนท่ีได้มี ควำมสวยงำมและเป็นมำตรฐำนมำกยิง่ ขน้ึ • กำรเขียนผังงำนจะใช้รำยละเอียดจำกวิธีกำรประมวลผลจำก กำรวิเครำะห์งำน ซ่ึงประกอบด้วยข้ันตอนท่ีสำคัญๆ คือ กำรรับ ข้ อ มู ล ( Input) กำ ร ป ร ะ มว ล ผ ล (Process) แ ล ะ ก ำ รแ ส ด ง ผ ล ลัพธ์ (Output) นอกจำกนี้ต้องใช้รูปหรือสัญลักษณ์ท่ีตรงตำม ควำมหมำย นนั่ คอื • 1 . ก า ร ก า ห น ด ค่ า เ ริ่ ม แ ร ก ( Initialization) เ ป็ น ก ำ ร กำหนดค่ำเริ่มต้นให้ตัวแปรบำงตัว เช่น ตัวแปรท่ีใช้เป็นตัวแปรนับ ตัว แปรที่มคี ่ำเปน็ ผลกำรคำนวณสะสม • 2. การรับข้อมูล (Input) เป็นกำรรับค่ำของตัวแปรท่ีระบุไว้ใน ขั้นตอนกำรนำข้อมูลเข้ำของกำรวิเครำะห์งำน ซึ่งกำรรับข้อมูลจะต้อง ทำกอ่ นท่จี ะนำเอำข้อมูลไปใช้ สัญลักษณ์ทใ่ี ช้จะมีควำมหมำยตำมแต่ละ ประเภทของสื่อข้อมลู เชน่ เทป บัตรเจำะ เป็นตน้ • 3. การประมวลผล (Process) เป็นกำรแสดงวิธีกำรประมวลผล หรือกำรคำนวณ วึ่งจะต้องกระทำทีละข้ันตอนตำมลำดับถ้ำผลกำร คำนวณต้องนำมำใชใ้ นขันตอนถัดไปจะตอ้ งแยกรปู ให้ชดั เจน
• 4. การแสดงคา่ ของขอ้ มลู หรือผลลพั ธ์ (Output) เปน็ กำร แสดงผลลัพธ์หรอื คำ่ ของตัวแปรที่ระบไุ ว้ในหัวขอ้ ผลลัพธ์ท่ตี ้อง แสดง กำรแสดงของขอ้ มูลหรอื ผลลัพธ์ ต้องกระทำหลังกำร ประมวลผล หรือภำยหลังรับข้อมูลไว้ในหนว่ ยควำมจำ แลว้ • 5. การทดสอบ (Testing) เป็นกำรทดสอบตัวแปรกับค่ำใดค่ำ หน่ึงเช่น LC = 0 หรือไม่ ? • 5.6 ลักษณะโครงสรำ้ งในกำรเขียนผังงำน • กำรเขยี นผังงำนใช้สำหรับช่วยในกำรเขยี นลำดบั ของ ขั้นตอนวิธกี ำรแกป้ ัญหำ หลงั จำกที่ทำกำรเขียนผังงำนท่ใี ช้สำหรับ แก้ปญั หำเรียบร้อยแลว้ ข้นั ตอนตอ่ ไปคอื กำรเขยี นข้ันตอนวธิ กี ำร แก้ปญั หำจำกผงั งำนทีไ่ ดท้ ำกำรเขียนขึน้ จำกนัน้ จงึ ทำกำรเขียนเป็น รหัสเทยี มและโปรแกรมคอมพิวเตอร์ ตำมลำดบั ลักษณะโครงสร้ำงผัง งำน ทีส่ ำมำรถนำไปเขยี นเป็นข้ันตอนวธิ กี ำรทำงำน และรหัสเทยี ม สำมำรถแยกเปน็ ลักษณะโครงสรำ้ งผงั งำนได้ 3 ลักษณะ ดังนี้ • 1. กำรเขียนผังงำนแบบเรียงลำดบั กำรทำงำน (Sequential Structure) • • เป็นโครงสรำ้ งของโปรแกรมทีท่ ำงำนเปน็ ลำดบั ขนั้ ตอนเรียงกันไป โดยไม่มีกำรขำ้ มขัน้ ตอน หรือ ยอ้ นกลบั ดงั ภำพ
ตัวอย่ำง โจทย์ ผังงำนแสดงโปรแกรมกำรคำนวณคำ่ a จำก สตู ร a = x + yโดยรับคำ่ x และ y ทำงแป้นพิมพ์ และแสดง ผลลัพธ์ a ออกทำงจอภำพ คำตอบ
• จำกโครงสร้ำงผงั งำนแบบเรียงลำดบั ตำมรปู สำมำรถอธบิ ำยข้นั ตอน กำรทำงำนได้ดังน้ี • 1. เริ่มตน้ กำรทำงำน • 2. รบั คำ่ ขอ้ มลู เขำ้ มำเกบ็ ไว้ในตวั แปร x และตวั แปร y • 3. คำนวณค่ำ x + y แลว้ ไปเก็บไวใ้ นตวั แปร a • 4. แสดงค่ำในตวั แปร a • 5. สิ้นสดุ กำรทำงำน 2. กำรเขียนผังงำนแบบมีทำงเลอื กกำรทำงำน (Decision Structure) เป็นกำรเขยี นผังงงำนท่ีมีลักษณะกำรทำงำนแบบมีเง่อื นไข ทำงตรรกะ โดยใชป้ ระโยชน์จำกพีชคณติ บูลนี เพือ่ ให้ เครอื่ งประมวลผลลกั ษณะตัดสนิ ใจ เลือกทศิ ทำงกำรทำงำนตำม คำสั่งที่กำหนดไว้ ดังภำพ
• ตวั อย่าง • โจทย์ ผังงำนแสดงโปรแกรมกำรประเมนิ ผลกำรเรยี น โดยรับ คะแนนนกั ศึกษำเขำ้ มำทำงแป้นพิมพ์ ถำ้ คะแนนมำกว่ำหรอื เทำ่ กบั 50 ให้แสดงคำว่ำ “Pass” ทห่ี น้ำจอ แต่ถ้ำน้อยกวำ่ 50 ให้ แสดงคำวำ่ Fail • คาตอบ • จำกตวั อย่ำง งำนสำมำรถอธบิ ำยลำดับขน้ั ตอนกำรทำงำนไดด้ ังนี้ • 1. เร่มิ ตน้ กำรทำงำน • 2. รบั คำ่ ข้อมูล คะแนน( Score ) ทำงแป้นพมิ พ์ • 3. ตรวจสอบเงือ่ นไข ถ้ำ คะแนน( Score ) น้อยกว่ำ 50 แล้วทำ • 3.1 เปน็ จรงิ แสดงคำว่ำ “Pass”มฉิ ะนนั้ แลว้ • 3.2เป็นเท็จ แสดงคำวำ่ Fail • 4. จบกำรทำงำน • 3. กำรเขียนผงั งำนแบบมีกำรทำงำนวนซำ้ (Iteration Structure) • โปรแกรมส่วนใหญจ่ ะมคี ำส่ังสำหรบั กำรทำงำนซำ้ หรอื เรยี กวำ่ ลปู (Loop) โดยกำรทำซำ้ ของโปรแกรมจะอยภู่ ำยใต้ เง่อื นไข จรงิ หรอื เทจ็ ตำมทผ่ี ูเ้ ขยี นโปรแกรมไดอ้ อกแบบไว้ รูปแบบ ของกำรวนซำ้ มดี ังนี้
ตัวอย่าง โจทย์ เขียนผังงำนโปรแกรมแสดง ตวั เลข 1 – 5 คาตอบ
จำกตัวอยำ่ ง งำนสำมำรถอธิบำยลำดบั ข้นั ตอนกำรทำงำนได้ดงั น้ี 1. เริ่มต้นกำรทำงำน 2. กำหนดค่ำ Num = 1 3. แสดงค่ำ Num 4. คำนวณคำ่ Num = Num + 1 5. ตรวจสอบค่ำ Num > 5 หรอื ไม่ 5.1 ถ้ำไมใ่ ช่ ใหท้ ำซำ้ วนกลบั ไปขอ้ ท่ี 3
กำรเขยี นอลั กอรทิ มึ โปรแกรม อัลกอริทมึ (Algorithm) หมำยถึง วธิ ีกำรหรือกระบวนกำรทำงำนใดงำนหนึ่งท่ี สำมำรถ แบ่งขั้น ตอนออกเป็นย่อย ๆ ท่ีแน่นอน ซ่ึงเมื่อทรำบขั้น ตอนกำรทำ งำนที่แน่นนอนแล้ว ก็จะนำ Algorithm ที่ได้น้ัน มำวำดเป็น Flowchart จำกน้ันจึงแปลง Flowchart เป็นภำษำระดับสูงท่ี คอมพวิ เตอร์เข้ำใจ ข้ันตอน ในกำรพัฒนำลำดับข้ัน ตอนวีธิกำรแก้ปัญหำ นับว่ำ เป็นข้ันตอนที่สำคัญ อีก ข้ันตอนหน่ึงเพรำะเป็นขั้นตอนท่ีนำวีธิกำรแก้ปัญหำท่ีไดทำกำรทดลองหำวีธิ กำรแก้ปัญหำในสว่ นของกำร ทดลอง
• แก้ปัญหำด้วยตนเอง (Hand Example) มำทำกำรเรียบเรียงลำดับขั้น ตอนกำรทำงำนของวีธิกำรแก้ปัญหำตั้งแต่ข้ันตอนแรกจนถึงข้ันตอน สุดท้ำย วำ่ มีลำดบั ขน้ั ตอนกำรทำงำนอยำ่ งไรบ้ำง เพื่อท่ีจะ • นำไปส่งั กำรให้เครอื่ งคอมพวิ เตอร์ทำกำรแกไ้ ขปัญหำดว้ ยวธี กิ ำรนนั้ • 6.2 จุดประสงคก์ ำรเขียนอัลกอริทึม • อัลกอริทมึ หรอื ขนั้ ตอนวธิ ีกำรแกป้ ัญหำ เปน็ กำร จดั ลำดบั ควำมคิดเปน็ ข้นั ตอนต่ำงๆ เพ่อื แก้ไขปญั หำในขั้นตอนกำร เขียนโปรแกรมทสี่ อดคลอ้ งกรรมวิธแี กป้ ัญหำที่กำหนดไว้ กำรเขียน อัลกอรทิ มึ จึงเปน็ กำรแสดงลำดบั กำรทำงำนตำมคณุ สมบัตดิ ้ำนกำร ประมวลผลของคอมพิวเตอร์ ทพ่ี รอ้ มจะนำไปแปลงเปน็ ลำดับคำสั่งให้ คอมพวิ เตอรท์ ำงำน กำรเขยี นโปรแกรมคอมพวิ เตอรด์ ้วยภำษำท่ี เหมำะสม เพื่อสัง่ ใหค้ อมพิวเตอร์ทำงำนตำมอัลกอรทิ ึมทกี่ ำหนดไว้ และ กำรเขยี นอลั กอริทึมออกมำให้ตรวจสอบควำมถกู ต้องไดค้ รบถ้วนขึ้น • 6.3 คณุ สมบัติพืน้ ฐำนในกำรประมวลผลของคอมพวิ เตอร์ • อลั กอริทมึ เปน็ ขัน้ ตอนกำรบรรยำยลำดบั ขนั้ ตอนกำร แก้ปัญหำระบบงำนเปน็ รำยข้อ เพอื่ แสดงให้เหน็ ถงึ ขึน้ ตอน เพอ่ื แสดง ใหเ้ หน็ ถึงข้นั ตอนกำรทำงำนท่ชี ดั เจน และเพอื่ ใชใ้ นกำรทดสอบกำร ทำงำนของอัลกอรทิ มึ ดว้ ย กอ่ นศึกษำวิธกี ำรเขยี นอัลกอริทึม ควรมี ควำมเขำ้ ใจและคำนงึ ถึงคณุ สมบตั พิ ้นื ฐำนของระบบคอมพิวเตอร์กอ่ น เพ่ือนำไปประยุกตใ์ ช้ในขนั้ ตอนกำรเขยี น
• อัลกอริทมึ ไดอ้ ย่ำงถกู ต้องตอ่ ไป • คณุ สมบตั ิกำรทำงำนระดับพน้ื ฐำนของคอมพิวเตอร์ มดี ังนี้ • 1. คณุ สมบัติด้ำนหนว่ ยควำมจำ • กำรเขยี นโปรแกรมคอมพิวเตอร์ตอ้ งเกย่ี วขอ้ งกบั กำรใช้งำนพน้ื ท่ใี น หน่วยควำมจำของระบบคอมพวิ เตอร์ ในภำษำคอมพิวเตอร์ให้แทน สญั ลกั ษณ์กำหนดพืน้ ทหี่ นว่ ยควำมจำ ด้วยกำรกำหนดชอ่ื เป็นตัวแปรใช้ งำน เพอ่ื ใชอ้ ำ้ งองิ ถึงข้อมูลในหน่วยควำมจำ เช่น • N = 1 หมำยถงึ กำหนดค่ำ 1 เกบ็ ไวใ้ นตัวแปร N • Ans = X2 + Y2 หมำยถึง เอำค่ำ X ยกกำลงั 2 บวกกับค่ำ Y ยกกำลงั สอง แลว้ เก็บค่ำผลลพั ธท์ ีไ่ ดไ้ วท้ ีต่ ัวแปร Ans • Total = Total + Salary หมำยถึง กำรเอำค่ำในตวั แปร Salary ไป บวกเขำ้ กับคำ่ ในตัวแปร Total แล้วเอำค่ำผลลพั ธ์ใหม่ทไ่ี ดไ้ ปเกบ็ ท่ตี วั แปร Total ซึ่งคำ่ ใหมท่ ไ่ี ดจ้ ะไปเก็บทบั ค่ำเดิมทม่ี อี ยู่ คำสัง่ ลักษณะน้ใี ช้ ในกำรสะสมค่ำ หรือเปลี่ยนแปลงค่ำในตัวแปรเดมิ อัลกอรทิ ึม (Algorithm) หมำยถึง วธิ ีกำรหรือกระบวนกำรทำงำนใดงำน หนง่ึ ท่สี ำมำรถ แบ่งขั้น ตอนออกเปน็ ย่อย ๆ ท่แี นน่ อน ซึ่งเม่อื ทรำบขัน้ ตอนกำรทำ งำนทแ่ี นน่ นอนแลว้ กจ็ ะนำ Algorithm ท่ไี ด้นั้น มำวำดเป็น Flowchart จำกนนั้ จงึ แปลง Flowchart เปน็ ภำษำระดบั สูงที่ คอมพวิ เตอรเ์ ข้ำใจ ัข้นตอนในกำรพัฒนำลำดับขัน้ ตอนวธี กิ ำรแกป้ ญั หำ นบั ว่ำ เปน็ ัข้นตอนทีส่ ำคญั อีกขน้ั ตอนหนงึ่ เพรำะเปน็ ข้ันตอนท่นี ำวีธกิ ำร แก้ปัญหำท่ีไดทำกำรทดลองหำวธี กิ ำรแก้ปญั หำใน
• ส่วนของกำร ทดลองแกป้ ัญหำดว้ ยตนเอง (Hand Example) มำทำกำร เรียบเรยี งลำดบั ข้ัน ตอนกำรทำงำนของวธี ิกำรแกป้ ัญหำตัง้ แตข่ น้ั ตอน แรกจนถงึ ขน้ั ตอนสุดทำ้ ย ว่ำ มลี ำดบั ขน้ั ตอนกำรทำงำนอยำ่ งไรบำ้ ง เพื่อทจ่ี ะนำไปสงั่ กำรให้เครอ่ื งคอมพวิ เตอร์ทำกำรแกไ้ ขปญั หำด้วยวธี ิ กำรนัน้ • 2. คณุ สมบตั ดิ ้ำนกำรคำนวณ • คุณสมบัตดิ ำ้ นกำรคำนวณในระบบคอมพิวเตอร์ ระดบั พน้ื ฐำน คอื สำมำรถดำเนนิ กำรบวก ลบ คูณ หำร แตล่ ักษณะกำรพิจำรณำเลอื ก ประมวลผลงำนคำนวณของคอมพิวเตอรน์ น้ั มีควำมแตกตำ่ งจำกระบบ กำรคำนวณทวั่ ๆ ไป คือ คอมพวิ เตอร์คำนวณโดยพิจำรณำลำดับควำม สำคญั ของสญั ลกั ษณเ์ ครือ่ งหมำยกำรคำนวณท่ปี รำกฏในนิพจนก์ ำร คำนวณน้นั ๆ เป็นสำคัญ สัญลักษณท์ ใ่ี ชใ้ นกำรคำนวณและลำดบั กำร ทำงำนของกำรคำนวณ มีดังนี้
• หำกมวี งเล็บจะดำเนินกำรในวงเล็บก่อน และกรณีที่มลี ำดับควำมสำคัญ เทำ่ กนั จะคำนวณจำกด้ำนซ้ำยไปขวำ • การใช้สัญลกั ษณ์เขียนประโยคคาสั่งเงือ่ นไขแบบ 1 ประโยค มี สัญลกั ษณ์ ดงั น้ี
• 6.4 ลกั ษณะกำรเขียน แนวทำงกำรเขยี นอัลกอริทมึ เปน็ ลกั ษณะกำรทำงำนขน้ั พ้ืนฐำน มัก ปรำกฏในระบบงำนโปรแกรมคอมพิวเตอร์โดยทว่ั ไป มแี นวทำงท่ีใช้ บอ่ ย ๆ ดงั น้ี · กำรทำงำนลักษณะกำรนบั คำ่ สะสมในหน่วยควำมจำ · กำรทำงำนลกั ษณะวนรอบกำรทำงำน · กำรทำงำนลกั ษณะหำค่ำมำกท่สี ุด และค่ำน้อยที่สดุ 6.5 ตัวอยำ่ งกำรเขยี นอัลกอริทมึ ตวั อยำ่ งกำรเขียนอลั อกรทิ มึ ในรูปคำส่ังเทียม คือ มีลกั ษณะเปน็ กำรเขียนคำสง่ั ต่ำงๆ ท่ี ทำให้ผเู้ ขียนโปรแกรมสำมำรถเข้ำใจงำ่ ย ซ่ึงคำสัง่ ทใ่ี ชจ้ ะเปน็ คำพูด ธรรมดำ ไมย่ ึดหลกั ไวยำกรณข์ องภำษำคอมพิวเตอร์ ตวั อยำ่ งที่ 1 กำรหำผลรวมของตัวเลข N จำนวน Program : Sum รับค่ำจำนวนตัวเลขทงั้ หมดเก็บไว้ที่ตวั แปร N กำหนดใหต้ วั แปรเกบ็ ตัวนบั เร่มิ ตน้ I = 1 , เกบ็ ผลรวมเริ่มตน้ Sum = 0 Repeat รับคำ่ ข้อมลู เก็บไว้ท่ี X นำคำ่ ข้อมลู ทอ่ี ่ำนได้บวกสะสมไว้ทตี่ วั แปรเกบ็ ผลรวม Sum เพม่ิ คำ่ ตวั นบั I ขึ้นอีก 1 Until เปน็ เลขตัวสุดทำ้ ยจริง ( I > N ) แสดงตวั แปรทีเ่ กบ็ ผลรวมสะสม Sum End Program
• ตวั อย่ำงที่ 2 หำคำ่ สูงสุด และ ตำ่ สดุ จำกตัวเลขทั้งหมด N จำนวน • Program : Max_Min • รบั ค่ำจำนวนตัวเลขทัง้ หมดเกบ็ ไว้ทีต่ ัวแปร N • กำหนดใหต้ วั แปรเกบ็ ตัวนับเริ่มต้น I = 1 • อ่ำนเลขตวั แรกเก็บไวท้ ี่ตวั แปร X • กำหนดให้ตวั แปร X เป็นทั้งค่ำมำกทสี่ ดุ และน้อยทีส่ ดุ เก็บไว้ทตี่ วั แปร Max • และ Min • Repeat • อ่ำนเลขตัวถดั ไป เกบ็ ไว้ที่ X และเพิ่มค่ำตวั นบั I อีก 1 • If X > Max Then • เปลย่ี นคำ่ ใน Max ให้เกบ็ คำ่ X แทน • Else • If X < Min Then • เปลย่ี นค่ำใน Min ใหเ้ ก็บคำ่ X แทน • End if • End if
กำรเขียนรหัสเทยี ม • รหัสเทยี ม หรือซโู ดโค้ด (Pseudo Code)คอื รหัสลำลองทีใ่ ช้เปน็ ตวั แทนของอัลกอรทิ ึม โดยมถี อ้ ยคำหรอื ประโยคคำส่ังทเ่ี ขียนอยูใ่ น รูปแบบของภำษำอังกฤษท่ไี ม่ขึ้นกบั ภำษำคอมพวิ เตอรภ์ ำษำใดภำษำ หนงึ่ [3]p.37คือ กำรแสดงขัน้ ตอนวิธกี ำรทใ่ี ชภ้ ำษำเขียนทเ่ี ขำ้ ใจได้งำ่ ย อำจใชภ้ ำษำไทยหรอื ภำษำองั กฤษกไ็ ด้ขน้ึ อยู่กบั ควำมสะดวกของ ผเู้ ขยี นและกจิ กรรมท่จี ะนำเสนอ มกั ใช้รูปแบบคลำ้ ยประโยค ภำษำอังกฤษเพื่ออธบิ ำยรำยละเอยี ดของอลั กอรทิ ึม • 7.1 ควำมหมำยของซโู ดโคด้
• 7.2 รหสั เทยี ม • รหัสเทียม หรือซูโดโค้ด (Pseudo Code) คือ รหัสลำลองท่ีใช้ เปน็ ตัวแทนของอัลกอรทิ ึม โดยมีถ้อยคำหรือประโยคคำสั่งที่เขียนอยู่ใน รูปแบบของภำษำอังกฤษที่ไม่ขึ้นกับภำษำคอมพิวเตอร์ภำษำใดภำษำ หน่ึง คือ กำรแสดงขั้นตอนวิธีกำรที่ใช้ภำษำเขียนท่ีเข้ำใจได้ง่ำย อำจใช้ ภำษำไทยหรือภำษำอังกฤษก็ได้ขึ้นอยู่กับควำมสะดวกของผู้เขียนและ กิจกรรมที่จะนำเสนอ มักใช้รูปแบบคล้ำยประโยคภำษำอังกฤษเพ่ือ อธิบำยรำยละเอียดของอลั กอริทมึ • รหสั เทยี ม หรอื ซโู ดโคด้ (Pseudo Code) คือ รหสั ลำลองทใี่ ช้เป็น ตัวแทนของอัลกอริทึม โดยมีถ้อยคำหรือประโยคคำส่ังที่เขียนอยู่ใน รูปแบบของภำษำอังกฤษที่ไม่ข้ึนกับภำษำคอมพิวเตอร์ภำษำใดภำษำ หน่ึง คือ กำรแสดงขั้นตอนวิธีกำรที่ใช้ภำษำเขียนที่เข้ำใจได้ง่ำย อำจใช้ ภำษำไทยหรือภำษำอังกฤษก็ได้ข้ึนอยู่กับควำมสะดวกของผู้เขียนและ กิจกรรมที่จะนำเสนอ มักใช้รูปแบบคล้ำยประโยคภำษำอังกฤษเพื่อ อธบิ ำยรำยละเอยี ดของอัลกอริทึม
Search
Read the Text Version
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
- 76
- 77
- 78
- 79
- 80
- 81
- 82
- 83
- 84
- 85
- 86
- 87
- 88
- 89
- 90
- 91
- 92
- 93
- 94
- 95
- 96
- 97
- 98
- 99
- 100
- 101
- 102
- 103
- 104
- 105
- 106
- 107
- 108
- 109
- 110
- 111
- 112
- 113
- 114
- 115
- 116
- 117
- 118
- 119
- 120
- 121
- 122
- 123
- 124
- 125
- 126
- 127
- 128
- 129
- 130
- 131
- 132
- 133
- 134
- 135