Ads

GE 8151 Problem Solving and Python Programming Syllabus and Lesson Plan(PSP)


GE 8151                           PROBLEM SOLVING AND PYTHON PROGRAMMING                                                                                                                                                                                                                                                                                                                                                                                                       L T P C                                                                                                                                                            3 0 0 3
OBJECTIVES:
·To know the basics of algorithmic problem solving
·To read and write simple Python programs.
·To develop Python programs with conditionals and loops.
·To define Python functions and call them.
·To use Python data structures –- lists, tuples, dictionaries.
·To do input/output with files in Python
UNIT I               ALGORITHMIC PROBLEM SOLVING                                                            9
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, EXPRESSIONS,STATEMENTS                                                                       9
Python  interpreter  and  interactive  mode;  values  and  types:  int,  float,  boolean,  string,  and  list; variables, expressions,  statements, tuple assignment, precedence of operators, comments; modules and functions, function definition and use, flow of execution, parameters and arguments;  Illustrative programs: exchange the values of two variables, circulate the values of n variables, distance between two points.
 UNIT III            CONTROL FLOW,FUNCTIONS                                                                     9
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.
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: selection sort, insertion sort, mergesort, histogram.
UNIT V           FILES, MODULES,PACKAGES                                                                         9
Files and exception: text files, reading and writing files, format operator; command line arguments, errors and exceptions, handling exceptions, modules, packages; Illustrative programs: word count, copy file.

OUTCOMES:
Upon completion of the course, students will be able to

·Develop algorithmic solutions to simple computational problems
·Read, write, execute by hand simple Python programs.
·Structure simple Python programs for solving problems.
·Decompose a Python program into functions.
·Represent compound data using Python lists, tuples, and dictionaries.
·Read and write data from/to files in Python Programs.

TOTAL : 45 PERIODS









TEXT BOOKS:
1.      Allen B. Downey, “Think Python: How to Think Like a Computer Scientist‘‘, 2nd edition, Updated for Python 3, Shroff/O‘Reilly Publishers, 2016  (http://greenteapress.com/wp/think- python/)
2.      Guido van Rossum and Fred L. Drake Jr, ―An Introduction to Python – Revised and updated for Python 3.2, Network Theory Ltd., 2011.

REFERENCES:
1.      John V Guttag, ―Introduction to Computation and Programming Using Python‘‘, Revised and expanded Edition, MIT Press , 2013
2.      Robert Sedgewick, Kevin Wayne, Robert Dondero, ―Introduction to Programming in Python:An Inter-disciplinary Approach, Pearson India Education Services Pvt. Ltd., 2016.
3.      Timothy A. Budd, ―Exploring Python, Mc-Graw Hill Education (India) Private Ltd.,, 2015.
4.      Kenneth A. Lambert, ―Fundamentals of Python: First Programs, CENGAGE Learning, 2012.
5.      Charles Dierbach, ―Introduction to Computer Science using Python: A Computational Problem- Solving Focus, Wiley India Edition, 2013.
6.      Paul Gries, Jennifer Campbell and Jason Montojo, ―Practical Programming: An Introduction to Computer Science using Python 3, Second edition, Pragmatic Programmers, LLC, 2013.



LESSON PLAN
S. No
Date Planned
No of periods required
Topic to be covered
Book / Page No
Delivery Methods
Select the ICT Blending code
Actual
Date of
Completion
Remarks
UNIT : I  – ALGORITHMIC PROBLEM SOLVING
1

1
Introduction to algorithms
R4/69
A
G


2

1
Building blocks of algorithmsInstructions/Statements,State, Control flow, Functions
R4/74
A,
G


3

1
Notations- Pseudo code, Flowchart,Programming language
R4/70
A
G


4

1
Notations- Pseudo code, Flowchart,Programming language
R4/70
A
G


5

1
Steps in algorithmic problem solving
R4/68
A
G


6

1
Iterative and recursive strategies for developing algorithm
R4/74
A
       G


7

1
Algorithm to find minimum in a list
T1/118
A
I


8

1
Algorithm to Insert a card in a list of sorted cards
T1/92
A
I


9

1
Algorithm to Guess an integer number in a range, Towers of Hanoi
T1/
93
A
I


UNIT : II  DATA, EXPRESSIONS, STATEMENTS
10

1
Running python , Python interpreter and interactive mode
T1/02
A
G


11

1
Values and types: int,float, Booleans, strings and lists
T1/04
A
G


12

1
Variables,ExpressionsDefining and its usage
T1/09
A
G


13

1
Statements, tuple assignment- Defining and its usage
T1/10
A
G


14

1
Precedence of Operators,Comments
T1/12
A
G


15

1
Function calls,Composition,Definition and uses
T1/17
A
       G


16

1
flow of execution, parameters and arguments in functions
T1/21
A
G


17

1
Program to exchange the values of two variables
T1/116
A
I


18

1
Program to Circulate the values of n variables and test for leap year
T1/60
A
I


UNIT : III CONTROL FLOW, FUNCTIONS
19

1
Chained and nested conditionals
T1/39
A
G


20

1
If, if-else, if-elif-else - illustration with examples
T1/40
A
G


21

1
While,for,break,continue,pas s,fruitful functions - illustration with examples
T1/64
A
G


22

1
While,for,break,continue,pas s,fruitful functions - illustration with examples
T1/64
A
G


23

1
Local and global variable scope, composition, recursion
T1/43
A
G


24

1
Strings definition, String slices, immutability, string functions and methods
T1/73
A
G


25

1
String module, lists as arrays, Programs for finding square root and gcd of numbers
T1/75
A
G


26

1
 Program for Exponentiation and sum an array of numbers
T1/3
A
G


27

1
Searching methods-linear and binary search with examples
R1/126
A
I


UNIT : IV  COMPOUND DATA-LISTS, TUPLES, DICTIONARIES

28

1
List definition, list operations, list slices, list methods, list loop
T1/89
A
G


29

1
Mutability, aliasing, cloning, list parameters
T1/97
A,
G


30

1
 Tuple definition, tuple assignment, tuple as return value
T1/115

G


31

1
Dictionaries definition, operations and methods
T1/103
A
G


32

1
Introduction to Advanced list processing
T1/184
A
G


33

1
List Comprehension
T1/184
A
G


34

1
 Sorting techniques selection sort, insertion sort illustration with examples
R1/132
A
I


35

1
Merge sort illustration with examples
R1/134
A
I


36

1
Quick sort illustration with examples
R1/135
A
I


UNIT : V  – FILES, MODULES ,PACKAGES

37

1
Introduction to files
T1/137
A
G


38

1
Reading and writing files, format operator
T1/138
A
G


39

1
Reading and writing files, format operator
T1/140
A
G


40

1
Command line arguments, Introduction to exception handling
T1/140
A
G


41

1
Command line arguments, Introduction to exception handling
T1/140
A
G


42

1
 Catching exceptions, modules
T1/140
A
G


43

1
Catching exceptions, modules
T1/140
A
G


44

1
Packages-definition and usage
T1/140
A
G


45

1
Program to count number of words in a file and program to copy contents of one file to another
T1/143
A
I













FACULTY INCHARGE                                                         HOD                                                                      PRINCIPAL






Comments

Popular posts from this blog

Datatypes in C

Ethical Hacking V10

Installing Anaconda on Windows.