# GroceryBill

SoccerBoss
Category:
Programming
Price: \$5 USD

Question description

1.  Suppose a class GroceryBill keeps track of a list of items being purchased at a market:

public GroceryBill(Employee clerk)  Constructs a grocery bill object for the given clerk
public double getTotal()  Returns the total cost of these items
public void printReceipt()  Prints a list of items

Grocery bills interact with Item objects, each of which has the public methods that follow. A
candy bar item might  cost 1.35 with a discount of 0.25 for preferred customers, meaning that
preferred customers get it for 1.10. (Some  items will have no discount, 0.0.) Currently the
preceding classes do not consider discounts. Every item in a bill is charged full price, and item
discounts are ignored.

public double getPrice()  Returns the price for this item
public double getDiscount()  Returns the discount for this item

Define a class DiscountBill that extends GroceryBill to compute discounts for preferred
customers. Its constructor accepts a parameter for whether the customer should get the discount.
Your class should also adjust the total reported for preferred customers. For example, if the total
would have been \$80 but a preferred customer is getting  \$20 in discounts, and then getTotal
should report the total as \$60 for that customer. Also keep track of the number of items on which
a customer is getting a nonzero discount and the sum of these discounts, both as a total amount
and  as a percentage of the original bill. Include the extra methods that follow, which allow a
client to ask about the discount. Return 0.0 if the customer is not a preferred customer or if no
items were discounted.

public DiscountBill(Employee clerk,
boolean preferred)
Constructs bill for given clerk
public int getDiscountCount()  Returns the number of items that were discounted, if
any
public double getDiscountAmount()  Returns the total discount for this list of items, if any
public double getDiscountPercent()  Returns the percent of the total discount as a percent of
what the total would have been otherwise

(Top Tutor) Daniel C.
(997)
School: Carnegie Mellon University
Studypool has helped 1,244,100 students

1830 tutors are online

### Related Programming questions

05/13/2013
05/13/2013
05/12/2013
05/12/2013

Brown University

1271 Tutors

California Institute of Technology

2131 Tutors

Carnegie Mellon University

982 Tutors

Columbia University

1256 Tutors

Dartmouth University

2113 Tutors

Emory University

2279 Tutors

Harvard University

599 Tutors

Massachusetts Institute of Technology

2319 Tutors

New York University

1645 Tutors

Notre Dam University

1911 Tutors

Oklahoma University

2122 Tutors

Pennsylvania State University

932 Tutors

Princeton University

1211 Tutors

Stanford University

983 Tutors

University of California

1282 Tutors

Oxford University

123 Tutors

Yale University

2325 Tutors