Teaching -> Introduction to Computer Programming in C++
Duration: Approximately 30 lecture hours, 30 practical hours and 15 tutorial hours
Prerequisites: None
Course contents:
- Introduction to general computer organization - Input/output devices, CPU, RAM, Cache, Auxiliary or Secondary storage, ROM, Bus, IDE, Data storage and representation, Bits, Byte, Binary and decimal numbers.
- Introduction to computer programming - What is a computer program, Source code, Object code, Machine languages, Assembly languages, High-level languages Compiling and running a program, Types of programming errors, Test data, Debugging a program, Programming style standards in C++.
- Introduction to C++ - C++ character set, Key words, Identifiers, Statements, Variables and declaration statements, Assignment statements, Expressions, Comments, C++ Preprocessor, C++ output and input statements, ASCII character set, Escape sequence, Manipulators, Formatting with 'cout'.
- Built-in data types - Integer types, floating-point data types, Type conversion, Casting.
- Operators - Arithmetic operators, Relational operators, Logical/Boolean operators, Assignment operators.
- Control statements - Bi-directional control (if-else), Multi-directional conditional control(switch), loop controls (for, while, do-while loops). Break and continue statements.
- Arrays and Strings - Array declaration, Array initialization, Accessing array elements, Two-dimensional arrays, Strings, String functions.
- Functions and Function Arguments - Advantages of functions, Classification of functions, Built-in functions, User-defined functions, Defining functions, Functions prototype, Calling the function, Function arguments and passing by value, Reference variables, Passing by reference, Functions and arrays, Functions and strings, Default arguments, Function overloading.
- Structures and Enumerated data types - What is a structure, General form of a structure template, Declaring structure variables, Accessing structure members, Functions and structures, Defining enumerated data types and their use.
- Pointers - What is a pointer, Address operator, Dereferencing operator, Declaring pointer type variables, Dynamic allocation operators.
- File handling in C++ - Introduction, ifstream and ofstream
Objectives:
- To provide a classroom and laboratory environment that enables the students to be proficient in programming in C++ and programming methodologies.
Learning outcomes:
- Describe major components of a modern computer and their functionality.
- Define the number systems and express one number system in another system.
- Explain how to represent data in a digital computer.
- Describe the history of programming languages.
- Describe the fundamental elements of C++.
- Illustrate and apply features supported by C++ for programming.
- Analyse problems and design procedure-oriented programs for them.
- Compile and run a program.
- Design and create test data to check a program.
- Identify various types of errors and correct them.
Method of assessments:
- Semester Terminal Written Examination - 50%
- Semester Terminal Practical Examination - 30%
- Continuous assessments - 20%
Attendance:
- Only those who satisfy the requirement of attendance (at least 80%) at lectures are allowed to sit the end of semester examination.
- Students who misbehave in the class will be asked to leave the class. If a student is asked to leave a lecture, this will count as an absence.
Recommended reading:
- Stephen Prata. C++ Primer Plus. Galgotia Publication (Pvt) Ltd.
- Satish Jain. Computer Fundamentals and C++ Programming. BPG Publications
- E. Balagurusami. Object-Oriented Programming with C++. BPG Publications