การเขียนโปรแกรมคอมพิวเตอร์และอัลกอริธึม บทที่ 1 กระบวนการเขียนโปรแกรม
โปรแกรม(Program) ความหมายคือ กลุ่มคำสั่ง หรือลำดับคำสั่ง ที่สั่งให้คอมพิวเตอร์ทำงานตามความต้องการ Programmer : ผู้ที่ทำหน้าที่ในการกำหนดคำสั่ง System Analyst : ผู้ที่ทำหน้าที่ในการวิเคราะห์ออกแบบระบบ User : ผู้ใช้งานระบบ
กระบวนการเขียนโปรแกรม การกำหนดปัญหา : Problem definition การสร้างอัลกอริธึมและรหัสเทียม : Algorithm and Pseudocode การสร้างผังงานโปรแกรม : Program Flowchart การเขียนโปรแกรม : Source Coding การทดสอบและแก้ไข : Testing and Debugging การจัดทำเอกสารประกอบโปรแกรม : Document
กระบวนการเขียนโปรแกรม กำหนดปัญหา ทำเอกสาร ประกอบ การสร้างอัลกอริธึมและรหัสเทียม การสร้างผังงาน การเขียนโปรแกรม การทดสอบและแก้ไข
กำหนดปัญหา หาความต้องการของโจทย์ เช่น ผลลัพท์ที่ต้องการ ข้อมูลที่ต้องใช้ในการประมวลผล วิธีการที่ต้องทำ
สร้างอัลกอริธึม ลำดับขั้นตอนการทำงานอย่างละเอียด ตั้งแต่เริ่มจะได้ผลลัพท์ที่ต้องการ โดยควรคำนึงว่า คอมพิวเตอร์จะทำงานตามคำสั่งทีละคำสั่งตามลำดับ คอมพิวเตอร์จะเปรียบเทียบค่าได้ทีละ 2 ค่า อัลกอริธึมที่ดี ใช้ข้อความสั้น ได้ใจความ ใช้ภาษาเข้าใจง่าย มี 1คำสั่งต่อ 1 ขั้นตอน ใช้ภาษาที่ตีความได้ความหมายเดียว สามารถนำไปเขียน Pseudocode ได้
Pseudocode ลำดับขั้นตอนที่เขียนย่อๆ ด้วยคำภาษาอังกฤษ หรือภาษาคอมพิวเตอร์ โดยไม่คำนึงถึงความถูกต้อง ตามหลักไวยกรณ์ของภาษานั้น
การสร้างผังงานโปรแกรม นำอัลกอริธึมหรือรหัสเทียมมาเขียนใหม่ โดยใช้สัญลักษณ์สากล ผังงานจะบอกลำดับการทำงานและการเชื่อมโยงคำสั่ง
การเขียนโปรแกรม นำผังงานที่เขียน(flow chart) มาเขียนด้วยภาษาคอมพิวเตอร์ภาษาใดภาษาหนึ่ง เขียนโดยยึดหลักความถูกต้องตามหลักไวยกรณ์ของภาษา ภาษาที่เขียนเราเรียกว่า Source Code ซึ่งเมื่อทำการแปลแล้วจะได้ Object Code Source Code Translation Object Code
การทดสอบและแก้ไข ทดสอบการทำงานของโปรแกรมด้วยข้อมูลตัวอย่าง เก็บรวบรวมข้อผิดพลาด เพื่อนำไปแก้ไขจนกว่าจะได้คำตอบที่ถูกต้อง 100%
จัดทำเอกสาร ประกอบด้วย วัตถุประสงค์ของโปรแกรม การแก้ปัญหาของโปรแกรม ข้อมูลที่ต้องนำเข้า รูปแบบผลลัพท์ที่แสดงผล การเขียนอาจแทรกไว้ในตัวโปรแกรมด้วย
องค์ประกอบของงาน Input : การรับข้อมูลเข้า เพื่อนำไปประมวลผลต่อ Decision : การตัดสินใจเลือกกระทำอย่างใดอย่างหนึ่ง จากเงื่อนไขที่มีอยู่ Process : ขั้นตอนในการประมวลผล หรือการกระทำต่อข้อมูลเพื่อให้ได้คำตอบที่ต้องการ อันหมายถึง + - * / เป็นต้น Output : คือขั้นตอนในการแสดงผลลัพท์ การกำหนดรูปแบบผลลัพท์ซึ่งอาจเป็นจอภาพ หรือ เครื่องพิมพ์
ลักษณะองค์ประกอบของงาน บางงาน อาจมีไม่ครบทุกองค์ประกอบก็ได้ เช่นอาจมีแค่ input - process - output เป็นต้น งานไม่จำเป็นต้องเรียงลำดับแบบเดิมทุกครั้งไป การทำงานจริงอาจเริ่มที่ output ก่อนก็ได้แล้วค่อย input ก็ได้
Quiz ?