CS2363 Computer Programming

Course Duration:  One semester

Credit Units:  3

Level:  B2

Medium of Instruction: English

Prerequisites: Nil

Precursors: Nil

Equivalent Courses:
CS2360 Java Programming
CS2362 Computer Programming for Engineers and Scientists

Exclusive Courses:
CS2360 Java Programming
CS2362 Computer Programming for Engineers and Scientists

Course Aims:
This course aims to introduce the concepts and techniques of problem solving, using a high-level programming language as a tool.  The main objective is to equip students with basic techniques in problem solving and concepts in computer programming; and to develop their practical skills in solving problems with computer programs.

Course Intended Learning Outcomes (CILOs):
(state what the student is expected to be able to do at the end of the course according to a given standard of performance)

Upon successful completion of this course, students should be able to:


No.

CILOs

Weighting (if applicable)

1.

analyze simple problems and design algorithms for their solutions;

 

2.

implement algorithms as computer programs using a high-level programming language;

 

3.

analyze simple computer programs in a high-level programming language;

 

4.

practise good programming discipline.

 

Teaching and Learning Activities (TLAs):
(designed to facilitate students’achievement of the CILOs)


Teaching pattern:

Suggested lecture/tutorial/laboratory mix: 
2 hrs. lecture; 1 hr. tutorial 

ILO No

TLAs

Hours/week (if applicable)

CILO 1
CILO 2
CILO 3
CILO 4

Tutorial Exercises – Tutorials will be scheduled in “Terminal rooms”.  They are designed to enable students to put theory into practice and be proficient in a high-level programming language.  The tutorial exercises consist of programming problems.  Students are required to create computer programs using a program development tool that supports a high-level programming language (such C).  This course activity supports Course ILO #1, 2 and 4; and to a lesser extent, ILO #3.

 

 

Assignments – Assignments are intended to be more challenging problems compared with tutorial exercises.  Students are to analyze the problems, break them down into manageable sub-problems, and apply (and possibly combine) various techniques learnt from lectures and tutorial exercises in order to design algorithms for solving them.  Then they are required to implement the algorithms as computer programs, and to explain their ideas/algorithms using suitable presentation methods (e.g., a report, flowchart, etc).  This course activity supports Course ILO #1, 2 and 4; and to a lesser extent, ILO #3.

 

 

Quizzes – The quizzes give a chance for students to reflect on their understanding on various programming concepts and problem solving techniques.  They are required to design and implement programs to solve problems; and to predict and explain behaviour of programs involving various programming concepts and techniques. This course activity supports Course ILO #1, 2 and 3.

 

 

 

Assessment Tasks/Activities:
(designed to assess how well the students achieve the CILOs) 

ILO No

Type of assessment tasks/activities

Weighting

(if applicable)

Remarks

CILO 1

 

 

 

 

analyze simple problems and design algorithms for their solutions;
Coursework: Students are required to analyze problems in the assignments and design and create workable computer programs for their solutions.  Both the program correctness and the explanation of their programs/ideas will be a measure for this ILO.
Exam: Final exam will include questions to assess the students’ ability to analyze simple problems and devise computer programs (or program fragments) for their solutions.  The logic used in the program will be a measure for this ILO.

 

 

CILO 2

implement algorithms as computer programs using a high-level programming language;
Coursework: Students are required to create computer programs to solve problems in the tutorial exercises and assignments.  Their ability to produce workable programs will be an indication of their achievement in this ILO.
Exam: Students’ achievement in this ILO can be assessed by their use of appropriate programming constructs and correct syntax of a high-level programming language when answering the questions.

 

 

CILO 3

analyze simple computer programs in a high-level programming language;
Coursework: When tackling the tutorial exercises and assignments, the students will need to understand and analyze their own computer programs.
Exam: Final exam will also include questions to assess the students’ ability to analyze simple computer programs.

 

 

CILO 4

practise good programming discipline.
Coursework: The structure and readability of the students’ computer programs and their reports (for assignments) will be an indication of whether they practise good programming discipline.

 

 

Grading of Student Achievement:
Refer to Grading of Courses in the Academic Regulations (Attachment) and to the Explanatory Notes.

Examination duration: 2 hours
Coursework: 30%
Examination: 70%
Grading pattern: Standard (A+AA-…F)
For a student to pass the course, at least 30% of the maximum mark for the examination must be obtained.

Keyword Syllabus:

Problem solving and algorithm development.  Iteration and Recursion.  The software development process and development environment.  Programming in a high-level procedural language (such as C): basic data types and structures; control structures; functions and procedures; pointers; input and output.  Basic file processing concepts and techniques.  Elements of programming style.

Related Links
Department of Computer Science