Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

CO1011

Download as pdf or txt
Download as pdf or txt
You are on page 1of 6

Đại Học Quốc Gia TP.

HCM Vietnam National University – HCMC


Trường Đại Học Bách Khoa Ho Chi Minh City University of Technology
Khoa KH&KT Máy Tính Faculty of Computer Science and Engineering

Đề cương môn học


Course Syllabus

Kỹ thuật lập trình


Programming Fundamentals

Credits 4 (3.2.7) Course Code CO1011


Periods Total: Lecture: Tutorial: Lab: Assignment:
75 45 30 Yes

Grading Tutorial: Lab: Mid-Term: Assignment: Final Exam:


20% 30% 50%
Grading Policy - Lab: students have to submit Lab's solution at the end of each lab
session; students also takes two tests for lab, one in the middle and one
at the end.
- Final Exam: Test and Writing, in 90 minutes
Prerequisite Course None
Previous Course None
Parallel Course None
Curriculum Computer Science and Computer Engineering
Degree Undergraduate
Level This course is for 1st year students in Computer Science and Computer
Engineering
Note

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

 Basic C++ programming language


 Structure programming: sequential structure, selection structure, repetition structure
 Functional and recursive programming,
 Introduction to OOP

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.

4. Knowledge, Skill and Attitude required by this course

STT Course learning outcomes CDIO


L.O.1 Express an algorithm for solving problem 4.1
L.O.1.1 – Draw flowchart 4.1.2
L.O.1.2 – Write pseudocode 4.1.2
L.O.2 Use structures of structural programming 4.2
L.O.2.1 – Selection structure 4.2.2
L.O.2.2 – Repetition structure 4.2.2
L.O.2.3 – Function and concept of recursion 4.2.2
L.O.3 Implement a given algorithm by a C++ program 4.4
L.O.3.1 - Branch structure: if-else, switch-case 4.4.2
L.O.3.2 - Loop structure: for, while, do-while 4.4.2
L.O.3.3 – Function and recursion 4.4.2
L.O.3.4 – Array, string, structured types 4.4.2
L.O.3.5 – Pointer 4.4.2
L.O.4 Basic object-oriented concepts 4.4
L.O.4.1 – Understanding of basic object-oriented concepts 4.4.1
L.O.4.2 – Understanding of the issues involved in effective class design 4.4.1
L.O.5 Coding syle 4.6
L.O.5.1 – Write comments 4.6.4
L.O.5.2 – Use of tabulation 4.6.4
L.O.6 Problem-solving process 4.1
L.O.6.1 – Know the concept and properties of algorithm 4.1.1
L.O.6.2 – Define the role of algorithm in the problem-solving process 4.1.1
L.O.6.3 – Identify problem-solving strategies 4.1.1
L.O.6.4 – Describe fundamental design concepts and principles 4.1.1

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

 Dr. LE Thanh Sach


 Dr. NGUYEN Duc Dung
 Dr. HUYNH Tuong Nguyen
 Dr. NGUYEN Hua Phung
 Msc. TRAN Giang Son

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

Detail content for Labs


Wee Content CLO Activities Assessment
k

1 LAB 1 L.O.1.1  TA: Assess students


L.O.1.2 - Give detail on attitudes
1.1. Draw flowchart to solve
guidelines for sample during tutorial
problems
sessions
1.2. Develop algorithms using exercises
(attendance,
Pseudocode - Analyse and correct time-constraint,
Self-Studying: 4 hours students' solutions class activeness,
2 L.O.5.1 and share common coding style, etc),
LAB 2 and quality of
L.O.5.2 mistakes or good
2.1. Introduce to Integrated practices. solution submited
Development Environment (IDE) to TA.
2.2. Install and create sample code  Student:
2.3. Introduce to style guidelines - Solve exercises in
Self-Studying: 4 hours advance at home,
3 L.O.2.1 bring source code (in
LAB 3 USB) to LAB
L.O.3.1
3.1. Use selection structure sessions, getting
3.2. Illustrate selection structure with exercises from LMS.
flowchart - Solve exercises on
3.3. Develop simple program using classroom's black
selection structure using C++ board when required.
- Submit solutions at
Self-Studying: 4 hours the end of LAB
4 LAB 4 L.O.2.2 sessions.
L.O.3.2
4.1. Use iteration structure
4.2. Illustrate iteration structure with
flowchart
4.3. Develop simple program using
iteration structure using C++
Self-Studying: 4 hours
5 LAB 5 L.O.3.4
5.1. Use array data type
5.2. Use string (array of characters
and string
5.3. Use struct data type
Self-Studying: 4 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

Ho Chi Minh City, Day 25 Month 04 Year 2016

Dean Head Coordinator

LÊ THÀNH SÁCH LÊ THÀNH SÁCH

6/6

You might also like