CSE 109 - Computer Programming

CSE 109 - Computer Programming

Section A: General Information

  • Course Title: Computer Programming

  • Type of Course: Compulsory, Theory, Non-departmental

  • Offered to: EEE

  • Pre-requisite Course(s): None

Section B: Course Details

Course Content (As approved by the Academic Council)

Introduction to digital computers. Programming languages, algorithms and flow charts. Structured Programming using C: Variables and constants, operators, expressions, control statements, functions, arrays, pointers, structure unions, user defined data types, input-output and files. Object-oriented Programming (OOP) using C++: introduction, classes and objects; polymorphism; function and operator overloading; inheritance;

Course Objectives

The students are expected to:

Know and comprehend the concepts of structural programming language and object oriented programming language.

Interpret, analyse and evaluate code written in C/C++.

Design and construct suitable C/C++ programs, within the boundaries of the ethical and societal obligations of engineers, to solve practical problems.

Knowledge required

Technical

Introductory knowledge on Computers is required. Knowledge on any high-level programming language such as python may be an added advantage for the learners.

Analytical

Problem formulation and solving

Course Outcomes

CO No.

CO Statement

After undergoing this course, students should be able to:

Corresponding PO(s)* Domains and Taxonomy level(s)** Delivery Method(s) and Activity(-ies) Assessment Tool(s)
1 Know and comprehend the concepts of structural programming language and object-oriented programming language. - C2 Lecture, Demonstration, and hands-on Class Tests and Assignments, Assignments in CSE 110, and Final Exam
2 Interpret, analyse and evaluate code written in C/C++. - C5, A5 Lecture, Demonstration, and hands-on Class Tests and Assignments, Assignments in CSE 110, and Final Exam
3 Design and construct suitable C/C++ programs, within the boundaries of the ethical and societal obligations of engineers, to solve practical problems - C6, A5 Lecture, Demonstration, and hands-on Class Tests and Assignments, Assignments in CSE 110, and Final Exam

Cognitive Domain Taxonomy Levels: C1 – Knowledge, C2 – Comprehension, C3 – Application, C4 – Analysis, C5 – Synthesis, C6 – Evaluation, Affective Domain Taxonomy Levels: A1: Receive; A2: Respond; A3: Value (demonstrate); A4: Organize; A5: Characterize; Psychomotor Domain Taxonomy Levels: P1: Perception; P2: Set; P3: Guided Response; P4: Mechanism; P5: Complex Overt Response; P6: Adaptation; P7: Organization

Program Outcomes (PO): PO(a) Engineering Knowledge, PO(b) Problem Analysis, PO(c) Design/development Solution, PO(d) Investigation,
PO(e) Modern tool usage, PO(f) The Engineer and Society, PO(g) Environment and sustainability, PO(h) Ethics, PO(i) Individual work and team work,
PO(j). Communication, PO(k) Project management and finance, PO(l) Life-long Learning

* For details of program outcome (PO) statements, please see the departmental website or course curriculum

Mapping of Knowledge Profile, Complex Engineering Problem Solving and Complex Engineering Activities

COs K1 K2 K3 K4 K5 K6 K7 K8 P1 P2 P3 P4 P5 P6 P7 A1 A2 A3 A4 A5
CO1
CO2
CO3

Lecture Plan

Week Topic
1 Introductory discussion, Motivation behind Programming, hands on demonstration of a very simple Program
2 Data type, variables, operators, expressions, type-casting, Control structure: if-else, switch-case, ternary operator
3 while/do-while/for loops, nested control structure, break and continue;
4 Function: parameter passing, return type;
5 One-dimensional array: searching and sorting with one-dimensional arrays;
6 Character and String: basic string operations, string related library functions;
7 Multi-dimensional array: matrix operations with multi-dimensional arrays; Recursion;
8 Bitwise operations; User-defined data types: structure, union, bitfield, enumeration;
9 Pointers: pointer to string, array, structure, and function
10 Dynamic memory allocation
11 Input/Output I/O): Console I/O, Formatted I/O, File I/O
12 Introduction to OOP, classes and objects, reference
13 Polymorphism, function and operator overloading, static functions
14 Inheritance Continued): function overriding, abstract class

Assessment Strategy

Class Attendance: Class attendance will be recorded in every class.

Class Tests/Assignments/Projects: There will be a minimum of 4 four) Class Tests/Assignments/Projects, out of which the best 3 three) will be considered in final evaluation.

Final exam: A comprehensive Final exam will be held at the end of the semester as per the institutional ordinance.

Distribution of Marks

  • Class Participation 10%

  • Continuous Assessment 20%

  • Final Examination 70%

  • Total 100%

Textbook/References

C/C++ Structured C/C++ Programming by M A H Newton, M. Kaykobad and Md Mostofa Akbar, Voyeger Publications

Teach yourself C, Herbert Shildt 3rd Edition)

Teach yourself C++, Herbert Shildt 3rd Edition)

Programming With C, Schaums Outline Series

Back to Top