Skip to content

Mini Project Starter

Use this notebook to build the official IT1009C final project in clear steps. The complete requirements are in notebooks/12_guided_mini_project.ipynb. Your small program will use input, variables, a list, a loop, a calculation, a decision, and clear output.

Keep your project simple. A clear program you understand is better than a complicated program you cannot explain.

Run in Binder Open in Colab Download notebook

Read here. Practice in a notebook.

This page shows the original notebook. Open Binder or Colab to run and edit cells. Work one cell at a time: some examples are deliberately broken for debugging practice. Download your work before leaving Binder; its sessions are temporary.

View original source

Project Title and Description

Project title: Replace this with your project name.

Short description: Write 1-2 sentences explaining what your program helps someone do.

Example idea: A budget checker that adds expenses and tells the user whether total spending is within a limit.

Problem Statement

Write the problem your program solves in plain language.

Use this pattern:

  1. The user needs to know or decide something.
  2. The program collects simple information.
  3. The program processes that information.
  4. The program displays a helpful result.

Program Workflow

Build the project using this workflow:

  1. Get Input: use input() to collect values the program needs.
  2. Store Data: keep related values in variables and a list.
  3. Process Data: use arithmetic or a loop to calculate something.
  4. Make Decisions: use an if statement to choose a message or result.
  5. Display Output: print a clear summary for the user.

Step 1: Get Input

Ask the user for a name, goal, and three small numbers. input() returns text, so use float() to convert the numeric responses.

# TODO: Customize the prompts and variable names for your project.

user_name = input("Enter your name: ")
project_goal = float(input("Enter the project goal: "))

value_1 = float(input("Enter value 1: "))
value_2 = float(input("Enter value 2: "))
value_3 = float(input("Enter value 3: "))

print("User:", user_name)
print("Goal:", project_goal)

Step 2: Store Data

Use a list when you have several related values. Lists work well with loops.

# TODO: Rename this list if another name fits your project better.

values = [value_1, value_2, value_3]

print("Values:", values)

Step 3: Process Data

Use a loop to process each value. This example adds the values, but your project may count, compare, or build a message.

total = 0

# TODO: Keep this loop or adapt it for your project.
for value in values:
    total = total + value

print("Total:", total)

Step 4: Make Decisions

Use a condition to decide what message the user should see. Keep the rule simple and explainable.

# TODO: Change the condition and messages to match your project.

if total <= project_goal:
    result_message = "Within the goal"
else:
    result_message = "Above the goal"

print(result_message)

Step 5: Display Output

The final output should be easy for another person to read. Include labels so the result is clear.

# TODO: Customize the labels so they match your project.

print("Mini Project Summary")
print("User:", user_name)
print("Values checked:", values)
print("Total:", total)
print("Goal:", project_goal)
print("Result:", result_message)

Example Run

One normal test could use these responses:

Enter your name: Student
Enter the project goal: 50
Enter value 1: 12
Enter value 2: 18
Enter value 3: 9

Example output:

Mini Project Summary
User: Student
Values checked: [12.0, 18.0, 9.0]
Total: 39.0
Goal: 50.0
Result: Within the goal

Requirements Checklist

Before submitting, check that your project includes:

  • [ ] at least one user input with input()
  • [ ] variables with clear names
  • [ ] at least one list
  • [ ] at least one loop
  • [ ] at least one conditional statement
  • [ ] arithmetic or simple processing
  • [ ] clear final output
  • [ ] one normal-case test
  • [ ] one simple edge-case test
  • [ ] a completed Fix Log
  • [ ] a short reflection in your own words
  • [ ] an explanation of what your program does

Testing Section

Test your project with two small examples. Rerun the program and record what happened.

Try:

  1. Normal case: use ordinary values, such as 12, 18, and 9.
  2. Simple edge case: use a boundary or unusual-but-valid set, such as three zeros or values exactly at the goal.

After each test, ask: Does the output make sense?

# Testing notes
# TODO: Describe the normal test and simple edge-case test you tried.

normal_test_note = "For my normal test, I entered ... and the result was ..."
edge_test_note = "For my edge-case test, I entered ... and the result was ..."

print(normal_test_note)
print(edge_test_note)

Fix Log

Describe one error or unexpected result you encountered:

  1. What error or unexpected result did you see?
  2. What caused it?
  3. What did you change to fix it?
  4. What did you learn from the fix?

Reflection

Answer in your own words:

  1. What does your program do?
  2. What problem does it solve?
  3. What was one challenge you faced?
  4. How did you test or fix your program?
  5. How could this kind of program apply to school, work, or your field?

Write the Fix Log and reflection in your own words. AI tools may help explain an error or check your reasoning, but they may not replace your testing, Fix Log, reflection, or understanding.

A simple program that works and that you can explain is better than a complicated program you do not understand.