
I've included a pdf file that lists all the video sessions, along with boxes to check off as you watch the video, complete the assignment, and review the assignment solution video, making changes as needed to your program. If checking off lists gives you a feeling of accomplishment, feel free to print this out as an additional guide to the course. (I love checking things off lists!)
Each assignment is given in the associated video lesson. There is also a pdf resource file in that Lecture. The pdf provides easy access to the assignment requirements.
Any code files provided, will be in a zip format. Just download and unzip the file to access the python code file.
The programming assignment was given at the end of the video session. The attached pdf resource file also contains this programming assignment. After you've coded your own solution, please view the corresponding video in the Programming Assignment Solutions and Explanations section. There, I go over my program code for the assignment. After viewing the video, if you see ways to improve your program, please revise your code as needed.
The programming assignment was given at the end of the video session. The attached pdf resource file also contains this programming assignment. After you've coded your own solution, please view the corresponding video in the Programming Assignment Solutions and Explanations section. There, I go over my program code for the assignment. After viewing the video, if you see ways to improve your program, please revise your code as needed.
The programming assignment was given at the end of the video session. The attached pdf resource file also contains this programming assignment. After you've coded your own solution, please view the corresponding video in the Programming Assignment Solutions and Explanations section. There, I go over my program code for the assignment. After viewing the video, if you see ways to improve your program, please revise your code as needed.
I won't keep repeating these instructions for future assignments. You should be well into the routine now. Complete the assignment, watch the solution video, revise your code as needed.
Understand how python evaluates expressions by operator precedence, using parentheses to force order, with exponentiation, multiplication and division, modulus, and addition and subtraction, followed by boolean operators.
Learn how to work with Python lists, index from zero, append to an empty list, access items by index and slices, check membership with in, and use len and sorted.
Master while loops by testing boolean conditions, including truthy and empty strings, and compare with for loops in a dice-roll race ending at 100.
Learn how Python functions return values to the main program using the return keyword. See how to store those results in a variable and use them later.
Learn how to build a modular Python word jumble game using functions, return values, and the random module to scramble words, validate guesses, and pinpoint errors in larger projects.
Organizes a text-based tic tac toe game, outlining problem solving from first moves to wins or ties, and explains data representation and flowcharts or pseudo code.
Set up a tic tac toe board in Python using a game function to initialize a nine-item empty board, print instructions, and display the board with a show board function.
learn to capture a tic tac toe player move by validating input from 0 to 8, updating the board with the player's marker, and safeguarding against invalid entries.
Set the player and computer markers from user input, validate the choice, and loop until the board is full while enforcing the valid move check before updating the board.
Learn how to simulate player and computer turns in tic tac toe using random moves, validating choices, and updating the board until full. It also randomizes the first player.
Improve the computer's tic tac toe logic using a brute force approach with if statements to check all winning lines, block the player, and prioritize the center then corners.
Improve the computer's tic tac toe playing logic by testing for winning moves, blocking the opponent, and using a reusable win check with a copied board and prioritized moves.
Explore how to create a branching Python story using if statements, handle user inputs for vehicle and destination, and implement else branches to manage invalid choices.
See how a python madlib program collects user inputs from prompts, then fills a story template with percent formatting, avoiding hard coding by looping over prompts.
Complete assignment 10 by importing the random module, defining four lists—adjectives, nouns, verbs, and a second nouns list—and using random.choice to assemble and print a sentence.
Explore pig latin in python by checking first letter against a vowels string, splitting input into words, and moving consonants to the end with 'ay' or adding 'way' to vowels.
Learn to build a Python tip calculator by defining a function and calling it with meal cost and tip type (G, S, M), outputting the total with two-decimal formatting.
Would you like to learn computer programming, but you've been frustrated by courses or books that give you too much - or too little information - leaving you feeling hopelessly lost?
Those approaches remind me of a guitar teacher I had years ago. He had two instructional methods - neither of which worked for me. He would either teach me to play one specific song, then I could play that song - but nothing else. Or he would play something complicated while I sat, watching him. I was supposed to pick up his guitar-playing skills by osmosis I guess, but that didn't happen.
I've taught computer programming for many years and have found the most effective approach is to teach the tools one by one, giving exercises or assignments that allow students to practice each new concept until mastered. As the student learns, he or she gradually builds larger, more complex programs. While this may not be the most glamorous technique - it works! Students gain confidence as they truly understand how to use the programming tools.
What are those "tools"? Most programming languages have the same basic features. I use python 3 in this course. (The simplicity, but power, of python makes it an excellent language for beginning programmers). After completing the course, students will be able to go further with python or easily switch to another programming language.
Students learn programming by programming! You will learn a lot by completing each assignment on your own. There is inevitably some struggling in the early parts of any programming course. You will learn from your mistakes, becoming a stronger, more confident programmer as a result.
I don't give out code files for the assignments. However each assignment has an accompanying video that reviews my solution. The solution videos should be viewed after completing your assignment to the best of your ability.
A printable pdf checklist is included to chart your progress in the course.
In this course, you'll learn: