Syllabus Problem Solving and Python Programming - GE3151 UNIT IComputational Thinking and Problem Solving 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. (Chapter - 1) UNIT IIData Types, Expressions, Statements 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. (Chapter - 2) UNIT IIIControl Flow, Functions, Strings Conditionals : Boolean values and operators, conditional (if), alternative (if-else),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. (Chapter - 3) UNIT IVLists, Tuples, Dictionaries 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. (Chapter - 4) UNIT VFiles, Modules, Packages Files and exceptions : text files, reading and writing fi