This document provides information on the Computer Programming course offered in the 1st year. The course is for 3 credits over 1 semester and introduces students to programming languages like C, Python, and MATLAB. The course aims to teach problem solving methods, algorithm development, and good programming style. It covers topics like variables, data types, conditional statements, loops, functions, and pointers in C and the basics of Python and MATLAB. The expected outcomes are that students can analyze and modify short programs, design and debug their own programs using fundamental constructs, and apply techniques like structured decomposition.
This document provides information on the Computer Programming course offered in the 1st year. The course is for 3 credits over 1 semester and introduces students to programming languages like C, Python, and MATLAB. The course aims to teach problem solving methods, algorithm development, and good programming style. It covers topics like variables, data types, conditional statements, loops, functions, and pointers in C and the basics of Python and MATLAB. The expected outcomes are that students can analyze and modify short programs, design and debug their own programs using fundamental constructs, and apply techniques like structured decomposition.
1.5 Syllabus Committee Member: Dr. Sushum Biswas, Dr. Daya Sagar Gupta & Dr. Gargi
Srivastava
2. Objective: The objective of the course is to
i. To introduce problem solving methods and algorithm development. ii. To teach programming language C. iii. To teach how to design, code, debug and document programs using techniques of good programming style.
3. Course Content:
Unit-wise distribution of content and number of lectures
Unit Topics Sub-topic Lectures
Introduction to Introduction to programming, Programming paradigms, 1 2 programming Linux and Integrated Development Environment (IDE). Introduction to Basic syntax and semantics, Variables, Types, 2 Programming Expressions, Assignment statements, Conditional and 8 language C iterative control structures. Simple I/O and file handling, Functions and parameter passing, Strings and string processing, Arrays and 3 Program design 8 recursion, Pointers and references (introduction only), Structures and Classes, Standard library Basics of data Techniques of problem solving, Stepwise refinement, structures and 4 Simple numerical examples, algorithms for searching and 6 algorithm sorting, merging order lists. development Case studies taken from such areas as business 5 Case Studies 2 applications involving data manipulation 6 Python Introduction to Python; 7 Data types, variables, basic input-output operations; basic operators; Boolean values, conditional execution, loops, lists and list processing, logical and bitwise operations; Functions, tuples, dictionaries, and data processing; Modules, packages, string and list methods, and exceptions; The object-oriented approach, classes, methods, objects and the standard objective features, exception handling. and working with files The basics; Root-finding; Basic plotting; Vectorization; 7 MATLAB Fractals and chaos; Debugging with MATLAB; Conway 7 game of life; Library Total 40
4. Readings 4.1 Textbook:
i. C Programming 2e by K N King, W. W. Norton and Company, 2008
ii. Let Us C by Yashavant Kanetkar, BPB Publications, 2017. iii. Python and matlab: no specific book, online course materials
4.2 Reference books:
i. Programming in ANSI C by Balaguruswami
ii. The C Programming Language by Kernighan and Ritchie iii. The Art of Computer Programming by Donald Knuth
5 Outcome of the Course:
i. Analyze and explain the behavior of simple programs involving the fundamental programming constructs. ii. Modify and expand short programs that use standard conditional and iterative controls structures and functions. iii. Design, implement, test and debug a program that uses each of fundamental programming constructs. iv. Apply the technique of structured decomposition to break a program into smaller pieces.