Course Title: Computer Programming
Type of Course: Compulsory, Theory, Non-departmental
Offered to: EEE
Pre-requisite Course(s): None
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;
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.
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
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
COs | K1 | K2 | K3 | K4 | K5 | K6 | K7 | K8 | P1 | P2 | P3 | P4 | P5 | P6 | P7 | A1 | A2 | A3 | A4 | A5 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
CO1 | √ | |||||||||||||||||||
CO2 | √ | √ | √ | |||||||||||||||||
CO3 | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ |
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 |
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.
Class Participation 10%
Continuous Assessment 20%
Final Examination 70%
Total 100%
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