MOOKAMBIGAI COLLEGE OF ENGINEERING
Srinivasa Nagar, Kalamavur, Pudukkottai – 622502
GE3151 - PROBLEM SOLVING AND PYTHON
PROGRAMMING
Regulation – 2021
, GE3151 - PROBLEM SOLVING AND PYTHON PROGRAMMING
LTPC
3 0 03
COURSE OBJECTIVES:
● To understand the basics of algorithmic problem solving.
● To learn to solve problems using Python conditionals and loops.
● To define Python functions and use function calls to solve problems.
● To use Python data structures - lists, tuples, dictionaries to represent
complex data.
● To do input/output with files in Python.
UNIT I COMPUTATIONAL THINKING AND PROBLEM
SOLVING 9
Fundamentals of Computing – Identification of Computational Problems
Algorithms, building blocks of algorithms (statements, state, control flow,
functions), notation (pseudo code, flow chart, programming language),
algorithmic problem solving, simple strategies for developing algorithms
(iteration, recursion). Illustrative problems: find minimum in a list, insert a
card in a list of sorted cards, guess an integer number in a range, Towers of
Hanoi.
UNIT II DATA TYPES, EXPRESSIONS, STATEMENTS 9
Python interpreter and interactive mode, debugging; values and types: int,
float, boolean, string and list; variables, expressions, statements, tuple
assignment, precedence of operators, comments; Illustrative programs:
exchange the values of two variables, circulate the values of n variables,
distance between two points.
,UNIT III CONTROL FLOW, FUNCTIONS, STRINGS 9
Conditionals: Boolean values and operators, conditional (if), alternative
(ifelse),chained conditional (if-elif-else);Iteration: state, while, for, break,
continue, pass; Fruitful functions: return values, parameters, local and
global scope, function composition, recursion; Strings: string slices,
immutability, string functions and methods, string module; Lists as arrays.
Illustrative programs: square root, gcd, exponentiation, sum an array of
numbers, linear search, binary search.
UNIT IV LISTS, TUPLES, DICTIONARIES 9
Lists: list operations, list slices, list methods, list loop, mutability, aliasing,
cloning lists, list parameters; Tuples: tuple assignment, tuple as return
value; Dictionaries: operations and methods; advanced list processing - list
comprehension; Illustrative programs: simple sorting, histogram, Students
marks statement, Retail bill preparation.
UNIT V FILES, MODULES, PACKAGES 9
Files and exceptions: text files, reading and writing files, format operator;
command line arguments, errors and exceptions, handling exceptions,
modules, packages; Illustrative programs: word count, copy file, Voter’s
age validation, Marks range validation (0-100).
TOTAL : 45 PERIODS
, COURSE OUTCOMES:
Upon completion of the course, students will be able to
CO1: Develop algorithmic solutions to simple computational problems.
CO2: Develop and execute simple Python programs.
CO3: Write simple Python programs using conditionals and loops for solving
problems.
CO4: Decompose a Python program into functions.
CO5: Represent compound data using Python lists, tuples, dictionaries etc.
CO6: Read and write data from/to files in Python programs.
TEXT BOOKS:
1. Allen B. Downey, “Think Python: How to Think like a Computer Scientist”,
2nd Edition, O’Reilly Publishers, 2016.
2. Karl Beecher, “Computational Thinking: A Beginner's Guide to Problem
Solving and Programming”, 1st Edition, BCS Learning & Development Limited,
2017.
REFERENCES:
1. Paul Deitel and Harvey Deitel, “Python for Programmers”, Pearson Education,
1st Edition, 2021.
2. G Venkatesh and Madhavan Mukund, “Computational Thinking: A Primer for
Programmers and Data Scientists”, 1st Edition, Notion Press, 2021.
3. John V Guttag, "Introduction to Computation and Programming Using Python:
With Applications to Computational Modeling and Understanding
Data”, Third Edition, MIT Press, 2021
4. Eric Matthes, “Python Crash Course, A Hands - on Project Based Introduction
to Programming”, 2nd Edition, No Starch Press, 2019.
5. https://www.python.org/
6. Martin C. Brown, “Python: The Complete Reference”, 4th Edition, Mc-Graw
Hill, 2018.
Srinivasa Nagar, Kalamavur, Pudukkottai – 622502
GE3151 - PROBLEM SOLVING AND PYTHON
PROGRAMMING
Regulation – 2021
, GE3151 - PROBLEM SOLVING AND PYTHON PROGRAMMING
LTPC
3 0 03
COURSE OBJECTIVES:
● To understand the basics of algorithmic problem solving.
● To learn to solve problems using Python conditionals and loops.
● To define Python functions and use function calls to solve problems.
● To use Python data structures - lists, tuples, dictionaries to represent
complex data.
● To do input/output with files in Python.
UNIT I COMPUTATIONAL THINKING AND PROBLEM
SOLVING 9
Fundamentals of Computing – Identification of Computational Problems
Algorithms, building blocks of algorithms (statements, state, control flow,
functions), notation (pseudo code, flow chart, programming language),
algorithmic problem solving, simple strategies for developing algorithms
(iteration, recursion). Illustrative problems: find minimum in a list, insert a
card in a list of sorted cards, guess an integer number in a range, Towers of
Hanoi.
UNIT II DATA TYPES, EXPRESSIONS, STATEMENTS 9
Python interpreter and interactive mode, debugging; values and types: int,
float, boolean, string and list; variables, expressions, statements, tuple
assignment, precedence of operators, comments; Illustrative programs:
exchange the values of two variables, circulate the values of n variables,
distance between two points.
,UNIT III CONTROL FLOW, FUNCTIONS, STRINGS 9
Conditionals: Boolean values and operators, conditional (if), alternative
(ifelse),chained conditional (if-elif-else);Iteration: state, while, for, break,
continue, pass; Fruitful functions: return values, parameters, local and
global scope, function composition, recursion; Strings: string slices,
immutability, string functions and methods, string module; Lists as arrays.
Illustrative programs: square root, gcd, exponentiation, sum an array of
numbers, linear search, binary search.
UNIT IV LISTS, TUPLES, DICTIONARIES 9
Lists: list operations, list slices, list methods, list loop, mutability, aliasing,
cloning lists, list parameters; Tuples: tuple assignment, tuple as return
value; Dictionaries: operations and methods; advanced list processing - list
comprehension; Illustrative programs: simple sorting, histogram, Students
marks statement, Retail bill preparation.
UNIT V FILES, MODULES, PACKAGES 9
Files and exceptions: text files, reading and writing files, format operator;
command line arguments, errors and exceptions, handling exceptions,
modules, packages; Illustrative programs: word count, copy file, Voter’s
age validation, Marks range validation (0-100).
TOTAL : 45 PERIODS
, COURSE OUTCOMES:
Upon completion of the course, students will be able to
CO1: Develop algorithmic solutions to simple computational problems.
CO2: Develop and execute simple Python programs.
CO3: Write simple Python programs using conditionals and loops for solving
problems.
CO4: Decompose a Python program into functions.
CO5: Represent compound data using Python lists, tuples, dictionaries etc.
CO6: Read and write data from/to files in Python programs.
TEXT BOOKS:
1. Allen B. Downey, “Think Python: How to Think like a Computer Scientist”,
2nd Edition, O’Reilly Publishers, 2016.
2. Karl Beecher, “Computational Thinking: A Beginner's Guide to Problem
Solving and Programming”, 1st Edition, BCS Learning & Development Limited,
2017.
REFERENCES:
1. Paul Deitel and Harvey Deitel, “Python for Programmers”, Pearson Education,
1st Edition, 2021.
2. G Venkatesh and Madhavan Mukund, “Computational Thinking: A Primer for
Programmers and Data Scientists”, 1st Edition, Notion Press, 2021.
3. John V Guttag, "Introduction to Computation and Programming Using Python:
With Applications to Computational Modeling and Understanding
Data”, Third Edition, MIT Press, 2021
4. Eric Matthes, “Python Crash Course, A Hands - on Project Based Introduction
to Programming”, 2nd Edition, No Starch Press, 2019.
5. https://www.python.org/
6. Martin C. Brown, “Python: The Complete Reference”, 4th Edition, Mc-Graw
Hill, 2018.