Have a great winter break! Please note that AoPS Online will not have classes Dec 21, 2024 through Jan 3, 2025.

Homework in the Programming Courses

The homework assignments in our Introduction to Programming with Python and Intermediate Programming with Python courses are slightly different than in our other courses.

Introduction to Programming with Python

This course is 12 weeks long and culminates in a large final project completed in the last two weeks of class. Take a look at the Description of Homework Types for more details about each component.

The First Ten Weeks

For the first ten weeks of the Introduction to Programming with Python course, the homework will consist of readings from the textbook, 6-10 short-answer Challenge Problems and auto-graded Python problems, and one graded Python problem per week.

The Last Two Weeks

During the last two weeks of our Introduction to Programming with Python course, you'll work on just one final project instead of multiple shorter assignments. Over these two weeks, you'll choose one of three games to create. You should expect to spend more time than usual per week on the course while working on your final project.

At the end of the last week of the course, you will submit your final project. As with the earlier graded Python problems, a grader and your instructor will review your submission and provide you with detailed feedback.

Intermediate Programming with Python

This course is 12 weeks long and culminates in two large final projects completed in the last four weeks of class. Take a look at the Description of Homework Types for more details about each component.

The First Eight Weeks

For the first eight weeks of the Intermediate Programming with Python course, the homework will consist of readings from the textbook, 4-8 short-answer Challenge Problems and auto-graded Python problems, and one graded Python problem per week.

The Last Four Weeks

During the last four weeks of our Intermediate Programming with Python course, students work on 2 two-week projects instead of multiple shorter assignments. Students are asked to implement the game Minesweeper in Weeks 9-10, and then the game Checkers in Weeks 11-12.

As with the earlier graded Python problems, a grader and your instructor will review your submission to each project and provide you with detailed feedback.

Description of Homework Types in Python Courses

Textbook Readings: We use an adapted version of How to Think Like a Computer Scientist. Each enrolled student will have access to the book for the duration of the course—no separate book purchase is required. The textbook readings are listed on the Overview tab of the course homepage, and the book can be accessed from the Textbook tab on the course homepage.

Short-Answer Challenge Problems: Like the short-answer challenge problems in other AoPS Courses, these problems will only require you to enter a final answer. You'll be able to try again with any problem you answer incorrectly, and you'll be shown a full solution after you've completed the problem. You may need to write or edit some Python code in order to come up with your final answer!

Auto-Graded Python Problem: These problems will ask you to write some Python code based on a prompt. You'll be able to submit your code once, and you'll be shown a full solution after completing the problem. Your response will not be graded, but you will receive points for submitting a response. If you request a grade at the end of the course, your instructor will take a closer look at your solutions to these problems when determining a grade.

Graded Python Problems: These problems will ask you to write some Python code based a prompt. Like the Writing Problems in our subject courses, these responses are collected at the end of the due date and individually graded. You'll receive personalized feedback from a grader and the instructor, including comments about the accuracy and efficiency of the code and how easy the code is for others to understand.