การเขยี นโปรแกรมบนมาตรฐานเปิด
รหัสวิชา 2204 - 2007
ผสู้ อน : อ.ปานเทพ รัตนอมั พร
ข้นั ตอนการเขียนโปรแกรม
การวเิ คราะห์ปัญหหา การออกแบบโปรแกรม การเขยี นโปรแกรม
การเขยี นโปรแกรมทด่ี ี จงึ จาเป็ นต้องมแี บบแผนและสามารถ การทดสอบโปรแกรม
ถ่ายทอดต่อ ๆ กนั ได้ การจดั ทาเอกสาร
โดยการเขียนโปรแกรมจะประกอบด้วย 5 ข้นั ตอนหลกั ๆ ประกอบโปรแกรม
(คู่มอื )
อธบิ ายเพม่ิ เติม : ขนั้ ตอนการเขยี นโปรแกรม
1.วิเคราะหป์ ัญหา
ขน้ั ตอนการวเิ คราะหป์ ัญหา จาเป็นต้องอา่ นโจทย์อยา่ งระมดั ระวัง
โดยการวิเคราะห์และตโี จทยใ์ หแ้ ตก เพือ่ ใหเ้ ขา้ ใจถงึ แก่นแทข้ องปญั หา
ให้จงได้ เพอื่ ให้ไดม้ า “ความตอ้ งการทแ่ี ท้จริง” สาหรบั ขั้นตอนการวเิ คราะห์
ปัญหาน้นั แบง่ ออกได้เปน็ 3 ส่วน ดังนี้
• ส่วนข้อมลู นาเขา้ (input unit)
• ส่วนประมวลผล (processing unit)
• ส่วนผลลัพธ์(output unit)
อธิบายเพิ่มเตมิ : ข้ันตอนการเขยี นโปรแกรม
2.การออกแบบโปรแกรม
เม่ือปัญหาไดร้ บั การวิเคราะห์เปน็ ที่เรยี บรอ้ ย ขั้นตอนตอ่ ไป คือ การออกแบบ
โปรแกรมโดยผา่ นอลั กอริทมึ เป็นเคร่ืองมือที่สามารถนามาใชเ้ พื่อการออกแบบ
ซงึ่ อลั กอริทมึ เป็นการอธบิ ายข้นั ตอนลาดับการทางานของโปรแกรมต้ังแตเ่ ร่ิมต้น
จนสนิ้ สุดการทางาน ตรวจสอบ แกไ้ ขได้ตรงตามความตอ้ งการ
• กาหนดขนั้ ตอนการประมวผลส่วนหลกั ๆ
• การทางานส่วนงานยอ่ ย
• การออกแบบสว่ นประสานการทางาน
อธบิ ายเพม่ิ เตมิ : ขัน้ ตอนการเขียนโปรแกรม
3.การเขียนโปรแกรม
เมอื่ ผ่านการวางแผน การวิเคราะหด์ ้วยอัลกอรทิ ึมแล้ว จนแนใ่ จว่าถกู ต้องแนน่ อน
ขัน้ ตอนต่อไป คือ การนาอัลกอริทึมมาเขยี นเปน็ ชดุ คาสง่ั ดว้ ยภาษาคอมพิวเตอร์
4.การทดสอบโปรแกรม
คอื ข้ันตอนการนาโปรแกรมท่ีสรา้ งขึน้ มาแปล ดว้ ยตัวแปลภาษาทางคอมพวิ เตอร์
ของแตล่ ะภาษา อาจเป็นตัวแปลชนิดคอมไพเลอร์ หรอื อินเตอร์พรีเตอร์ ก็ได้
ขนั้ ตอนการทดสอบโปรแกรม นิยมเรยี ก “การดบี ๊กั โปรแกรม (Debugging)”
อธบิ ายเพ่ิมเติม : ข้ันตอนการเขียนโปรแกรม
5.การจัดทาเอกสารประกอบโปรแกรม(คู่มือ)
เอกสารประกอบโปรแกรม จะถูกเข้าใจวา่ จัดทาขนึ้ ขนั้ ตอนสุดทา้ ยเสมอ
แตค่ วามเปน็ จริงเอกสารประกอบการพฒั นาโปรแกรมอาจจัดทาขึน้ ตั้งแต่
ขั้นตอนการกาหนดปญั หาและแต่ละการพัฒนากไ็ ด้ เพราะเอกสารนี้ สามารถ
ตรวจสอบ ควบคุม ดแู ลความผิดพลาดท่อี าจจะเปิดขึ้นกับโปรแกรมและข้อมูล
สาคญั ในการนาไปใช้งานไดอ้ ีกด้วย
รปู แบบการเขยี นโปรแกรม
สามารถแบง่ ออกเป็น 2 รปู แบบ
1. การเขยี นโปรแกรมเชงิ โครงสรา้ ง (Structured Programming)
2. การเขียนโปรแกรมเชิงวัตถุ(Object-Oriented Programming)
1. การเขียนโปรแกรมเชิงโครงสรา้ ง (Structured Programming)แบง่ โครงสร้าง
โปรแกรมได้เปน็ 3 รูปแบบ
1.1. แบบลาดบั ขนั้ ตอน (Sequence) 1.3
1.2. แบบการตัดสินใจทางเลือก (Decision) มองไปท่ีขา้ งนอก
1.3. แบบทาซ้า (Repetition) 1.2
no
1.1 มองไปท่ีขา้ งนอก
ฝนตก?
ยนื ข้ึน
ฝนตก? no ใส่แวน่ กนั แดด
หนั ขวา yes
yes
นาร่มไปดว้ ย
เดินไปที่หนา้ ต่าง นาร่มไปดว้ ย
อลั กอรทิ มึ (Algorithms)
คือ ขน้ั ตอนวิธี ท่จี ะอธบิ ายว่างานงานนัน้ ทางานอย่างไร โดยจะ
ประกอบดว้ ยกระบวนการการทางานเปน็ ลาดับขน้ั ตอนท่ชี ัดเจน
และจะไดร้ บั ท่ีถกู ตอ้ งแน่นอนหากดาเนนิ การตามขนั้ ตอนหรือ
กระบวนการนี้
เชน่ อัลกอรทิ ึมการตม้ บะหม่ี
อัลกอริทึมการตม้ บะหมี่
1. เทน้าสะอาดใสห่ ม้อ 5. นานา้ ท่ตี ม้ เดอื ดเทลงในชาม
2. ต้มนา้ จนเดอื ด 6. ปดิ ฝา
7. รอประมาณ 3 นาที
3. ฉกี ซอง และนาบะหมี่
กง่ึ สาเร็จรูปใสล่ งในชาม
4. เทเครือ่ งปรงุ ลงในชาม
คุณสมบัตขิ องอลั กอริทึม
1. เปน็ กระบวนการท่ีสร้างข้นึ จากกฎเณฑ์
2. กฎเกณฑ์ท่ีสรา้ งอัลกอรทิ มึ ตอ้ งไม่คลมุ เครือ
3. การประมวลผลตอ้ งเป็นลาดบั ขั้นตอน
4. กระบวนการตอ้ งใหผ้ ลลัพธ์ตามท่ีกาหนดในปัญหา
5. อลั กอรทิ ึมตอ้ งมจี ดุ สิน้ สุด
ซโู ดโค้ด (Pseudo Code)
เป็นการสรา้ งตวั แทนของอัลกอรทิ ึมท่ีใชส้ าหรับการ
สอ่ื สารตรรกะ ในการแก้ปัญหาของการเขยี นโปรแกรม
ซโู ดโคด้ มรี ปู แบบเป็นโครงสรา้ งภาษาอังกฤษ ที่มี
ความคล้ายคลงึ กับภาษาคอมพวิ เตอร์ระดบั สูง
วธิ ีการเขียน ซูโดโคด้ (Pseudo Code)
1. ถ้อยคา หรอื ประโยคคาสัง่ (Statement) ให้เขียนในรปู แบบของ
ภาษาอังกฤษอยา่ งง่าย
2. ในหนึ่งบรรทดั ให้เขียนประโยคคาสง่ั เพยี งคาสง่ั เดยี วเทา่ นน้ั
3. ควรใช้ยอ่ หน้าให้เป็นประโยชน์ เพ่ือแยกคาเฉพาะ(keywords)
และจดั การโครงสร้างใหเ้ ป็นสดั สว่ นอา่ นงา่ ย แก้ไขสะดวก
4. แต่ละคาส่งั ให้เขยี นลาดบั ขั้นตอน จากบนลงลา่ ง
5. กลุม่ ของประโยคคาสัง่ ต่าง ๆ จดั ให้เปน็ กลุ่มแบบโมดลู
รูปแบบการเขยี น ซูโดโคด้ (Pseudo Code)
เพอื่ ใชใ้ นการเขยี นโปรแกรม
1.กาหนดคา่ และการคานวณ
รปู แบบ name = expression
คาอธบิ าย name คือ ช่อื ตัวแปรที่ใชส้ าหรับเก็บคา่
expression คอื คา่ ข้อมูลหรอื นิพจน์
Salary = 10000 จากโค้ด กาหนดค่าเร่ิมต้นให้กบั แปร
Overtime = 2500 salary overtime tax จากนั้นให้ทาการ
Tax = 125 คานวณ เก็บไว้ในตัวแปร ช่ือวา่ income
Income = Salary + Overtime - Tax
รปู แบบการเขยี น ซูโดโค้ด (Pseudo Code)
เพ่ือใชใ้ นการเขียนโปรแกรม
2.การอา่ นข้อมลู และ รบั ข้อมูล
รปู แบบ READ variable_1 , variable_2 , …. variable_n
Input variable_1 , variable_2 , …. variable_n
Get variable_1 , variable_2 , …. variable_n ,
ตัวอย่าง จากโคด้ ใหร้ บั ค่าตวั แปร a b และ c
Input a , b , c ผ่านทางแป้นพมิ พ์ และกาหนดให้ตวั
Answer = a + b + c แปร answer เก็บผลจากการคานวณทั้ง
3 ตัวแปร
รปู แบบการเขียน ซูโดโคด้ (Pseudo Code)
เพ่ือใชใ้ นการเขยี นโปรแกรม
3.การแสดงผลลพั ธ์ ขอ้ มูล
รปู แบบ PRINT variable_1 , variable_2 , …. variable_n
PROMPT variable_1 , variable_2 , …. variable_n
WRITE variable_1 , variable_2 , …. variable_n ,
PROMPT “Enter 3 value ==>” จากโค้ด ให้รบั คา่ ตัวแปร value1 ,
INPUT value1 , value2 , value3 value2 , value3 ผา่ นทางแป้นพิมพ์
Sum = value1 + value2 + value3 และนาตัวแปรมาคานวณ เก็บคา่ ในตัว
PRINT sum แปร SUM จากน้ัน แสดงผลลพั ธ์ ตัว
แปร SUM ออกจากจอภาพหรือพิมพ์
พรอ้ มแล้ว ทาแบบทดสอบท้ายหน่วย
การเรยี นรู้กันนะครับ