[Bug] Making a Purchase has broken rules for accepting an answer



My code calculates the prices of items that are in the "supermarket" that we create. The error that returns is this:

Oops, try again. compute_bill(['apple']) returned 0 instead of 2

compute_bill(['apple']) should return 0 because the array we are given to work with has 0 apples in stock (see below):

shopping_list = ["banana", "orange", "apple"]

stock = {
    "banana": 6,
    "apple": 0,
    "orange": 32,
    "pear": 15
prices = {
    "banana": 4,
    "apple": 2,
    "orange": 1.5,
    "pear": 3

# Write your code below!
def compute_bill(food):
    total = 0
    for item in food:
        if stock[item] > 0:
            total += prices[item]
            stock[item] = stock[item] - 1
    return total

How is one supposed to purchase 1 apple if there are 0 apples? If you do "purchase" the 0th apple there will be -1 left, which is impossible.



Ignore whether or not the item you're billing for is in stock.

so you just have to add the price of that item to total.you don't need to check whether it is in stock or not.


This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.