Problem Solving and Programming | Unit 1 – 6 Notes

Course Objectives:

Prime objective is to give students a basic introduction to programming and problem solving with computer language Python. And to introduce students not merely to the coding of computer programs, but to computational thinking, the methodology of computer programming, and the principles of good program design including modularity and encapsulation.

  1. To understand problem solving, problem solving aspects, programming and to know about various program design tools.
  2. To learn problem solving with computers
  3. To learn basics, features and future of Python programming.
  4. To acquaint with data types, input output statements, decision making, looping and functions in Python
  5. To learn features of Object Oriented Programming using Python
  6. To acquaint with the use and benefits of files handling in Python

Examination Scheme:

In Semester : 30 Marks
End Semester: 70 Marks
PR: 25 Marks

Download Notes

UnitDownload Button
Unit No: 1 Download Now
Unit No: 2 Download Now
Unit No: 3 Download Now
Unit No: 4 Download Now
Unit No: 5 Download Now
Unit No: 6 Download Now


Unit I: Problem Solving, Programming and Python Programming

General Problem Solving Concepts- Problem solving in everyday life, types of problems, problem solving with computers, difficulties with problem solving, problem solving aspects, top down design. Problem Solving Strategies,
Program Design Tools: Algorithms, Flowcharts and Pseudo-codes, implementation of algorithms.
Basics of Python Programming: Features of Python, History and Future of Python, Writing and executing Python program, Literal constants, variables and identifiers, Data Types, Input operation, Comments, Reserved words, Indentation, Operators and expressions, Expressions in Python.

Unit 2: Decision Control Statements

Decision Control Statements: Decision control statements, Selection/conditional branching Statements: if, if-else, nested if, if-elif-else statements. Basic loop Structures/Iterative statements: while loop, for loop, selecting appropriate loop. Nested loops, The break, continue, pass, else statement used with loops. Other data types- Tuples, Lists and Dictionary.

Unit 3: Functions and Modules

Need for functions, Function: definition, call, variable scope and lifetime, the return statement. Defining functions, Lambda or anonymous function, documentation string, good programming practices. Introduction to modules, Introduction to packages in Python, Introduction to standard library modules.

Unit 4: Strings

Strings and Operations- concatenation, appending, multiplication and slicing. Strings are immutable, strings formatting operator, built in string methods and functions. Slice operation, ord() and chr() functions, in and not in operators, comparing strings, Iterating strings, the string module.

Unit 5: Object Oriented Programming

Programming Paradigms-monolithic, procedural, structured and object oriented, Features of Object oriented programming-classes, objects, methods and message passing, inheritance, polymorphism, containership, reusability, delegation, data abstraction and encapsulation.
Classes and Objects: classes and objects, class method and self object, class variables and object variables, public and private members, class methods.

Unit 6: File Handling and Dictionaries

Files: Introduction, File path, Types of files, Opening and Closing files, Reading and Writing files. Dictionary method. Dictionaries- creating, assessing, adding and updating values. Case Study: Study design, features, and use of any recent, popular and efficient system developed using Python. (This topic is to be excluded for theory examination).