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 3204-2101-60

3204-2101-60

Published by kaewss40, 2017-08-08 00:02:08

Description: 3204-2101-60

Search

Read the Text Version

3204-2101 การออกแบบและพฒั นาโปรแกรม (Program Design and Development)ท-ป-น (2-2-3)จุดประสงคร์ ายวิชา เพ่ือให้1. เข้าใจในการออกแบบและพัฒนาโปรแกรม2. สามารถกาหนดขัน้ ตอนการออกแบบและพฒั นาโปรแกรม3. มีทกั ษะในการออกแบบและพัฒนาโปรแกรมในงานธรุ กจิ4. มคี ณุ ลกั ษณะนสิ ยั ทพ่ี ึงประสงค์ และเจตคติทีด่ ใี นวชิ าชีพคอมพิวเตอร์ธุรกิจสมรรถนะรายวชิ า1. แสดงความรู้เกี่ยวกบั หลักการออกแบบและพฒั นาโปรแกรม2. ออกแบบและพฒั นาโปรแกรมในงานธรุ กิจคาอธบิ ายรายวิชา ศึกษาและปฏิบตั เิ กยี่ วกับการใช้คอมพิวเตอร์แก้ไขปัญหาการทางาน การวิเคราะหป์ ญั หา การกาหนดข้ันตอนการทางาน (Algorithm) การเขยี นผงั งาน (Flow Chart) การเขยี นรหสั เทียม (Pseudo Code)หลกั การออกแบบโปรแกรม การใชเ้ ครือ่ งมือออกแบบและพัฒนาโปรแกรม ปฏบิ ตั ิการเขยี นโปรแกรม

หนว่ ยท่ี 1 การใชค้ อมพวิ เตอร์แก้ไขปัญหาการทางาน คอมพวิ เตอร์มาจากภาษาละตินว่า Computare ซึง่ หมายถึง การนบั หรอื การคานวณ พจนานุกรมฉบับราชบัณฑิตยสถาน พ.ศ. 2525 ได้ให้คาจากัดความของคอมพิวเตอร์ไว้ค่อนข้างกะทัดรัดว่า เครื่องอิเล็กทรอนิกส์แบบอัตโนมัติ ทาหน้าท่ีเสมือนสมองกล ใช้สาหรับแก้ปัญหาต่าง ๆ ทั้งท่ีง่ายและซับซ้อนโดยวิธีทางคณติ ศาสตร์ คอมพิวเตอร์จงึ เปน็ เคร่อื งจกั รอเิ ล็กทรอนิกส์ท่ีถูกสรา้ งข้ึนเพื่อใช้ทางานแทนมนุษย์ ในดา้ นการคิดคานวณและสามารถจาข้อมลู ได้ทัง้ ตวั เลข และ ตวั อักษร โดยปฏิบตั ติ ามข้ันตอนของโปรแกรมคอมพวิ เตอร์ ดงั น้ัน ในการนาคอมพวิ เตอรม์ าแกไ้ ขปญั หาการทางานนัน้ สามารถทาได้โดยใช้โปรแกรมคอมพิวเตอร์เขา้ มาควบคุมและบรหิ ารจัดการการทางานในเร่อื งดังกลา่ ว โปรแกรมคอมพิวเตอร์ (Software) คืออะไร โปรแกรม คอื ชดุ คาสง่ั ท่ถี กู เขยี นข้ึนโดยโปรแกรมเมอร์ เพอ่ื ใหช้ ดุ คาส่ังนัน้ ทางานบนเครอื่ งคอมพิวเตอร์ ซึง่ โปรแกรมจะทางานร่วมกับซพี ยี ู เพื่อทาหนา้ ควบคุมการประมวลผลของเครอื่ งคอมพวิ เตอรใ์ ห้สามารถคานวณ หรือประมวลผลส่ิงตา่ ง ๆ ได้ตามทเ่ี ราต้องการ โปรแกรม แบง่ ออก เป็น 2 ประเภท คอื 1. ซอฟต์แวร์ระบบปฏิบตั ิการ (Operating System Software) 2. ซอฟตแ์ วรป์ ระยุกต์ (Application Software) ซอฟต์แวร์ระบบปฏบิ ัติการ (Operating System Software) ระบบปฏิบตั กิ าร หรอื ท่เี รียกยอ่ ๆ ว่า โอเอส (Operating System : OS) เป็นซอฟต์แวร์ใช้ในการดูแลระบบคอมพิวเตอร์ เครอ่ื งคอมพวิ เตอร์ทกุ เครอ่ื งจะตอ้ งมีซอฟตแ์ วร์ระบบปฏิบัตกิ ารน้ีระบบปฏิบัตกิ ารท่ีนิยมใชก้ ันมากและเปน็ ที่รู้จักกันดเี ช่นดอส (Disk Operating System : DOS) วินโดวส์(Windows) โอเอสทู (OS/2) ยนู กิ ซ์ (UNIX) ลินุกซ์ (LINUX) ซอฟต์แวรป์ ระยุกต์ (Application Software) เป็นชุดคาสั่งท่ีถูกพัฒนาข้ึนจากความตอ้ งการของผใู้ ชง้ าน เพ่อื สัง่ ให้เคร่ืองคอมพวิ เตอร์ ทางานเฉพาะทางตามท่ผี ู้ใชง้ านต้องการ แบ่งออกเป็น 2 ประเภท คือ 1. ซอฟตแ์ วร์สาหรบั งานเฉพาะด้าน (Special Purpose Software) เป็นซอฟตแ์ วรท์ ีม่ คี วามนิยมใช้กนั สูงมาก ซอฟต์แวรส์ าเร็จเปน็ ซอฟตแ์ วร์ที่บริษทั พัฒนาขึ้น แลว้ นาออกมาจาหน่าย เพ่อื ใหผ้ ้ใู ชง้ านซื้อ

