การโปรแกรมคอมพิวเตอร์
การโปรแกรมคอมพิวเตอร์
แผนการสอน (PDF)
จุดประสงค์ของวิชา
วิชานี้มุ่งให้นิสิตได้รับความรู้และมีทักษะทางการเขียนโปรแกรมเบื้องต้น อันจะเป็นพื้นฐานในการประกอบอาชีพและการศึกษาวิทยาการคอมพิวเตอร์ต่อไป
ผลลัพธ์การเรียนรู้ของรายวิชา (Course Learning Outcomes: CLO)
สามารถอธิบายและใช้โครงสร้างพื้นฐานของภาษาในการโปรแกรมได้
สามารถกำหนดขั้นตอนและแบ่งการทำงานเป็นฟังก์ชันหรือโมดูลย่อยได้
สามารถพัฒนาและทดสอบโปรแกรมที่ใช้แนวทางการโปรแกรมเชิงวัตถุได้
การเชื่อมโยง CLO กับ PLO
CLO 1: สามารถอธิบายและใช้โครงสร้างพื้นฐานของภาษาในการโปรแกรมได้
Sub PLO 2.1: มีความรู้ ความเข้าใจคณิตศาสตร์ คณิตศาสตร์ประยุกต์ และสามารถนำมาประยุกต์กับการประมวลผลข้อมูลด้านวิทยาศาสตร์และสังคมศาสตร์
CLO 2: สามารถกำหนดขั้นตอนและแบ่งการทำงานเป็นฟังก์ชันหรือโมดูลย่อยได้
Sub PLO 3.1: วิเคราะห์ปัญหาที่จะต้องแก้ไขด้วยเทคโนโลยีดิจิทัล แยกแยะปัญหาออกเป็นองค์ประกอบย่อย และสร้างตัวแบบเพื่อนำเสนอปัญหา และองค์ประกอบย่อยของปัญหา
Sub PLO 3.2: ประเมินกระบวนการในการแก้ปัญหา ด้วยหลักการทางวิทยาการคอมพิวเตอร์และศาสตร์ที่เกี่ยวข้อง เพื่อเลือกวิธีในการแก้ปัญหาที่เหมาะสมที่สุด
Sub PLO 3.3: พัฒนาซอฟต์แวร์และบูรณาการเทคโนโลยีเพื่อใช้ในการปัญหา
CLO 3: สามารถพัฒนาและทดสอบโปรแกรมที่ใช้แนวทางการโปรแกรมเชิงวัตถุได้
Sub PLO 3.1: วิเคราะห์ปัญหาที่จะต้องแก้ไขด้วยเทคโนโลยีดิจิทัล แยกแยะปัญหาออกเป็นองค์ประกอบย่อย และสร้างตัวแบบเพื่อนำเสนอปัญหา และองค์ประกอบย่อยของปัญหา
Sub PLO 3.2: ประเมินกระบวนการในการแก้ปัญหา ด้วยหลักการทางวิทยาการคอมพิวเตอร์และศาสตร์ที่เกี่ยวข้อง เพื่อเลือกวิธีในการแก้ปัญหาที่เหมาะสมที่สุด
Sub PLO 3.3: พัฒนาซอฟต์แวร์และบูรณาการเทคโนโลยีเพื่อใช้ในการปัญหา
เวลาและสถานที่
หมู่บรรยาย
หมู่บรรยาย 1 วันอังคาร เวลา 14.00 - 16.00 น. ห้องบรรยาย SC45-709
หมู่บรรยาย 200 วันอังคาร เวลา 11.30 - 13.30 น. ห้องบรรยาย SC45-709
หมู่ปฏิบัติการ ( เริ่มเรียนตั้งแต่สัปดาห์แรก )
หมู่ปฏิบัติการ 11 วันศุกร์ เวลา 13.00 - 15.00 น. ห้องปฏิบัติการ SCL 370
หมู่ปฏิบัติการ 12 วันศุกร์ เวลา 13.00 - 15.00 น. ห้องปฏิบัติการ SCL 350
หมู่ปฏิบัติการ 200 วันจันทร์ เวลา 13.00 - 15.00 น. ห้องปฏิบัติการ SCL 350
หมู่ปฏิบัติการ 201 วันจันทร์ เวลา 13.00 - 15.00 น. ห้องปฏิบัติการ SCL 370
ผู้สอนบรรยาย
อ.ชาคริต วัชโรภาส
อีเมล chakrit.w at ku.th ห้องพัก SC45-874 เวลาเข้าพบ นัดหมายล่วงหน้า
อ.ธนบูรณ์ ทองบัวศิริไล
อีเมล tanaboon.to at ku.th ห้องพัก SC45-783 เวลาเข้าพบ นัดหมายล่วงหน้า
ผู้สอนปฏิบัติการ
อ.ศรชัย ลักษณะปีติ
อีเมล sornchai.la at ku.th ห้องพัก SC45-722 เวลาเข้าพบ จ.-ศ. นอกเวลาปฏิบัติการ
อ.สุทธิพงษ์ หมื่นตาบุตร
อีเมล suttipong.me at ku.th ห้องพัก SC45-722 เวลาเข้าพบ จ.-ศ. นอกเวลาปฏิบัติการ
การประเมินผลการเรียน
หากนิสิตได้คะแนนรวมทั้งหมดตั้งแต่ 90% ขึ้นไป นิสิตจะได้เกรด A โดยอัตโนมัติ
หากนิสิตได้คะแนนสอบรวม (คะแนนสอบข้อเขียนและสอบปฏิบัติการ) น้อยกว่า 30% นิสิตจะได้เกรด F
หากนิสิตได้คะแนนรวมทั้งหมดน้อยกว่า 45% นิสิตจะได้เกรด F
นิสิตที่ไม่เข้าข่ายเงื่อนไข 1 – 3 นิสิตจะได้รับการวัดผลและตัดเกรด A ถึง D แบบอิงกลุ่ม โดยคิดจากคะแนนทั้งหมด
การส่งงานการบ้านและงานปฏิบัติการต้องส่งให้ตรงเวลา โดยจะไม่รับงานที่ส่งช้าไม่ว่าเหตุผลใด ๆ
การมีสิทธิ์เข้าสอบปลายภาค ทั้งกรณีสอบข้อเขียนและสอบปฏิบัติ นิสิตจะต้องเข้าเรียนในคาบบรรยายไม่น้อยกว่า 80% ของจำนวนครั้งบรรยายทั้งหมด นิสิตจึงจะมีสิทธิ์เข้าสอบข้อเขียนปลายภาค และนิสิตจะต้องเข้าเรียนในคาบปฏิบัติการไม่น้อยกว่า 80% ของจำนวนครั้งปฏิบัติการทั้งหมด นิสิตจึงจะมีสิทธิ์เข้าสอบปฏิบัติปลายภาค
เอกสารและสื่อประกอบการเรียน
C How to program with an introduction to C++ โดย Paul Deitel และ Harvey Deitel
ดูรายละเอียดเพิ่มเติมได้ที่ https://deitel.com/c-plus-plus-how-to-program-10-e
หนังสือและสื่อการสอนออนไลน์เพิ่มเติม
The C Programming Language, 2nd Edition โดย Brian W. Kernighan และ Dennis M. Ritchie
วิกิออนไลน์ C Programming: A comprehensive look at the C programming language and its features
เข้าถึงได้จาก https://en.wikibooks.org/wiki/C_Programming
An Introductory Tutorial for Modern C++
เข้าถึงได้จาก https://learnmoderncpp.com/
Modern C++ Tutorial
เข้าถึงได้จาก https://github.com/changkun/modern-cpp-tutorial