CO1011
CO1011
CO1011
1. Aims
This course is a comprehensive introductory course that is intended for students who have no
background in computer programming. This course provides basic knowledge and skills on
programming with two important programming paradigms: structured programming and object-
oriented programming.
2. Course Outline
3. Studying Materials
1/8
Textbook:
[1] C++ How to Program – H. M Deitel and P. J. Deitel, 8th Edition, Prentice-Hall, 2012.
Sách tham khảo:
[1] Giáo trình ngôn ngữ lập trình C/C++ - Nguyen Ngoc Cuong, Nhà xuất bản thông tin và
truyền thông, 2011.
[2] The C Book - Mike Banahan, Declan Brady and Mark Doran - online version (originally
published by Addison Wesley in 1991)
[3] Program Development and Design Using C++, 3nd Edition - G. J. Bronson, Brooks/COLE
Thomson Learning, 2006.
[4] C++ Programming Fundamentals – Chuck Easttom, Charles River Media, 2003.
[5] Object-Oriented Programming Using C++- J. Farrel, 2nd Edition, Course
Technology/Thomson Learning, 2001.
[6] Microsoft Visual C++ 6.0 - D. Gosselin, Course Technology/Thomson Learning, 2001.
[7] Programming Fundamentals in C++ - Duong Tuan Anh, Open courseware, Available at:
http://www.vocw.edu.vn/content/col10216/latest/
[8] Fundamentals of C++ Programming – Richard L.Halterman, Southern Adventist University
2010.
2/6
5. Guidelines for studying and assessment
Guidelines:
Studying materials, including this course syllabus, slides, tutorials, labs, and assignments,
are stored in lecture management system (LMS) of faculty of Computer Science and
Engineering. Students need to download and prepare paper-based version by themselves.
Students needs to solve exercises and labs at home. Students should utilize LMS (mentioned
above) often for getting announcement, getting conversions between other students and
instructors, and posting their own questions.
Student attends lectures, tutorials and labs completely; this way helps them obtains
complelete knowledge, skill, and attitude. This way also helps students saving time to
prepare understanding for mid and final exam.
For tutorials and labs, students attends completely and submits their report by the end of
each tutorial/lab.
Grading:
Labs (20%):
Assignment (30%):
Final Exam (50%)
6. Instructors
7. Course Detail
Detail content for lectures
Wee Content CLO Activity Assessment
k
1 Chapter 1. Introduction to L.O.1.1 Instructor: - Scoring
computer L.O.1.2 - Give lectures Group's
L.O.6.1 - Solve sample Exercises
1.1. Hardware and Software
exercises
1.2. Programming Language L.O.6.3
- Create working
L.O.6.2 groups
1.3. Problem solving and software
development L.O.6.4
1.4. Algorithm
1.5. Exercises
Self-Studying: 8 hours
2 Chapter 2. Basic components in L.O.5.1
C++ L.O.5.2
2.1. Program structure
2.2. Data types, Operators, and
Expressions
2.3. Variables and Declaration
2.4. Integers
3/6
Wee Content CLO Activity Assessment
k
2.5. Problem solving: examples
2.6. Exercises
Self-Studying: 8 hours
3, 4 Chapter 3. Other Components of
C++
3.1. Assignments
3.2. Formating output
3.3. Using labraries
3.4. Getting values from Keyboard
3.5. Constants
3.6. Exercises
Self-Studying: 16 hours
5 Chapter 4. Selection structure L.O.2.1
L.O.3.1
4.1. Statement if-else
4.2. Nested if
4.3. Statement switch
4.4. Enum data types
4.5. Exercises
Self-Studying: 8 hours
6, 7 Chapter 5. Iteration and Array L.O.2.2
L.O.3.2
5.1. Statement while
L.O.3.4
5.2. While in interaction L.O.6.2
5.3. Statement for
5.4. Nested loops
5.5. Statement do-while
5.6. Structure programming
5.7. Data type: Array
5.8. Data type: Struct
5.9. Exercises
Self-Studying: 16 hours
8, 9 Mid-term exam
10, Chapter 6. Function and pointer L.O.2.3
11, L.O.3.3
6.1. Example: NAND và NOR
12 L.O.3.4
6.2. Function and Parameters
6.3. Function and Return value
6.4. Scope
6.5. Storage
6.6. Passing by values and references
6.7. Recursion
6.8. Passing array to functions
6.9. Pointer
6.10. Exercises
Self-Studying: 16 hours
13, Chapter 7. Introduction to class L.O.4.1
14, L.O.4.2
7.1. Class
15
7.2. Enscapsulation
7.3. Member methods
7.4. Dynamic allocation with new and
delete.
7.5. Pointers as member variables
4/6
Wee Content CLO Activity Assessment
k
7.6. Constructor
7.7. Destructor
7.8. Constant instance
7.9. Inheritance
7.10. Exercises
Self-Studying: 16 hours
16 Review
** Mid-term exam focuses on:
Chapter 1 – 5
Preparation time: 12 hours
** Final exam focuses on:
Remaining Chapters
Preparation time: 16 hours
5/6
Wee Content CLO Activities Assessment
k
6 LAB 6 L.O.3.3
6.1. Use functions
6.2. Use recursion
Self-Studying: 4 hours
7 LAB 7 L.O.3.4
7.1. Use pointer
7.2. Use Dynamic allocation
Self-Studying: 4 hours
8 Lab 8 L.O.4.1
L.O.4.2
8.1. Define and use classes
8.2. Add inhertitance to classess
Self-Studying: 4 hours
Review
8. Contact information
Faculty, Dept. Dept. of Computer Science, Faculty of Computer Science and Engineering
Office A3 block, 268 Ly Thuong Kiet Street, District 10, HCM City, Vietnam
Tel. (+84 8) 38647256 – Ext: 5839
Coordinator Dr. LE Thanh Sach
Email LTSACH@hcmut.edu.vn
6/6