หลกั การเขียนโปรแกรม คอมพวิ เตอร์เบ้ืองตน้ หลกั การเขยี นโปรแกรมคอมพิวเตอร์เบ้ืองตน้ (30900-0002) | ครูปิยมาส แกว้ อนิ ตา
หน่วยท่ี 1 ภาษาคอมพวิ เตอร์และ การโปรแกรม หลกั การเขียนโปรแกรมคอมพวิ เตอรเ์ บอ้ื งต้น (30900-0002) | ครูปิยมาส แก้วอนิ ตา
ภาษาคอมพิวเตอร์ ภาษาคอมพิวเตอรท์ ่ีใช้ การให้เครอื่ ง ภาษาท่คี อมพิวเตอรเ์ ขา้ ใจ รหสั นีโมนิกในการ คอมพวิ เตอร์ทางาน เรียกว่า ภาษาเครอ่ื ง เขยี นเรยี กวา่ จะตอ้ งป้อนคาสัง่ ใหก้ ับ (Machine language) ซง่ึ ตัวอักษรภาษาองั กฤษให้ ภาษาแอสเซมบลี แทนคาสั่งรหัสเขฐานสอง มัน และต้องเปน็ คาส่งั เป็นรหสั เลขฐานสอง เหล่านั้น ซง่ึ เรยี กวา่ รหสั นี (Assembly language) ทเ่ี ครือ่ งคอมพิวเตอร์ โมนิก (mnemonic) ภาษาแอสเซมบลเี ป็น ชดุ คาส่ังภาษาตา่ ง ๆ ภาษาที่ทางานได้เร็ว ใหม้ ีความใกล้คัยงกบั เข้าใจ เพราะเขา้ ถงึ หน่วย ภาษาทม่ี นุษย์เข้าใจ ประมวผลไดเ้ ร็วทีส่ ดุ เรียกวา่ ภาษาระดบั สงู การนาคาสั่งมาเรยี ง (High-level language) เรียกภาษานีว้ ่า ตอ่ กนั ให้ทางานอย่าง ใดอย่างหนึง่ เรยี กวา่ โปรแกรม ภาษาระดับต่า (Low- level language) หลกั การเขียนโปรแกรมคอมพิวเตอร์เบ้อื งต้น (30900-0002) | ครปู ิยมาส แกว้ อินตา 3
โปรแกรมภาษา • การเขยี นชดุ คาสง่ั นไี้ มว่ ่าจะเขียนดว้ ยภาษาอะไรจะเรียกว่า โปรแกรมต้นฉบบั (source program) • จากนนั้ เราจะตอ้ งแปลงใหเ้ ปน็ ภาษาเคร่อื งที่คอมพิวเตอรท์ างานได้เรยี กว่า เอ็กซคิ วิ้ โปรแกรม (executable program) โปรแกรมต้นฉบบั โปรแกรมแอสเซมบลี รหัสภาษาเครื่อง ภาษาแอสเซมบลี หลกั การเขยี นโปรแกรมคอมพวิ เตอร์เบ้ืองตน้ (30900-0002) | ครปู ิยมาส แกว้ อนิ ตา 4
โปรแกรมภาษา การแปลคาส่ังทีละคาสั่งให้เครอ่ื งทางานทีละ ก า ร แ ป ล ค า สั่ ง อี ก แ บ บ ห นึ่ ง เ รี ย ก ว่ า คาส่ัง จากนั้นจึงแปลคาส่ังบรรทัดต่อไป ถ้าไม่ คอมไพเลอร์ (Compiler) โดยมันจะมองโปรแกรม พบข้อผดิ พลาดเคร่ืองจาทาคาส่ังที่แปลได้แต่ถา้ ต้นฉบับท้ังหมด และแปลให้เป็นหรัสภาษาเครื่อง พ บ ข้ อ ผิ ด พ ล า ด จ ะ ห ยุ ด ท า ง า น แ ล ะ จ ะ แ จ้ ง ในคราวเดียว แล้วเก็บผลแปลไว้ใช้โดยไม่ต้อง ขอ้ ผิดพลาดออกมา ตัวท่ีแปลภาษาประเภทนี้ แปลใหม่ ทาใหโ้ ปรแกรมทางานไดเ้ รว็ เรยี กวา่ อินเตอร์พรีเตอร์ (Interpreter) หลกั การเขยี นโปรแกรมคอมพวิ เตอรเ์ บอ้ื งต้น (30900-0002) | ครูปิยมาส แก้วอนิ ตา 5
โปรแกรมภาษา โปรแกรมตน้ ฉบบั Interpreter รหัสภาษาเคร่ือง แปลทีละบรรทัด โปรแกรมตน้ ฉบับ Compiler รหัสภาษาเครื่อง แปลทั้งโปรแกรม หลกั การเขียนโปรแกรมคอมพวิ เตอรเ์ บอ้ื งต้น (30900-0002) | ครปู ิยมาส แก้วอนิ ตา
ประเภทของโปรแกรม โปรแกรมระบบปฏบิ ตั ิการ โปรแกรมประเภทนจี้ ะทาหน้าทคี่ อยดแู ลระบบ รวมทัง้ ติดตอ่ กับฮาร์ดแวรส์ ว่ นตา่ ง ๆ เช่น Windows โปรแกรมเอนกประสงค์ โปรแกรมประเภทน้ีจะชว่ ยอานวยความสะดวกใหก้ ับผใู้ ชค้ อมพวิ เตอร์ เชน่ โปรแกรมตรวจสอบ ความเร็วของคอมพวิ เตอร์ โปรแกรมประยุกต์ บางครัง้ เรยี กวา่ โปรแกรมสาเรจ็ รูป และเปน็ โปรแกรมทีพ่ ฒั นาขน้ึ มาสาหรบั งานเฉพาะด้าน เชน่ โปรแกรมกราฟิก หลกั การเขยี นโปรแกรมคอมพวิ เตอร์เบ้ืองต้น (30900-0002) | ครูปิยมาส แกว้ อินตา 7
ขั้นตอนการพัฒนาโปรแกรม 1 กาหนดและวเิ คราะห์ปญั หา (Problem definition and problem analysis) 2 เขยี นผังและซูโดโค้ด (Pseudo coding) 3 เขียนโปรแกรม (Programming) 4 ทดสอบและแก้ไขโปรแกรมม (Program testing and debugging) 5 ทาเอกสารและบารุงรกั ษาโปรแกรม (Program documentation and maintenance) หลกั การเขยี นโปรแกรมคอมพิวเตอร์เบื้องต้น (30900-0002) | ครปู ิยมาส แกว้ อนิ ตา
กาหนดและวิเคราะหป์ ัญหา กาหนดวธิ กี ารประมวลผล กาหนดลักษณะของข้อมลู และออกจากระบบ เป็นขั้นตอนแรกสุดที่นักเขียนโปรแกรม จ ะ ต้ อ ง ท า ห า ก ผู้ ที่ เ ขี ย น โ ป ร แ ก ร ม ไ ม่ กาหนดขอบเขตของปญั หา สามารถทาความเข้าใจกับปัญหาท่ีต้องการ แก้ไขได้ ก็ไม่สามารถนาคอมพิวเตอร์มาใช้ ในการแก้ไขปญั หานั้นได้ หลกั การเขียนโปรแกรมคอมพิวเตอรเ์ บอื้ งต้น (30900-0002) | ครูปิยมาส แก้วอนิ ตา 9
กาหนดและวิเคราะหป์ ัญหา ตวั อย่างที่ 1.1 ถา้ หากตอ้ งการออกแบบโปรแกรมใหค้ อมพิวเตอร์รบั ค่าข้อมูล 3 ค่า และแสดงค่าเฉลีย่ ทาง จอภาพ เราอาจกาหนดและวเิ คราห์ปัญหาได้ดังนี้ 1.รบั ข้อมลู จากคีย์บอร์ด 1.1 รบั ข้อมูลเฉพาะที่เป็นตวั เลขมาเก็บในตวั แปร 1.2 ถา้ ข้อมลู เท่ากับ 0 ให้รับใหม่ 2.หาคา่ เฉลีย่ 2.1 รวมคา่ ทุกค่าที่รบั มาเข้าดว้ ยกนั 2.2 นาค่าผลรวมท่ไี ดห้ ารด้วย 3 2.3 นาคา่ ผลลัพธไ์ ปเกบ็ ในตัวแปร 3.แสดงผลลัพธ์ทางจอภาพ 3.1 แสดงคาวา่ คา่ เฉลีย่ เทา่ กบั 3.2 แสดงผลลัพธโ์ ดยมีทศนยิ มสองตาแหน่ง หลักการเขียนโปรแกรมคอมพิวเตอร์เบือ้ งตน้ (30900-0002) | ครูปิยมาส แกว้ อินตา 10
กาหนดและวเิ คราะหป์ ญั หา เขยี นการทางานของระบบได้ดงั แผนภาพ นาขอ้ มูลเข้า ประมวลผล นาข้อมูลออก รับข้อมลู ตวั ท่ี 1 อา่ นคา่ เฉพาะท่เี ปน็ ตวั เลข 3 ตวั แสดงค่าเฉลย่ี รับขอ้ มลู ตวั ที่ 2 นาตวั เลขทั้งสามมาวางรวมกัน ทศนิยม รบั ขอ้ มลู ตัวที่ 3 สองตาแหน่ง นาผลรวมมาหารดว้ ย 3 หลกั การเขยี นโปรแกรมคอมพิวเตอรเ์ บ้อื งตน้ (30900-0002) | ครปู ิยมาส แกว้ อนิ ตา 11
การเขยี นผงั งานและซูโดโค้ด ชว่ ยใหเ้ ขยี นโปรแกรมและทาใหผ้ อู้ ่ืนนา อลั กอริทมึ นน้ั อาจเขยี นใหอ้ ย่ใู นรูปของ โปรแกรมของเราไปพฒั นาตอ่ ได้ง่ายขึ้นโดย รหัสจาลองหรือซูโดโค้ด (pseudo-code) เขยี นเป็นลาดบั ขน้ั ตอนการทางานของ หรอื เขยี นเป็นผังงาน (flowchart) ก็ได้ โปรแกรมท่เี รียกว่า อลั กอรทิ ึม (Algorithm) ผงั งานจะใชส้ ัญลกั ษณ์ต่าง ๆ แทนการ ซโู ดโค้ดจะเปน็ คาอธิบายขนั้ ตอนการ ทางานและทศิ ทางของโปรแกรม ทางานของโปรแกรม เป็นคาย่อ ไมม่ ี รปู แบบเฉพาะตัว หลักการเขียนโปรแกรมคอมพิวเตอรเ์ บือ้ งต้น (30900-0002) | ครูปิยมาส แกว้ อนิ ตา 12
การเขยี นโปรแกรม • การเขียนโปรแกรมจะตอ้ งเขียนตามทคี่ อมพวิ เตอร์เขา้ ใจโดยอาจใช้ภาษาระดบั สงู หรอื ระดบั ตา่ ซ่งึ สามารถเลือกไดห้ ลายภาษา การทดสอบและแก้ไขโปรแกรม • หาจดุ ผดิ พลาดของโปรแกรมวา่ มหี รือไม่ และตรวจสอบจนไมพ่ บท่ีผิดอกี • จดุ ผดิ พลาดของโปรแกรมนเ้ี รยี กว่าบัก (bug) ส่วนการแกไ้ ขข้อผิดพลาดให้ถูกตอ้ งเรียกวา่ ดบี ัก (debug) • มสี องประเภทคอื 1. การเขยี นคาส่งั ไม่ถูกต้องตามหลักการเขียนโปรแกรมภาษานนั้ ๆ ซ่ึงเรียกวา่ Syntax error หรือ coding error 2. ขอ้ ผดิ พลาดทางตรรก หรือ logic error หลกั การเขยี นโปรแกรมคอมพิวเตอร์เบ้อื งต้น (30900-0002) | ครปู ิยมาส แกว้ อินตา 13
การทาเอกสารและบารุงรักษาโปรแกรม • ขัน้ ตอนนีจ้ ะทาใหผ้ ใู้ ช้สามารถใชง้ านโปรแกรมได้อย่างมปี ระสิทธภิ าพ และสะดวกในการ ตรวจสอบข้อผดิ พลาดโดยเขยี นเปน็ เอกสารประกอบโปรแกรมข้ึนมา • มี 2 ประเภท 1. คมู่ อื การใช้ 2. คู่มอื โปรแกรมเมอร์ หลักการเขยี นโปรแกรมคอมพวิ เตอร์เบ้อื งตน้ (30900-0002) | ครปู ิยมาส แก้วอนิ ตา 14
Thank You for Watching! Any Questions? หลกั การเขยี นโปรแกรมคอมพวิ เตอร์เบือ้ งตน้ (30900-0002) | ครปู ิยมาส แก้วอนิ ตา
Search
Read the Text Version
- 1 - 15
Pages: