|Introduction to Programs Data Types and Variables Writing a basic program. Basics of data types, variables and conditional statements||Python Lists Understanding the basics of lists in Python|
|For Loops in Python Basics of for loops in Python||While Loops in Python Seeing that a while loop can do the same thing as a for loop|
|Fun with Strings Experimenting and seeing what we can do with strings||Writing a Simple Factorial Program(Python 2) Writing a simple factorial program with a "for" loop|
|Stepping Through the Factorial Program Stepping through what happens when a user inputs a particular value into our factorial program||Flowchart for the Factorial Program|
|Python 3 Not Backwards Compatible with Python 2 Understanding why the example program would not run in Python 3 and how to fix it.|
|Defining a Factorial Function||Diagramming What Happens with a Function Call Variable scope and function calls|
|Recursive Factorial Function Introduction to recursion.||Comparing Iterative and Recursive Factorial Functions|
|Exercise - Write a Fibonacci Function||Introduction to the Fibonacci Sequence and a programming challenge|
|Iterative Fibonacci Function Example One way to write a Fibonacci function iteratively||Stepping Through Iterative Fibonacci Function Understanding how the iterative Fibonacci function works for a particular example|
|Recursive Fibonacci Example Using recursion to write a fibonacci function||Stepping Through Recursive Fibonacci Function Understanding why and how the recursive Fibonacci function works|
|Exercise - Write a Sorting Function Challenge to write a Python function that can sort a list in-place||Insertion Sort Algorithm Visual description of the insertion sort algorithm|
|Insertion Sort in Python Basic implementation of insertion sort algorithm||Stepping Through Insertion Sort Function Clarifying what "break" does and stepping through the insertion sort implementation|
A Free Java Programming Course from Stanford.
Programming Methodology (CS106A) is an Introduction to the
engineering of computer applications emphasizing modern software
engineering principles: object-oriented design, decomposition,
encapsulation, abstraction, and testing. Uses the Java programming
language. Emphasis is on good programming style and the built-in
facilities of the Java language.
Rotate to landscape screen format on a mobile phone or small tablet to use the Mathway widget, a free math problem solver that answers your questions with step-by-step explanations.
We welcome your feedback, comments and questions about this site or page. Please submit your feedback or enquiries via our Feedback page.