Answered step by step
Verified Expert Solution
Question
1 Approved Answer
Python Please! 2 9 . 2 4 LAB * : Program: Online shopping cart ( Part 2 ) This program extends the earlier Online shopping
Python Please! LAB: Program: Online shopping cart Part
This program extends the earlier "Online shopping cart" program. Consider first saving your earlier program
Extend the ItemToPurchase class to contain a new attribute. pts
itemdescription string Set to "none" in default constructor
Implement the following method for the ItemToPurchase class.
printitemdescription Prints itemdescription attribute for an ItemToPurchase object. Has an ItemToPurchase parameter.
Ex of printitemdescription output:
Bottled Water: Deer Park, oz
Build the ShoppingCart class with the following data attributes and related methods. Note: Some can be method stubs empty methods initially, to be completed in later steps.
Parameterized constructor which takes the customer name and date as parameters pts
Attributes
customername string Initialized in default constructor to "none"
currentdate string Initialized in default constructor to "January
cartitems list
Methods
additem
Adds an item to cartitems list. Has a parameter of type ItemToPurchase. Does not return anything.
removeitem
Removes item from cartitems list. Has a string an item's name parameter. Does not return anything.
If item name cannot be found, output this message: Item not found in cart. Nothing removed.
modifyitem
Modifies an item's quantity. Has a parameter of type ItemToPurchase. Does not return anything.
If item can be found by name in cart, modify item in cart.
If item cannot be found by name in cart, output this message: Item not found in cart. Nothing modified.
getnumitemsincart pts
Returns quantity of all items in cart. Has no parameters.
getcostofcart pts
Determines and returns the total cost of items in cart. Has no parameters.
printtotal
Outputs total of objects in cart.
If cart is empty, output this message: SHOPPING CART IS EMPTY
printdescriptions
Outputs each item's description.
Ex of printtotal output:
John Doe's Shopping Cart February
Number of Items:
Nike Romaleos @ $ $
Chocolate Chips @ $ $
Powerbeats Headphones @ $ $
Total: $
Ex of printdescriptions output:
John Doe's Shopping Cart February
Item Descriptions
Nike Romaleos: Volt color, Weightlifting shoes
Chocolate Chips: Semisweet
Powerbeats Headphones: Bluetooth headphones
In the main section of the code, prompt the user for a customer's name and today's date. Output the name and date. Create an object of type ShoppingCart. pt
Ex:
Enter customer's name:
John Doe
Enter today's date:
February
Customer name: John Doe
Today's date: February
Implement the printmenu function to print the following menu of options to manipulate the shopping cart. pt
Ex:
MENU
a Add item to cart
r Remove item from cart
c Change item quantity
i Output items' descriptions
o Output shopping cart
q Quit
Implement the executemenu function that takes parameters: a character representing the user's choice and a shopping cart. executemenu performs the menu options described below, according to the user's choice. pt
In the main section of the code, call printmenu and prompt for the user's choice of menu options. Each option is represented by a single character.
If an invalid character is entered, continue to prompt for a valid choice. When a valid option is entered, execute the option by calling executemenu Then, print the menu and prompt for a new option. Continue until the user enters q Hint: Implement Quit before implementing other options. pt
Ex:
a Add item to cart
r Remove item from cart
c Change item quantity
i Output items' descriptions
o Output shopping cart
q Quit
Choose an option:
Implement Output shopping cart menu option in executemenu pts
Ex:
OUTPUT SHOPPING CART
John Doe's Shopping Cart February
Number of Items:
Nike Romaleos @ $ $
Chocolate Chips @ $ $
Powerbeats Headphones @ $ $
Total: $
Implement Output item's description menu option in executemenu pts
Ex:
OUTPUT ITEMS' DESCRIPTIONS
John Doe's Shopping Cart February
Item Descriptions
Nike Romaleos: Volt color, Weightlifting shoes
Chocolate Chips: Semisweet
Powerbeats Headphones: Bluetooth headphones
Implement Add item to cart menu option in executemenu pts
Ex:
ADD ITEM TO CART
Enter the item name:
Nike Romaleos
Enter the item description:
Volt color, Weightlifting shoes
Enter the item price:
Enter the item quantity:
Implement remove item menu option in executemenu pts
Ex:
REMOVE ITEM FROM CART
Enter name of item to remove:
Chocolate Chips
Implement Change item quantity menu option in executemenu Hint: Make
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started