ไปใช้ได้โดยตรง ไม่ต้องเสียเวลาในการพัฒนาซอฟต์แวร์อีก ซอฟต์แวร์สาเร็จที่มีจาหน่ายในท้องตลาดทว่ั ไปและเป็นท่นี ิยมของผใู้ ชม้ ี 5 กลุ่มใหญ่ ได้แก่ ซอฟตแ์ วรป์ ระมวลคา (word processing software) ซอฟตแ์ วร์ตารางทางาน (spread sheet software) ซอฟตแ์ วรจ์ ัดการฐานข้อมูล (data base management software)ซอฟต์แวร์นาเสนอ (presentation software) และซอฟต์แวร์สื่อสารข้อมูล (data communicationsoftware) 2. ซอฟต์แวร์สาเร็จรูป (Package) หรือ ซอฟต์แวร์สาหรับงานท่ัวไป (General PurposeSoftware) เป็นซอฟต์แวรท์ ม่ี ีความนยิ มใช้กันสูงมาก ซอฟต์แวรส์ าเร็จเป็นซอฟตแ์ วร์ท่ีบริษัทพัฒนาขึ้น แล้วนาออกมาจาหน่าย เพื่อใหผ้ ใู้ ช้งานซ้ือไปใชไ้ ด้โดยตรง ไม่ต้องเสียเวลาในการพัฒนาซอฟต์แวร์ ซอฟตแ์ วร์สาเร็จท่ีมีจาหน่ายในท้องตลาดท่ัวไป และเป็นที่นิยมของผู้ใช้มี 5 กลุ่มใหญ่ ได้แก่ ซอฟต์แวร์ประมวลคา (wordprocessing software) ซอฟต์แวร์ตารางทางาน (spread sheet software) ซอฟต์แวร์จัดการฐานข้อมูล(data base management software) ซอฟต์แวรน์ าเสนอ (presentation software) และซอฟต์แวร์สอ่ื สารข้อมลู (data communication software) ในรายวิชานี้ จะศึกษาเกี่ยวกับหลักการออกแบบและพฒั นาซอฟตแ์ วรส์ าหรับงานเฉพาะด้าน โดยใช้ภาษาซีเปน็ เครอ่ื งมอื ในการเขียนโปรแกรม ขน้ั ตอนในการออกแบบและพฒั นาซอฟตแ์ วร์ โดยทัว่ ไปแบง่ เปน็ 4 ข้นั ตอน ดังน้ี 1. การวเิ คราะหง์ าน 2. การพฒั นาโปรแกรม 3. การทดสอบโปรแกรม 4. การจัดทาเอกสารและบารงุ รกั ษาโปรแกรมการวเิ คราะห์งาน เป็นขน้ั ตอนของการวางแผนในการแก้ไขปญั หา โดยทาการวิเคราะห์ 5 หัวข้อ ดงั ตอ่ ไปนี้ 1. สง่ิ ที่โจทยต์ ้องการ คือ การวเิ คราะห์ว่าโจทยต์ อ้ งการใหโ้ ปรแกรมทาอะไรไดบ้ า้ ง พรอ้ มทงั้ เขียน สตู รที่ต้องใชท้ ัง้ หมดในการหาคาตอบ เชน่ คานวณหาผลรวมของรายรบั -รายจา่ ย เปน็ ต้น 2. รูปแบบผลลัพธ์ คือ การวิเคราะห์เกยี่ วกบั อุปกรณก์ ารแสดงผลว่า โจทย์ต้องการให้แสดงผลผา่ น จอภาพ ปรน้ิ ท์เตอร์ หรือเก็บเป็นไฟลค์ อมพวิ เตอร์ พร้อมทั้งออกแบบรปู แบบผลลพั ธ์ให้ถูกต้อง และเหมาะสม เพ่ือให้คอมพิวเตอร์ตอบโจทย์ได้ตามสิง่ ที่โจทย์ตอ้ งการ (ในขั้นตอนที่ 1)

