TU156: Introduction to Computers and Programming

Announcements

Course Information

Description: Basic concepts of computer systems, electronic data processing and concepts, system and application software, algorithms, flowcharts, data representation, program design and development methodology, problem solving using high-level language programming.

Course staff and contact information:

Instructor: Dr. Songyot Nakariyakul
E-mail: nsongyot@engr.tu.ac.th
Office: Room 420-2 Research Building
Office Hours: By appointment

Pre-requisites: None.

Problem sets: You are encouraged to do problem sets to reinforce what you learn in lecture, but they will not be graded.

Grading:

Class attendance 10%
Lab test 10%
Midterm 35%
Final 45%

Evaluation:

Software: We will use Code:Blocks (download) to write C programs.

Textbooks & Materials:

  1. คู่มือการเขียนโปรแกรมภาษา C ฉบับสมบูรณ์ โดย รศ. ธีรวัฒน์ ประกอบผล
  2. การเขียนโปรแกรมด้วยภาษา C โดย อ. โอภาส เอี่ยมสิริวงศ์
  3. H. M. Deitel and P. J. Deitel, “C How to Program” 5th edition, Prentice Hall, 2007

Handouts

  Topic Lecture Notes Problem Set Solution
  Course outline pdf
1 Computer overview, hardware & software slides    
2 Number systems slides    
3 Data representation slides    
4 Programming development environment slides    
5 Introduction to C programming slides    
6 C Data types and operators slides    
7 C Formatted I/O slides PS1 Sol1
8 Structured program development in C, algorithm, pseudocode, flowchart slides    
9 C Program control – condition slides PS2 Sol2
10 C Program control – repetition slides PS3 Sol3
11 C Functions slides PS4 Sol4
12 C Arrays part_1
part_2
part_3
PS5 Sol5
13 C Characters and strings slides