Documents
Stern Warning
Any notes found here are intended to supplement your own lecture notes.
They are not a substitute for attending class.
Lec No. | Topic & Description | PDF link | PPTX link |
---|---|---|---|
Lec 01 | Introduction | PowerPoint | |
(Syllabus, Academic Integrity, Programming Mindset) | |||
Lec 02 | Intro to Python | PowerPoint | |
(Variables, Expressions, Input/Output, Python Interpreter) | |||
Lec 03 | Operators | PowerPoint | |
(Arithmetic, Assignment, Comparison, and Logical Operators) | |||
Lec 04 | Decision Structures | PowerPoint | |
(One-Way, Two-Way, and Multi-Way Decision Structures) | |||
Lec 05 | Algorithmic Thinking | PowerPoint | |
(Algorithms, Syntax and Logic Errors, Practice with Decision Structures) | |||
Lec 06 | While Loops | PowerPoint | |
(while Loops, Interactive Loops, Conditional Practice) | |||
Lec 07 | While Loops (cont) | PowerPoint | |
(Constants, Sentinel Loops, Boolean Flags) | |||
Lec 08 | Lists | PowerPoint | |
(Lists, Membership "in", Methods vs Functions) | |||
Lec 09 | Strings | PowerPoint | |
(Strings, Slicing, Concatenation, String Methods) | |||
Lec 10 | Functions | PowerPoint | |
(All About Functions (Define, Call, Purpose), Variable Scope) | |||
Lec 11 | Functions (continued) | PowerPoint | |
(Returning Values, Scope) | |||
Lec 12 | Lists (continued) | PowerPoint | |
(Two-Dimensional Lists, Lists and Functions, Mutability) | |||
Lec 13 | Program Design | PowerPoint | |
(Modularity, Top Down Design, Implementation) | |||
Lec 14 | For Loops | PowerPoint | |
(range() Function, Introduction to for Loops) | |||
Lec 15 | Program Design (continued) | PowerPoint | |
("Good Code", Commenting, Incremental Programming) | |||
Lec 16 | Recursion | PowerPoint | |
(Recursion, Stacks, Designing Recursive Functions) | |||
Lec 17 | Recursion (continued) | PowerPoint | |
(Code Trace of Recursion, More Examples, Iteration vs Recursion) | |||
Lec 18 | String Formatting | PowerPoint | |
(String Formatting (Alignment, Padding, etc.), Tuples) | |||
Lec 19 | File I/O | PowerPoint | |
(File Input/Output) | |||
Lec 20 | Binary (and File I/O) | PowerPoint | |
(Binary Numbers, File I/O Review) | |||
Lec 21 | Dictionaries | PowerPoint | |
(Building, Accessing, and Manipulating Dictionaries, Comparison to Lists) | |||
Lec 22 | Project 3 and Miscellaneous Topics | PowerPoint | |
(ASCII Values, Short Circuiting, Project 3 Details) | |||
Lec 23 | Hexadecimal and Color Printing | PowerPoint | |
(Hexadecimal Numbers, Printing in Color (ANSI Escape Codes)) | |||
Lec 24 | Searching and Sorting | PowerPoint | |
(Linear/Binary Search and Bubble/Quick/Selection Sort) | |||
Lec 25 | Algorithmic Analysis | PowerPoint | |
(Run Time, Worst and Best Case, Asymptotic Analysis, Big O) |
Livecoding Files
Below you will find copies of the files we have worked on in class. Brief notes have been provided where appropriate.
Lecture | Exercise | Links | Notes |
---|---|---|---|
Lec 05 | Nail Polish | polish.py | Single if/elif/else |
Lec 05 | Passing 201 |
moveOn1.py moveOn2.py moveOn3.py |
Nested, grade as outer if Nested, major as outer if Not nested, uses and/or |
Lec 06 | Guessing Polish | guessPolish.py | Uses a while loop to keep guessing |
Lec 07 | Password Creator | validPassword.py | Uses a Boolean flag to meet multiple requirements |
Lec 07 | Extra Credit Grades | extraCredit.py | Uses a Boolean flag to find one of many possible ways |
Lec 12 | Checker Board | checkers.py | Builds and prints a 2D list |
Lec 14 | Kennel Assistants | kennel.py | Uses different for loop styles |
Lec 16 | List Summation | recurSumLists.py | Uses two different recursive solutions to sum a list |
Lec 17 | Fibonacci Tracing | traceFib.py | Uses recursion to generate lower numbers |
Lec 19 | deSpacing |
deSpacer1.py deSpacer2.py |
Using split and join on one string Using for loop over file as one string |
Lec 23 | Colored Text | coloring.py | Uses ANSI escape codes in a function to print in colors |
Lec 23 | Binary Search | binarySearch.py | Recursive binary search implementation |