3. ขอ้ มลู นาเข้า คือ การวิเคราะหโ์ จทยว์ า่ ในการทางานของโปรแกรมครง้ั นี้ เพ่ือให้ไดผ้ ลลพั ธ์ตามส่ิง ทโี่ จทย์ต้องการ (ในข้ันตอนท่ี 1) และรูปแบบผลลพั ธ์ (ในข้นั ตอนท่ี 2) จะต้องใหผ้ ้ใู ชง้ านป้อน ขอ้ มูลอะไรเขา้ ไปในโปรแกรมก่อนหรอื ไม่ โปรแกรมจึงจะสามารถทางานได้ คาแนะนา ขอ้ มลู อะไรที่คอมพิวเตอร์สามารถคานวณหามาได้ ข้อมูลชดุ นั้นไม่ใชข่ อ้ มูลนาเขา้4. ตัวแปรที่ใช้ คอื การวเิ คราะหว์ ่า ในการเขียนโปรแกรมคร้งั น้ี จะต้องมกี ารใช้ตวั แปรทัง้ หมดกตี่ วั อะไรบา้ ง แตล่ ะตวั ใช้แทนขอ้ มลู อะไร และควรกาหนดข้อมูลเป็นชนิดใด (ตัวเลข ตัวอกั ษร หรอื ตรรกศาสตร์) คาแนะนา การเขยี นตวั แปรทีใ่ ช้ ให้พิจารณา จาก 3 สงิ่ เรยี งลาดบั ดังต่อไปน้ี 1. ขอ้ มลู นาเข้า (ในขัน้ ตอนที่ 3) ขอ้ มูลนาเข้าทกุ ตวั ต้องมตี วั แปรรองรับเสมอ 2. รปู แบบผลพั ธ์ (ในข้นั ตอนท่ี 2) ข้อมูลทกุ ชดุ ที่แสดงในรูปแบบผลลพั ธ์ตอ้ งมตี วั แปรรองรับ เสมอ หากข้อมูลดังกล่าวซา้ กับขอ้ มูลนาเข้า ไมต่ อ้ งสรา้ งตวั แปรข้ึนใหม่ ให้ใช้ตวั แปรนั้น ๆ แทนไดเ้ ลย 3. สงิ่ ท่โี จทย์ตอ้ งการ (ในข้ันตอนท่ี 1) ผลลัพธ์ที่ไดจ้ ากการคานวณทุกสตู ร จะต้องมตี ัวแปร รองรับเสมอ หากข้อมลู ดังกลา่ วซ้ากบั ขอ้ มูลนาเข้า และรปู แบบผลลพั ธ์ ไมต่ ้องสรา้ งตัวแปรข้ึน ใหม่ ให้ใช้ตวั แปรนนั้ ๆ แทนไดเ้ ลย5. การกาหนดข้นั ตอนการทางานหรือวธิ ีการประมวลผล (Algorithm) เป็นการเขียนลาดับขั้นตอนทจ่ี ะ ใหเ้ ครือ่ งคอมพิวเตอรท์ างานเพื่อให้ได้ผลลัพธ์ท่ตี ้องการ (ในขั้นตอนที่ 2) Algorithm คอื กระบวนการแก้ปญั หาท่สี ามารถเขา้ ใจได้ มลี าดบั หรอื วธิ กี ารในการแกไ้ ขปญั หาใดปัญหาหนง่ึ อยา่ งเป็นขั้นเปน็ ตอนและ ชดั เจน เมอ่ื นาเขา้ อะไร แลว้ จะต้องไดผ้ ลลพั ธ์เช่นไร เชน่ หากเราตอ้ งการวิเคราะห์ว่าตวั เลข 2 จานวน ตัวเลขใดมคี า่ มากกวา่ กัน (ขอ้ มูลนาเขา้ คอื ตัวเลข 2 จานวน)ต้องทาอยา่ งไรบ้าง เพ่อื จะได้ค่าตวั เลขที่มคี ่ามากทสี่ ดุ (ผลลพั ธ์ ทตี่ ้องการ) ยกตัวอย่าง วธิ ที ่ี 1 1.เริม่ ตน้ 2. รับคา่ ตัวเลขจานวนที่ 1 และ ตวั เลขจานวนที่ 2 3. เปรียบเทยี บตัวเลข 2 จานวน เพ่ือหาวา่ ตวั เลขใดมคี า่ มากทีส่ ดุ โดย 3.1 เปรียบเทียบวา่ ตวั เลขจานวนท่ี 1 > ตวั เลขจานวนที่ 2 จรงิ หรอื ไม่ - ถา้ เงอื่ นไขเป็น จรงิ ให้ พิมพ์ค่าตวั เลขจานวนที่ 1 แล้วไปทาขอ้ 4

