True wisdom comes to each of us when we realize how little we understand about life, ourselves, and the world around us - Socrates

Introduction to Computer Programming in C++

Teaching -> Introduction to Computer Programming in C++

Duration: Approximately 30 lecture hours, 30 practical hours and 15 tutorial hours

Prerequisites: None

Course contents:
  1. 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.
  2. 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++.
  3. 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'.
  4. Built-in data types - Integer types, floating-point data types, Type conversion, Casting.
  5. Operators - Arithmetic operators, Relational operators, Logical/Boolean operators, Assignment operators.
  6. Control statements - Bi-directional control (if-else), Multi-directional conditional control(switch), loop controls (for, while, do-while loops). Break and continue statements.
  7. Arrays and Strings - Array declaration, Array initialization, Accessing array elements, Two-dimensional arrays, Strings, String functions.
  8. 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.
  9. 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.
  10. Pointers - What is a pointer, Address operator, Dereferencing operator, Declaring pointer type variables, Dynamic allocation operators.
  11. 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