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 void add(Item i)  Adds the given item to this bill
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
 

Tutor Answer

(Top Tutor) Daniel C.
(997)
School: Carnegie Mellon University
PREMIUM TUTOR
Studypool has helped 1,244,100 students
Ask your homework questions. Receive quality answers!

Type your question here (or upload an image)

1830 tutors are online

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