- ถา้ เงื่อนไขเปน็ เทจ็ ใหเ้ ปรียบเทียบในขอ้ 3.2 ต่อไป 3.2 เปรียบเทียบว่า ตวั เลขจานวนที1่ < ตวั เลขจานวนท่ี 2 จรงิ หรือไม่ - ถา้ เงื่อนไขเปน็ จริง ใหพ้ ิมพค์ า่ ตัวเลขจานวนที่ 2 แลว้ ไปทาข้อ 4 - ถา้ เง่อื นไขเป็น เทจ็ ให้พิมพ์คา่ ตวั เลขจานวนท่ี 1 และ 2 แล้วไปทาข้อ 44. จบการทางานวิธีท่ี 21.เรม่ิ ตน้2. รับค่า ตัวเลขจานวนท่ี 1 และ ตวั เลขจานวนที่ 23. เปรียบเทยี บตัวเลข 2 จานวน เพ่อื หาว่า ตวั เลขใดมีคา่ มากทีส่ ดุ โดย 3.1 เปรียบเทียบว่า ตัวเลขจานวนที่ 1 < ตวั เลขจานวนท่ี 2 จรงิ หรือไม่ - ถ้าเงอ่ื นไขเป็น จริง ให้ พมิ พ์คา่ ตัวเลขจานวนท่ี 2 แลว้ ไปทาข้อ 4 - ถา้ เงื่อนไขเป็น เทจ็ ให้เปรยี บเทียบในขอ้ 3.2 ตอ่ ไป 3.2 เปรียบเทียบว่า ตัวเลขจานวนท1่ี > ตวั เลขจานวนท่ี 2 จริงหรือไม่ - ถ้าเง่ือนไขเป็น จริง ใหพ้ มิ พค์ า่ ตัวเลขจานวนที่ 1 แลว้ ไปทาข้อ 4 - ถ้าเงอื่ นไขเป็น เท็จ ให้พมิ พค์ ่า ตัวเลขจานวนที่ 1 และ 2 แล้วไปทาข้อ 44. จบการทางานวิธีที่ 31.เร่ิมต้น2. รบั คา่ ตวั เลขจานวนท่ี 1 และ ตัวเลขจานวนที่ 23. เปรียบเทียบตวั เลข 2 จานวน เพอ่ื หาวา่ ตวั เลขใดมคี า่ มากทส่ี ุด โดย 3.1 เปรียบเทยี บว่า ตัวเลขจานวนท่ี 1 > ตัวเลขจานวนท่ี 2 จริงหรือไม่ - ถา้ เงอ่ื นไขเป็น จรงิ ให้ พมิ พ์คา่ ตัวเลขจานวนที่ 1 แล้วไปทาข้อ 4 - ถา้ เงื่อนไขเปน็ เทจ็ ใหเ้ ปรยี บเทยี บในขอ้ 3.2 ตอ่ ไป 3.2 เปรียบเทียบว่า ตัวเลขจานวนที1่ = ตัวเลขจานวนท่ี 2 จรงิ หรือไม่ - ถา้ เง่อื นไขเป็น จรงิ ใหพ้ ิมพ์ค่า ตัวเลขจานวนท่ี 1 และ 2 แลว้ ไปทาขอ้ 4 - ถา้ เงอ่ื นไขเป็น เทจ็ ให้พิมพ์คา่ ตวั เลขจานวนที่ 2 แลว้ ไปทาขอ้ 44. จบการทางาน

