110005: Programming and Problem Solving
Teaching Scheme: TH: 03 Hrs/Week PR :02 Hrs/Week Credits 04
Examination Scheme: In-Semester: 30
Marks End-Semester: 70 Marks PR: 25
Marks
Prerequisite Courses, if any: students are expected to have a good understanding
of basic computer principles.
Companion Course, if any: Programming and Problem-Solving Laboratory (110005)
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 Following Fields are applicable for courses with companion Laboratory
course.
Course Outcomes: On completion of the course, learner will be able to–
CO1: Inculcate and apply various skills in problem solving.
CO2: Choose most appropriate programming constructs and features to solve the
problems in diversified domains.
CO3: Exhibit the programming skills for the problems those require the
writing of well documented programs including use of the logical constructs of
language, Python.
CO4: Demonstrate significant experience with the Python program development
environment.
Course Contents
Unit I- Problem Solving, Programming and Python Programming (07
Hrs)
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 II - Decision Control Statements (08 Hrs)
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 III - Functions and Modules (08 Hrs)
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 IV - Strings (07 Hrs)
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 V - Object Oriented Programming (08 Hrs)
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 VI - File Handling and Dictionaries (07 Hrs)
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).
Text Books:
1.
Reema Thareja, “Python Programming Using Problem Solving Approach”,
Oxford University Press, ISBN 13: 978-0-19-948017-6 2. R. Nageswara Rao, “Core
Python Programming”, Dreamtech Press; Second edition ISBN10: 938605230X,
ISBN-13: 978-9386052308 ASIN: B07BFSR3LL
Reference Books:
1.
R. G. Dromey, “How to Solve it by Computer”, Pearson Education India; 1st
edition, ISBN10: 8131705625, ISBN-13: 978-8131705629 Maureen Spankle, “Problem
Solving and Programming Concepts”, Pearson; 9th edition, ISBN-10:
9780132492645, ISBN-13: 9780132492645
2.
Romano Fabrizio, “Learning Python”, Packt Publishing Limited, ISBN:
9781783551712, 1783551712
3.
Paul Barry, “Head First Python- A Brain Friendly Guide”, SPD O’Reilly,
2nd Edition, ISBN:978-93-5213-482-3
4.
Martin C. Brown, “Python: The Complete Reference”, McGraw Hill Education,
ISBN-10: 9789387572942, ISBN-13: 978-9387572942, ASIN: 9387572943
5.
Jeeva Jose, P. Sojan Lal, “Introduction to Computing & Problem Solving
with Python”, Khanna Computer Book Store; First edition, ISBN-10: 9789382609810,
ISBN-13: 9789382609810
No comments:
Post a Comment