EGCI113 - Fundamental Computer Programming

1. Program of Study

   Bachelor of Engineering Program in Computer Engineering (International Program), Faculty of Engineering, Mahidol University


2. Course Code

   EGCI113 Fundamental Computer Programming


3. Number of Credits

   3 (2-2-5) Credits (Lecture-Lab-Self Learning)


4. Prerequisites

   Consent of Instructor


5. Type of Course

   Major Course (Required Major)


6. Trimester / Academic year 

   2/2022-2023


7. Course Conditions

   Class size will be in the range of 25-30 students


8. Course Description

   Introduction to computer concepts, computer components, hardware and software, hardware and software interaction, and Electronic Data Processing (EDP) concepts. Introduction to program design and implementation using a high-level language: types and expressions, iterative and conditional control statements, functions, Boolean logic, array


9. Course Objectives

   After successful completion of this course, students will be able to

   1. Write program to solve basic programming problems

   2. Understand and solve problems occurred in computer programs

   3. Apply computer programming knowledge to develop elementary level of engineering problems under specific scope and objective


10. Course Outline

   Week 1 Basic Computer Structure, Basic Computer Programming

   Week 2 Basic C Programming  

   Week 3 Basic C Programming 

   Week 4 Logic and Condition, Switch-Case

   Week 5 Loop and Repetition 

   Week 6 Loop and Repetition, Lab Exam I

   Week 7 Nested Loop 

   Week 8 Function 

   Week 9 Function, Array

   Week 10 Array 

   Week 11 String

   Week 12 Lab Exam II, Project Presentation

   Week 13 Final Exam


11. Teaching Methods

   Lecture, guided practice, group project


12. Teaching Media

   Lecture/lab handouts, computer programs, online quizzes, Project Presentation


13. Measurement and Evaluation of Student Achievement

   Student’s achievement will be evaluated according to the faculty and university standard, using the symbols: A, B, B+, C, C+, C, D+, D and F.

   Weight:

   1. Exams (written) 25 %

   2. Participation (attendance, quiz) 15 %

   3. Assignment 20 %

   4. Group Project 20 %

   5. Lab Exam 20 %

   Total           100 %


14. References

   1. Oualline, Steve. Practical C Programming. O’Reilly, 1993. 

   2. Kernighan, Brian W., Ritchie Dennis M., The C Programming Language. 2nd ed. Prentice Hall, 1988. 

   3. Deitel HM, Deitel PJ. C: how to program. 5th ed. Upper Saddle River (NJ): Prentice Hall, 2006. 

   4. Hanly JR, Koffman EB. Problem solving and program design in C. 6th ed. Boston (MA): Addison-Wesley, 2009.


15. Recommended textbooks and/or other documents/materials

   - https://www.cprogramming.com/

   - https://www.onlinegdb.com

   - https://www.geeksforgeeks.org/c-programming-language/ 


16. Instructors

   Asst. Prof. Dr. Tanasanee Phienthrakul

   Room: 6257, Building 3 (Red Building)

   Department of Computer Engineering, 

   Faculty of Engineering, Mahidol University


17. Course Material:

   https://classroom.google.com

   Class code: lkh54go

   ** Use mahidol.edu account