จะสังเกตุได้ว่า ใน 1 ปัญหา มีวิธีแก้ไขหลายวิธี แต่ละคนอาจจะคิดวิธีแก้ไขปัญหา(Algorithm) แตกต่างกันออกไปคาแนะนา ในการเขียนขั้นตอนการทางานของโปรแกรม ยดึ หลักการทางานของคอมพิวเตอร์ดงั นี้ รปู ที่ 1 แสดงข้นั ตอนการทางานของคอมพวิ เตอร์โดยสังเขป รูปที่ 2 แสดงขั้นตอนการทางานของคอมพวิ เตอร์โดยละเอยี ด

ดังนั้นจะสงั เกตวา่ ขั้นตอนแรกในการทางานของคอมพิวเตอรจ์ ะต้องทาการรับขอ้ มูลหรือคาสั่งต่าง ๆ จากผู้ใชง้ านก่อนเสมอ เช่นเดียวกันกบั การเขยี นขั้นตอนแรกของการทางานของโปรแกรมคอมพวิ เตอร์ ก็ให้พจิ ารณาจาก ขอ้ มลู นาเข้ากอ่ นว่า มหี รอื ไม่ ถา้ มี จะต้องกาหนดใหม้ กี ารรบั ตัวแปรท่ีแทนขอ้ มูลนาเข้าทุกตวั ก่อนเสมอ หลงั จากน้ันจึงเขียนสูตรตา่ ง ๆ ท่ตี อ้ งใชใ้ นการประมวลผล หากมมี ากกวา่ 1 สตู ร จะต้องเรียงลาดับสูตรคานวณก่อนหลงั ให้ถูกต้อง หลงั จากนั้นจงึ เขยี นคาสัง่ เพือ่ ใหโ้ ปรแกรมคอมพวิ เตอรแ์ สดงผลลพั ธ์ตามรูปแบบผลลัพธ์ท่ีต้องการ โดยอาจใช้คาว่า พมิ พค์ ่า หรอื แสดงคา่ กไ็ ด้ แล้วระบชุ อ่ื ตัวแปรท่ตี อ้ งการให้แสดในรูปแบบผลลพั ธ์เรียงลาดบั จากบนลงล่าง และหากในบรรทัดนั้นๆ มีการแสดงผลหลายค่า ใหแ้ สดงชื่อตัวแปรทแ่ี ทนชดุ ข้อมลู นัน้ จากซ้ายไปขวา ตามลาดับ หมายเหตุ หากในส่งิ ที่โจทย์ต้องการ หรือ รูปแบบผลลัพธ์ท่ีตอ้ งการ มีการคานวณหายอดรวมหรือผลรวม ให้กาหนดคา่ ใหต้ วั แปรน้ัน ๆ มีคา่ เร่มิ ต้นเป็น 0 ก่อนรับข้อมูลนาเขา้ เสมอ รหัสคาส่ังเทียม (Pseudo Code) หมายถึง คาส่ังท่ีใช้เขียนลาดับขั้นตอนการทางาน โดยพัฒนามาจากการอธบิ ายลาดับขั้นตอนการทางานในลักษณะของข้อความ (Algorithm) และจะเขียนเลียนแบบคาสั่งจริง วิธีการเขียนจะเขียนด้วยภาษาที่เข้าใจง่าย อาจใช้ภาษาอังกฤษในการเขียนเพราะเหมือนกบั การเขยี นโปรแกรมจริง หรอื เขยี นด้วยภาษาไทยก่อนก็ได้ เพราะการเขยี นคาส่ังเทียมนีจ้ ะไม่ข้นึ กับภาษาคอมพิวเตอรภ์ าษาใดภาษาหนึง่ แตเ่ ปน็ คาสัง่ ทีเ่ ขยี นเลียนแบบคาส่ังจรงิ อย่างยอ่ ๆและใช้เปน็ แนวทางของคาสั่งควบคุมในภาษานั้น ๆ เพื่อให้เห็นแนวทางของการทางานในโปรแกรมและยงั ไมส่ ามารถนาไปใช้งานได้ จะต้องนาไปพัฒนาโดยการเขยี นเป็นโปรแกรม โดยเลอื กใชภ้ าษาใดภาษาหนง่ึ ในการเขียน ซงึ่ แลว้ แตค่ วามเหมาะสมของงาน เช่น ในโปรแกรมเราอาจต้งั คา่ ตวั แปรต่าง ๆของโปรแกรมใหม้ ีคา่ เป็นศูนย์ เพือ่ ให้โปรแกรมทางานไดอ้ ยา่ งถูกต้อง ซ่ึงกระบวนการนห้ี ากเขียนเป็นผงั งานโปรแกรม (Program Flowchart) จะต้องกาหนดค่าตัวแปรที่ใช้ในโปรแกรมทงั้ หมดใหเ้ ป็นศูนย์ถ้ามีตวั แปร 10 ตัวก็จะต้องเขยี นชือ่ ตวั แปรท้ัง 10 ตวั พรอ้ มกับการกาหนดคา่ เริ่มตน้ ให้มีค่าเป็น 0 แต่หากเขียนด้วยคาสง่ั เทยี มเราสามารถเขยี นยอ่ ๆ ว่า “การกาหนดค่าเร่ิมต้น (Initial Program)”ได้ คาส่ังเทียม (Pseudo Code) เป็นคาสั่งท่ีใกล้เคียงกับภาษาคอมพิวเตอร์ แต่ไม่ใช่คาสั่งในภาษาคอมพิวเตอร์ใด ๆ อย่างแทจ้ รงิ เป็นคาส่ังท่ีเขียนเลยี นแบบคาสั่งจริงอย่างยอ่ ๆ จงึ ไม่สามารถนาไปเขยี นลงในเครอื่ งคอมพิวเตอรใ์ ห้ทางานได้ และใช้เป็นแนวทางของคาสัง่ ควบคุมในภาษาน้ัน ๆเพ่อื ให้เห็นแนวทางของการทางานในโปรแกรม ใหน้ ักเขยี นโปรแกรมนาไปแปลงเป็นภาษาโปรแกรม

