First year of Software Engineering, and we're learning OOP within Java. Came across an extension task to gain more credits. But could not think of what to do:
First Step: Design a checkout system
Build a checkout system for a shop which sells 3 products say Bread, Milk, and Bananas. Costs of the products are : Bread - $1, Milk - $0.60 and Banana - $0.40 Build a system to checkout a shopping cart that can have multiples of these 3 products and displays the order total. Examples are: Bread, Milk, Banana = $2.00 Bread, Bread, Milk, Banana = $3.00 Milk, Banana, Milk, Banana = $2.00
As a next step: enhance the code to apply the below discounts and offers
Buy one bread and get another bread for free Buy 3 Milk for the price of 2 Buy 2 Bananas and get one free
First part was rather straightforward, i went on and completed this by doing:
public class Cart { List<String> items; double total; public Cart(){ items = new ArrayList<String>(); } public void addItems(String item){ items.add(item); } public void removeItems(String item){ items.remove(item); } public void getNumberOfItems(){ System.out.println(items.size()); } public String getItemName(int index){ return items.get(index); } public void getTotalOfCart(){ total = 0; for(String x: items){ if (x.equals("A")){ total += 3.0; }else if (x.equals("B")){ total += 5.0; }else if (x.equals("C")){ total += 2.50; } } System.out.println(total); } } But now when it comes to implementing the second part of the challenge. I have no idea where to start and what to do. I'm sure this problem is probably fairly standard in terms of implementing rules for things like discounts etc. I just wanna know what my next step(s) is/should be & where possible to start if i wanted to go further with the theory behind this.