Hey, there.

  • 0 Posts
  • 2 Comments
Joined 1 year ago
cake
Cake day: June 30th, 2023

help-circle

  • For a serious reoly, I think the expression “If they have eggs, buy two” is redundant. If they didn’t have eggs, the kid just can’t and won’t buy any eggs.

    I think the proper command would be, “Please buy 1 bottle of milk and two eggs.” That way, the kid won’t be confused and it’s still a proper valid command.

    Unfortunately though, the sentence is ambiguous even to non-programmers. It is unknown whether the if condition applies to

    • buying two eggs (buy two eggs)
    • buying two bottles of milk (buy two bottles instead)
    • or buying a bottle of milk (buy another bottle)

    Simply because they didn’t specify which to buy.

    For a non-serious reply,

    cart.add(supermarket.takeProduct(ProductType.milk, 1));
    
    if (supermarket.getProduct(type: ProductType.eggs).length > 0) {
        cart.add(supermarket.takeProduct(Product type.milk, 2));
    }
    
    cart.checkout();
    

    The kid should have bought a total of 3 bottles.