คอมพิวเตอร์ การเขยี นคาสั่งเทียมมที งั้ การทางานแบบลาดบั การทางานแบบเลอื กทา และการทางานแบบทาซา้ลกั ษณะของคาสง่ั เทียมØ ใชข้ อ้ ความทสี่ ั้นไดใ้ จความØ ใชข้ ้อความทีส่ ่อื ใหผ้ ูอ้ า่ นเขา้ ใจได้งา่ ยØ ตอ้ งเขียนเรยี งลาดับทีละบรรทัดØ มีลักษณะใกล้เคยี งกับภาษามนุษย์Ø ไม่ขึน้ อยู่กับภาษาคอมพวิ เตอรภ์ าษาใดภาษาหนึ่งประโยชนข์ องคาส่ังเทยี ม* คาส่ังเทียมมีประโยชน์มากสาหรับการร่างเค้าโครงโปรแกรมท่ีจะเขยี น ใช้สาหรับทบทวนความถูกตอ้ งของการออกแบบอาจจะทบทวนไดด้ ้วยตนเองหรือประชมุ ทบทวนตามหลักการ Walkthroughคือใหท้ มี งานออกแบบและเขียนโปรแกรมไดม้ สี ่วนศกึ ษา พิจารณาและแสดงความเหน็* ใช้เปน็ เอกสารกากับโปรแกรม สาหรบั อธบิ ายโปรแกรมและการบารุงรักษาโปรแกรมในอนาคตได้* ใชต้ รวจสอบความถกู ต้องกอ่ นเขยี นโปรแกรมจริง* ช่วยให้เขียนโปรแกรมไดส้ ะดวกรวดเรว็ ยงิ่ ขน้ึ* ใชส้ าหรับกาหนดงานเขียนโปรแกรม โดยใหน้ ักเขียนโปรแกรมนาคาสั่งเทยี มไปเพ่มิ เติมและแก้ไขรายละเอียดทจี่ าเป็นได้ง่าย* ใชเ้ ป็นเครือ่ งมือประกอบในวิธกี ารออกแบบอ่นื ๆ เช่น การออกแบบผงั งานโครงสรา้ งหลกั เกณฑ์ทั่วไปในการเขียนคาสง่ั เทยี มรูปแบบและคุณสมบัตขิ องการเขยี นคาสง่ั เทียมโดยท่ัวไปจะมลี กั ษณะดังตอ่ ไปนี้* กาหนดชอื่ ของรหสั เทียมให้สอื่ ความหมายและเข้าใจงา่ ย โดยกาหนดต่อท้ายคาวา่ “BEGIN” ซ่งึถอื ว่าเป็นจดุ เรม่ิ ต้นของอลั กอรทิ ึม และมีคาวา่ “END” เพือ่ เป็นตัวบอกจดุ ส้ินสุดของอัลกอรทิ มึ ตามดว้ ยชื่อของคาสงั่ เทียมนัน้ ๆ* เมื่อเขยี นเป็นคาสง่ั เทยี มแล้วจะต้องไม่ขึน้ กบั ภาษาใดภาษาหน่งึ ในการพฒั นาเป็นโปรแกรม(Language independent)* ใชค้ าและวลที ีเ่ ข้าใจงา่ ย* รูปแบบการเขียนคล้ายกับการเขยี นเป็นภาษาอังกฤษ

