From 7626d53f5ccb5475f5c558e25dfaff546194e30a Mon Sep 17 00:00:00 2001 From: Ram ballabh Date: Fri, 28 Feb 2020 05:34:57 +0530 Subject: [PATCH 01/14] delete main.kt --- .idea/misc.xml | 2 +- src/coffeeMachine/main.kt | 5 ----- 2 files changed, 1 insertion(+), 6 deletions(-) delete mode 100644 src/coffeeMachine/main.kt diff --git a/.idea/misc.xml b/.idea/misc.xml index a165cb3..3c79abe 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -1,6 +1,6 @@ - + \ No newline at end of file diff --git a/src/coffeeMachine/main.kt b/src/coffeeMachine/main.kt deleted file mode 100644 index 2de31af..0000000 --- a/src/coffeeMachine/main.kt +++ /dev/null @@ -1,5 +0,0 @@ -package coffeeMachine - -fun main(args: Array) { - print("Hello world!") -} \ No newline at end of file From 04434c1dac5407d694477a7da6b268104a147b8c Mon Sep 17 00:00:00 2001 From: Ram ballabh Date: Fri, 28 Feb 2020 05:35:33 +0530 Subject: [PATCH 02/14] create Main.java for execution --- src/coffeeMachine/Main.java | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 src/coffeeMachine/Main.java diff --git a/src/coffeeMachine/Main.java b/src/coffeeMachine/Main.java new file mode 100644 index 0000000..38e3caf --- /dev/null +++ b/src/coffeeMachine/Main.java @@ -0,0 +1,4 @@ +package coffeeMachine; + +public class Main { +} From e06ed02c1b011918f1996ee417c52e59a7395ae2 Mon Sep 17 00:00:00 2001 From: Ram ballabh Date: Fri, 28 Feb 2020 05:38:35 +0530 Subject: [PATCH 03/14] create CoffeeMachine.java for execution --- src/coffeeMachine/CoffeeMachine.java | 4 ++++ src/coffeeMachine/Main.java | 4 ---- 2 files changed, 4 insertions(+), 4 deletions(-) create mode 100644 src/coffeeMachine/CoffeeMachine.java delete mode 100644 src/coffeeMachine/Main.java diff --git a/src/coffeeMachine/CoffeeMachine.java b/src/coffeeMachine/CoffeeMachine.java new file mode 100644 index 0000000..9dcc0e8 --- /dev/null +++ b/src/coffeeMachine/CoffeeMachine.java @@ -0,0 +1,4 @@ +package coffeeMachine; + +public class CoffeeMachine { +} diff --git a/src/coffeeMachine/Main.java b/src/coffeeMachine/Main.java deleted file mode 100644 index 38e3caf..0000000 --- a/src/coffeeMachine/Main.java +++ /dev/null @@ -1,4 +0,0 @@ -package coffeeMachine; - -public class Main { -} From 878c227edd31e7300422b947a78e5f3a1c19b7dc Mon Sep 17 00:00:00 2001 From: Ram ballabh Date: Fri, 28 Feb 2020 05:39:31 +0530 Subject: [PATCH 04/14] make private reference of Scanner class --- src/coffeeMachine/CoffeeMachine.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/coffeeMachine/CoffeeMachine.java b/src/coffeeMachine/CoffeeMachine.java index 9dcc0e8..c54dca1 100644 --- a/src/coffeeMachine/CoffeeMachine.java +++ b/src/coffeeMachine/CoffeeMachine.java @@ -1,4 +1,7 @@ package coffeeMachine; +import java.util.Scanner; + public class CoffeeMachine { + private Scanner scanner; } From b253bc851dd6984cd9f2519cb535aa9c6777604e Mon Sep 17 00:00:00 2001 From: Ram ballabh Date: Fri, 28 Feb 2020 05:40:06 +0530 Subject: [PATCH 05/14] define fields of CoffeeMachine.java --- src/coffeeMachine/CoffeeMachine.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/coffeeMachine/CoffeeMachine.java b/src/coffeeMachine/CoffeeMachine.java index c54dca1..c12f69f 100644 --- a/src/coffeeMachine/CoffeeMachine.java +++ b/src/coffeeMachine/CoffeeMachine.java @@ -4,4 +4,9 @@ public class CoffeeMachine { private Scanner scanner; + private int water; + private int milk; + private int beans; + private int cups; + private int money; } From 68acc56b8c6996941db9ec9fd37dab5a7ecbcd38 Mon Sep 17 00:00:00 2001 From: Ram ballabh Date: Fri, 28 Feb 2020 05:41:15 +0530 Subject: [PATCH 06/14] create constructor of CoffeeMachine.java for intialisation of fields with intial values --- src/coffeeMachine/CoffeeMachine.java | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/coffeeMachine/CoffeeMachine.java b/src/coffeeMachine/CoffeeMachine.java index c12f69f..e254772 100644 --- a/src/coffeeMachine/CoffeeMachine.java +++ b/src/coffeeMachine/CoffeeMachine.java @@ -9,4 +9,13 @@ public class CoffeeMachine { private int beans; private int cups; private int money; + private CoffeeMachine() { + this.scanner = new Scanner(System.in); + this.water = 400; + this.milk = 540; + this.beans = 120; + this.cups = 9; + this.money = 550; + } + } From e05260b60a9abb78ea31fcc9b02acbec5a583746 Mon Sep 17 00:00:00 2001 From: Ram ballabh Date: Fri, 28 Feb 2020 05:44:49 +0530 Subject: [PATCH 07/14] create printState() to print the output in given format --- src/coffeeMachine/CoffeeMachine.java | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/coffeeMachine/CoffeeMachine.java b/src/coffeeMachine/CoffeeMachine.java index e254772..66b41b1 100644 --- a/src/coffeeMachine/CoffeeMachine.java +++ b/src/coffeeMachine/CoffeeMachine.java @@ -17,5 +17,13 @@ private CoffeeMachine() { this.cups = 9; this.money = 550; } + public void printState() { + System.out.println("The coffee machine has:\n" + + String.format("%d of water\n", this.water) + + String.format("%d of milk\n", this.milk) + + String.format("%d of coffee beans\n", this.beans) + + String.format("%d of disposable cups\n", this.cups) + + String.format("%d of money", this.money)); + } } From ce8e09ad8d29f96439c19b82b68bccaa73feef9a Mon Sep 17 00:00:00 2001 From: Ram ballabh Date: Fri, 28 Feb 2020 05:46:21 +0530 Subject: [PATCH 08/14] create buy() method --- src/coffeeMachine/CoffeeMachine.java | 62 ++++++++++++++++++++++++++++ 1 file changed, 62 insertions(+) diff --git a/src/coffeeMachine/CoffeeMachine.java b/src/coffeeMachine/CoffeeMachine.java index 66b41b1..4a9c129 100644 --- a/src/coffeeMachine/CoffeeMachine.java +++ b/src/coffeeMachine/CoffeeMachine.java @@ -25,5 +25,67 @@ public void printState() { String.format("%d of disposable cups\n", this.cups) + String.format("%d of money", this.money)); } + private void processBuy() { + System.out.println("What do you want to buy? 1 - espresso, 2 - latte, 3 - cappuccino, back - to main menu:"); + String type = this.scanner.nextLine(); + + if(type.equals("back")) return;; + + this.buy(Integer.valueOf(type)); + } + private void buy(int type) { + int water = 0; + int milk = 0; + int beans = 0; + int money = 0; + + switch (type) { + case 1: { + water = 250; + milk = 0; + beans = 16; + money = 4; + break; + } + case 2: { + water = 350; + milk = 75; + beans = 20; + money = 7; + break; + } + case 3:{ + water = 200; + milk = 100; + beans = 12; + money = 6; + break; + } + default: { + break; + } + } + + if(this.water < water) { + System.out.println("Sorry, not enough water!"); + } + else if(this.milk < milk) { + System.out.println("Sorry, not enough milk!"); + } + else if(this.beans < beans) { + System.out.println("Sorry, not enough coffee beans!"); + } + else if(this.cups < 1) { + System.out.println("Sorry, not enough disposable cups!"); + } else { + System.out.println("I have enough resources, making you a coffee!"); + this.water -= water; + this.milk -= milk; + this.beans -= beans; + this.cups--; + this.money += money; + } + } + } From 8ba18193b80b1bc15d8d55a7884fdf79d554b153 Mon Sep 17 00:00:00 2001 From: Ram ballabh Date: Fri, 28 Feb 2020 05:48:16 +0530 Subject: [PATCH 09/14] create processFill() to fill the coffee Machine --- src/coffeeMachine/CoffeeMachine.java | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/src/coffeeMachine/CoffeeMachine.java b/src/coffeeMachine/CoffeeMachine.java index 4a9c129..8aacdd7 100644 --- a/src/coffeeMachine/CoffeeMachine.java +++ b/src/coffeeMachine/CoffeeMachine.java @@ -33,6 +33,26 @@ private void processBuy() { this.buy(Integer.valueOf(type)); } + + private void processFill() { + System.out.println("Write how many ml of water do you want to add:"); + int water = scanner.nextInt(); + System.out.println("Write how many ml of milk do you want to add:"); + int milk = scanner.nextInt(); + System.out.println("Write how many grams of coffee beans do you want to add:"); + int beans = scanner.nextInt(); + System.out.println("Write how many disposable cups of coffee do you want to add:"); + int cups = scanner.nextInt(); + + this.fill(water, milk, beans, cups); + + } + private void fill(int water, int milk, int beans, int cups) { + this.water +=water; + this.milk +=milk; + this.beans += beans; + this.cups += cups; + } private void buy(int type) { int water = 0; int milk = 0; From 4c6a746c91f4bc8a8d45964357370c6639bbda05 Mon Sep 17 00:00:00 2001 From: Ram ballabh Date: Fri, 28 Feb 2020 05:49:31 +0530 Subject: [PATCH 10/14] create processTake() to take the money from coffee Machine --- src/coffeeMachine/CoffeeMachine.java | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/coffeeMachine/CoffeeMachine.java b/src/coffeeMachine/CoffeeMachine.java index 8aacdd7..d323fe8 100644 --- a/src/coffeeMachine/CoffeeMachine.java +++ b/src/coffeeMachine/CoffeeMachine.java @@ -53,6 +53,14 @@ private void fill(int water, int milk, int beans, int cups) { this.beans += beans; this.cups += cups; } + private void processTake() { + System.out.println(String.format("I gave you $%d", this.money)); + this.take(); + } + private void take() { + this.money = 0; + } + private void buy(int type) { int water = 0; int milk = 0; From 530098ef95007db42f2b3c3c43f0273b074811a7 Mon Sep 17 00:00:00 2001 From: Ram ballabh Date: Fri, 28 Feb 2020 05:56:41 +0530 Subject: [PATCH 11/14] create processTake() of boolean type to perform all the process in coffee Machine --- src/coffeeMachine/CoffeeMachine.java | 30 +++++++++++++++++++++++++++- 1 file changed, 29 insertions(+), 1 deletion(-) diff --git a/src/coffeeMachine/CoffeeMachine.java b/src/coffeeMachine/CoffeeMachine.java index d323fe8..fcf5632 100644 --- a/src/coffeeMachine/CoffeeMachine.java +++ b/src/coffeeMachine/CoffeeMachine.java @@ -114,6 +114,34 @@ else if(this.cups < 1) { this.money += money; } } + public boolean processAction() { + System.out.println("Write action (buy, fill, take, remaining, exit):"); + String action = this.scanner.nextLine(); - + switch (action) { + case "buy": { + this.processBuy(); + break; + } + case "fill": { + this.processFill(); + break; + } + case "take": { + this.processTake(); + break; + } + case "remaining": { + this.printState(); + break; + } + case "exit": { + return false; + } + default: { + break; + } + } + return true; + } } From 14976c8272bcb4f7fdb4f695bce55ba4e65f4883 Mon Sep 17 00:00:00 2001 From: Ram ballabh Date: Fri, 28 Feb 2020 05:57:37 +0530 Subject: [PATCH 12/14] create Main class for execution of coffeeMachine --- src/main/Main.java | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 src/main/Main.java diff --git a/src/main/Main.java b/src/main/Main.java new file mode 100644 index 0000000..31910cb --- /dev/null +++ b/src/main/Main.java @@ -0,0 +1,4 @@ +package main; + +public class Main { +} From e903cd9d707d3b19a10f2185630f67f12b0b0f54 Mon Sep 17 00:00:00 2001 From: Ram ballabh Date: Fri, 28 Feb 2020 05:59:56 +0530 Subject: [PATCH 13/14] make constructor public --- src/coffeeMachine/CoffeeMachine.java | 2 +- src/main/Main.java | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/coffeeMachine/CoffeeMachine.java b/src/coffeeMachine/CoffeeMachine.java index fcf5632..5a84cb0 100644 --- a/src/coffeeMachine/CoffeeMachine.java +++ b/src/coffeeMachine/CoffeeMachine.java @@ -9,7 +9,7 @@ public class CoffeeMachine { private int beans; private int cups; private int money; - private CoffeeMachine() { + public CoffeeMachine() { this.scanner = new Scanner(System.in); this.water = 400; this.milk = 540; diff --git a/src/main/Main.java b/src/main/Main.java index 31910cb..14867b1 100644 --- a/src/main/Main.java +++ b/src/main/Main.java @@ -1,4 +1,9 @@ package main; +import coffeeMachine.CoffeeMachine; + public class Main { + public static void main(String[] args) { + CoffeeMachine machine = new CoffeeMachine(); + } } From e0f6c6890cb8e76825323c155102710d80bf028e Mon Sep 17 00:00:00 2001 From: Ram ballabh Date: Fri, 28 Feb 2020 06:08:23 +0530 Subject: [PATCH 14/14] end commit --- src/coffeeMachine/CoffeeMachine.java | 10 ++++++---- src/main/Main.java | 5 +++++ 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/src/coffeeMachine/CoffeeMachine.java b/src/coffeeMachine/CoffeeMachine.java index 5a84cb0..7bd70f3 100644 --- a/src/coffeeMachine/CoffeeMachine.java +++ b/src/coffeeMachine/CoffeeMachine.java @@ -47,16 +47,18 @@ private void processFill() { this.fill(water, milk, beans, cups); } + private void processTake() { + System.out.println(String.format("I gave you $%d", this.money)); + this.take(); + } + private void fill(int water, int milk, int beans, int cups) { this.water +=water; this.milk +=milk; this.beans += beans; this.cups += cups; } - private void processTake() { - System.out.println(String.format("I gave you $%d", this.money)); - this.take(); - } + private void take() { this.money = 0; } diff --git a/src/main/Main.java b/src/main/Main.java index 14867b1..38e86be 100644 --- a/src/main/Main.java +++ b/src/main/Main.java @@ -5,5 +5,10 @@ public class Main { public static void main(String[] args) { CoffeeMachine machine = new CoffeeMachine(); + boolean status; + do { + status = machine.processAction(); + } + while(status); } }