Lesson 1 (Decision Trees & Additional Features)

Mini Project: Shopping List Manager

Project Overview:

We will create a Python program that allows users to manage a shopping list. Users will be able to add items, remove items, and view their list.


Project Requirements:

User Input:

  1. The name of the item to add to the shopping list.
  2. The name of the item to remove from the shopping list (if applicable).

Conditional Statements:

  • Before removing an item, the program will check if the item exists in the list and display an appropriate message if it does not.
  • The program will inform the user if the list is empty when attempting to view or modify it.

Output:

  1. A confirmation message when an item is successfully added or removed.
  2. A summary of the current shopping list
  3. A message when exiting the program.


Lesson 1

Learning Intention:

  • I can construct a decision tree diagram to show the logic in my program.

 

Activity Description Assessment Criteria
Decision Tree

We create decision trees to clearly demonstrate how our planned program should run based on the various user inputs it might encounter. See the below decision tree for a basic program as an example.

Questions that require user input are diamonds with printed computer responses as rectangles to distinguish. Colours are also used to distinguish between valid and invalid responses.

image.png

Activity:

Finish the above decision tree for your shopping list manager program. The decision tree should clearly show the flow of your program and the user's inputs. Remember to use the accurate conventions including:

  • Diamonds for elements requiring user input
  • Rectangles for computer output not requiring an input
  • Colours to distinguish between valid and invalid program inputs
  • Directional arrows with labels to show stored variables and/or users inputs.

purposeful design of algorithms and game map.

  • Decision tree/flowchart has accurate conventions and clearly shows the flow of the game.
Additional Features

Who is the target audience for an application such as this?

Are there any additional features you could add to this program to improve the user experience?

In groups identify at least 1 additional feature you would like to add to your program to improve the user experience?

Why do you want to add this feature? Why will it improve the user experience?

justifies elements to be included in the game based on target audience.