* การเขียนแตล่ ะคาสง่ั ของคาสั่งเทยี มควรแยกเปน็ บรรทัด ไมค่ วรเขียนหลายคาสง่ั อยู่ในบรรทัดเดียวกัน* ในการเขยี นคาสัง่ เทียมควรมีการย่อหนา้ หรอื เว้นวรรคตอนในแตล่ ะประโยคคาส่ังหรอื กลุ่มของคาสง่ั เพอื่ ใหเ้ กิดความสวยงามและเข้าใจง่าย สะดวกต่อการอ่านและการตรวจสอบคาสั่งเทยี มไดอ้ กีทางหนึง่* การเขียนคาส่ังเทยี มจะเริม่ เขยี นจากบนลงลา่ ง (Top to Down) โดยมที างเขา้ หน่ึงทางและทางออกหนงึ่ ทาง* กลมุ่ ของคาสั่งทเี่ ปน็ โปรแกรมทีท่ าหน้าท่ีอย่างเดียวกัน ควรจะรวมเขา้ ดว้ ยกันเป็นลักษณะของโมดูล (Module) โดยตงั้ ช่อื กากับไว้ในแตล่ ะโมดลูตวั อยา่ งการเขียนรหสั คาสั่งเทียม เพ่ือคานวณหาพ้ืนทีส่ ามเหล่ียมAlgorithm การหาพืน้ ทส่ี ามเหลย่ี ม Algorithm Area_Triangle1. เริม่ ตน้ Begin2. รับค่าความยาวของฐานมาเก็บในตัวแปร x3. รับคา่ ความยาวของสงู มาเกบ็ ในตัวแปร y Read x4. คานวณหาพ้ืนที่ area = (x * y) / 2 Read y5. แสดงพ้นื ท่ี area Compute area = (x * y) / 26. จบการทางาน Print area Endการกาหนดค่า และการคานวณ รูปแบบ name = expression name คือ ช่อื ตัวแปรทีใ่ ช้สาหรับเก็บคา่ expression คือ ค่าข้อมูลหรอื นิพจน์ ตวั อยา่ ง salary = 1000 overTime = 2500 tax = 125 Income = salary + overTime -tag2. การอา่ น/รบั ข้อมูล การอา่ นขอ้ มลู สามารถใช้คาสง่ั READ, INPUT หรือ GET ไดโ้ ดยมีรูปแบบ ดังน้ี Read variables_1, variables_2, variables_3

Input variables_1, variables_2, variables_3 Get variables_1, variables_2, variables_3 READ ใช้สาหรับการอ่านคา่ ทมี่ อี ยู่แลว้ มาเกบ็ ไว้ในตัวแปร เช่น การอา่ นข้อมลู จากไฟล์ โดยจะทางานร่วมกบั OPEN (การเปดิ ไฟล)์ INPUT และ GET ใชส้ าหรับการรับค่าข้อมูลผ่านทางแป้นพิมพ์ Variable คือ ตวั แปรทใ่ี ชเ้ ก็บขอ้ มลู ท่ีอา่ นหรือรบั เข้ามา ซง่ึ กาหนดได้ตามจานวนตวั แปรท่ีตอ้ งการโดยใช้เคร่ืองหมาย “,” ค่ันระหวา่ งช่ือตัวแปร ตวั อย่าง Input a, b, c Answer = a + b + c Get current_date expire_date = current_date + 120 Open student_file Read Id, Name, Address, Sex4. การแสดงผลข้อมลู การแสดงผลข้อมลู สามารถใช้คาส่งั Print , Prompt, Write โดยมีรูปแบบดงั น้ี print variables_1, variables_2, variables_3 prompt variables_1, variables_2, variables_3 write variables_1, variables_2, variables_3 PRINT และ PROMPT ใช้สาหรับการพิมพ์คา่ ข้อมลู หรือ ข้อความ WRITE ใช้สาหรบั การบันทกึ ขอ้ มลู ลงในแฟ้มข้อมลูตัวอยา่ งPrompt \" Enter 3 Value ==> \"Input Value1 , Value2 , Value3Sum = Value1 + Value2 + Value3

Print SumOpen Student _fileInput Id, Name, Address, SexWrite Id, Name, Address, Sex5. การเปรยี บเทยี บเพ่อื หาทางเลอื กตามเงอื่ นไข มีรูปแบบ ดังน้ี If < condition > Then Activity 1 Else Activity 2 Endif <condition> คือ เง่ือนไขทกี่ าหนด ซ่งึ หากเงอ่ื นไขเปน็ จรงิ จะทา กิจกรรมหลัง THEN (activity1) แตถ่ า้ เงือ่ นไขเป็นเท็จ กจ็ ะทา กิจกรรมหลงั ELSE (activity2) ตัวอย่าง IF sex = “M” THEN male = male + 1 ELSE female = female + 1 ENDIF IF score >= 80 Then grade = “A” ELSEIF score >= 70 Then grade = “B” ELSEIF score >= 60 Then grade = “C” ELSEIF score >= 50 Then grade = “D” ELSE grade = “F”

ENDIF6. การทางานเป็นรอบ (Loop) การทางานเป็นรอบ หรือเรียกย่อ ๆ ว่า ลูป มี 2 คาสั่ง คอื 1. WHILE … ENDWHILE 2. DO … UNTIL 3. FOR…NEXT คาส่ัง WHILE … ENDWHILE มรี ปู แบบ ดังน้ี WHILE <condition> activity1 activity2 activity3 ENDWHILE การทางานของลูป WHILE จะมีการตรวจสอบเง่ือนไขก่อนเสมอ โดยหาก เงอ่ื นไขเป็นจริง จะทากจิ กรรมภายในลปู ซ้าไปเรือ่ ยๆ จนกระท่งั เง่อื นไข เป็นเทจ็ ก็จะออกจากลปู (กรณีทีต่ รวจสอบเงื่อนไขครง้ั แรกเปน็ เท็จกจ็ ะไม่ มีการทากจิ กรรมภายในลูปเลย) ตัวอยา่ ง num = 1 WHILE num <= 20 PRINT num num = num + 1 ENDWHILE PRINT “STOP RUN” คาสง่ั DO … UNTIL มรี ูปแบบ ดังนี้ DO activity1 activity2

activity3 UNTIL <condition> การทางานของลูป DO … UNTIL จะทากจิ กรรมภายในลูปก่อนหนง่ึ รอบ จากน้นั จะทาการตรวจเง่อื นไขโดยจะวนซ้าไปเรื่อยๆ จนกวา่ เงื่อนไขจะเปน็ จริง จงึ หลุดออกจากลปู และถึงแม้เงอื่ นไขทต่ี รวจสอบเป็นจรงิตง้ั แตแ่ รก แตล่ ปู DO…UNTIL กจ็ ะมีการทากิจกรรมภายในลูปอยา่ งน้อยหนึ่งรอบเสมอ ตัวอย่าง num = 0 DO PRINT “HELLO…” num = num + 1 UNTIL num > 20 คาส่ัง FOR … NEXT มรี ูปแบบ ดงั น้ี FOR i=1 to n activity1 activity2 activity3 Next iตวั อย่างที่ 1 จงเขยี น Pseudocode โปรแกรมหาผลรวมของตัวเลข 2 คา่ แลว้ แสดงผลรวมออกมาทางหนา้ จอ Algorithm Cal_Sumary Begin read x , y calculate sum = x + y print sum End

ตัวอย่างท่ี 2 จงเขยี น Pseudocode โปรแกรมรบั ตวั เลข 1 ค่าแล้วตรวจสอบ ว่าเป็นเลขคหู่ รือเลขคี่ โดยกาหนดใหแ้ สดงผลทางจอภาพ Algorithm Cal_ODD_Number Begin read x if x % 2 = 0 Then Print “Even” Else Print “Odd” Endif Endตวั อย่างที่ 3 จงเขยี น Pseudocode โปรแกรมหาคา่ เฉล่ยี ของตัวเลข 10 ค่า แล้วแสดงค่าเฉลย่ี ออกทางจอภาพ Algorithm Cal_Average Begin x=0 While x < 10 Read num Calculate sum = sum + num Endwhile Calculate Mean = sum / 10 Print mean End


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