From b181a67e7c3c8be5177bedc9bedf5c57f3b12038 Mon Sep 17 00:00:00 2001 From: Jeremy Date: Sat, 26 Jun 2021 22:01:58 -0400 Subject: [PATCH 01/39] Added 1 Sum test. --- pom.xml | 8 ++++++++ src/main/java/Calculator.java | 7 +++++++ src/main/java/Person.java | 2 ++ src/test/java/CalculatorEngineTest.java | 21 +++++++++++++++++++++ 4 files changed, 38 insertions(+) create mode 100644 src/main/java/Calculator.java create mode 100644 src/main/java/Person.java create mode 100644 src/test/java/CalculatorEngineTest.java diff --git a/pom.xml b/pom.xml index e7cb4f6..d8cd763 100644 --- a/pom.xml +++ b/pom.xml @@ -7,6 +7,14 @@ com.zipcodewilmington scientific_calculator 1.0-SNAPSHOT + + + junit + junit + 4.12 + test + + \ No newline at end of file diff --git a/src/main/java/Calculator.java b/src/main/java/Calculator.java new file mode 100644 index 0000000..82737fa --- /dev/null +++ b/src/main/java/Calculator.java @@ -0,0 +1,7 @@ +public class Calculator { + public int sum(int firstNum, int secondNum) { + int result; + result = firstNum + secondNum; + return result; + } +} diff --git a/src/main/java/Person.java b/src/main/java/Person.java new file mode 100644 index 0000000..425d40e --- /dev/null +++ b/src/main/java/Person.java @@ -0,0 +1,2 @@ +public class Person { +} diff --git a/src/test/java/CalculatorEngineTest.java b/src/test/java/CalculatorEngineTest.java new file mode 100644 index 0000000..af2fceb --- /dev/null +++ b/src/test/java/CalculatorEngineTest.java @@ -0,0 +1,21 @@ +import org.junit.Assert; +import org.junit.Test; + + + +public class CalculatorEngineTest { + + @Test + public void testSum() { + // Given + Calculator calculator = new Calculator(); + // When + int result; + result = calculator.sum(2, 2); + // Then + if (result != 4) { // if 2 + 2 != 4 + Assert.fail(); + } + } +} + From 8837f2215fcac7e73a6cb5d8cf003cbb4e879c82 Mon Sep 17 00:00:00 2001 From: Jeremy Date: Sat, 26 Jun 2021 23:54:39 -0400 Subject: [PATCH 02/39] Connected with Main Application and Console --- src/main/java/Person.java | 2 -- .../scientificcalculator}/Calculator.java | 4 +++- .../scientificcalculator/Console.java | 5 +++- .../scientificcalculator/MainApplication.java | 23 ++++++++++++++++++- src/test/java/CalculatorEngineTest.java | 13 +++++++++++ 5 files changed, 42 insertions(+), 5 deletions(-) delete mode 100644 src/main/java/Person.java rename src/main/java/{ => com/zipcodewilmington/scientificcalculator}/Calculator.java (51%) diff --git a/src/main/java/Person.java b/src/main/java/Person.java deleted file mode 100644 index 425d40e..0000000 --- a/src/main/java/Person.java +++ /dev/null @@ -1,2 +0,0 @@ -public class Person { -} diff --git a/src/main/java/Calculator.java b/src/main/java/com/zipcodewilmington/scientificcalculator/Calculator.java similarity index 51% rename from src/main/java/Calculator.java rename to src/main/java/com/zipcodewilmington/scientificcalculator/Calculator.java index 82737fa..ee7f429 100644 --- a/src/main/java/Calculator.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/Calculator.java @@ -1,5 +1,7 @@ +package com.zipcodewilmington.scientificcalculator; + public class Calculator { - public int sum(int firstNum, int secondNum) { + public static int sum(int firstNum, int secondNum) { int result; result = firstNum + secondNum; return result; diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/Console.java b/src/main/java/com/zipcodewilmington/scientificcalculator/Console.java index 83f0e97..a73c358 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/Console.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/Console.java @@ -23,7 +23,10 @@ public static String getStringInput(String prompt) { } public static Integer getIntegerInput(String prompt) { - return null; + Scanner scanner = new Scanner(System.in); + System.out.println(prompt); + Integer userInput = scanner.nextInt(); + return userInput; } public static Double getDoubleInput(String prompt) { diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java b/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java index 5f42132..ac513a9 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java @@ -1,13 +1,34 @@ package com.zipcodewilmington.scientificcalculator; +import java.util.Scanner; + /** * Created by leon on 2/9/18. */ public class MainApplication { public static void main(String[] args) { + + Integer y = 0; + Integer z = 0; + + Scanner scanObject = new Scanner(System.in); + Console.println("Welcome to my calculator!"); + + Integer i = Console.getIntegerInput("Please enter two numbers"); + + y = scanObject.nextInt(); + z = scanObject.nextInt(); + + System.out.println("Adding now..."); + int x = Calculator.sum(y, z); + System.out.println(x); + + String s = Console.getStringInput("Enter a string"); - Integer i = Console.getIntegerInput("Enter an integer"); + + + Double d = Console.getDoubleInput("Enter a double."); Console.println("The user input %s as a string", s); diff --git a/src/test/java/CalculatorEngineTest.java b/src/test/java/CalculatorEngineTest.java index af2fceb..a2824dd 100644 --- a/src/test/java/CalculatorEngineTest.java +++ b/src/test/java/CalculatorEngineTest.java @@ -1,3 +1,4 @@ +import com.zipcodewilmington.scientificcalculator.Calculator; import org.junit.Assert; import org.junit.Test; @@ -17,5 +18,17 @@ public void testSum() { Assert.fail(); } } + @Test + public void testSum1() { + // Given + Calculator calculator = new Calculator(); + // When + int result; + result = calculator.sum(1200, 500); + // Then + if (result != 1700) { // if 1200 + 500 != 1700 + Assert.fail(); + } + } } From fd36d98662ddfa2284c855466199c15e229b70a1 Mon Sep 17 00:00:00 2001 From: Jeremy Date: Sun, 27 Jun 2021 00:48:30 -0400 Subject: [PATCH 03/39] It Works --- .../scientificcalculator/MainApplication.java | 12 ++++++++++-- .../scientific_calculator}/CalculatorEngineTest.java | 2 ++ 2 files changed, 12 insertions(+), 2 deletions(-) rename src/test/java/{ => com/zipcodewilmington/scientific_calculator}/CalculatorEngineTest.java (93%) diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java b/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java index ac513a9..af154c4 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java @@ -15,10 +15,18 @@ public static void main(String[] args) { Console.println("Welcome to my calculator!"); - Integer i = Console.getIntegerInput("Please enter two numbers"); + // Connected the sum method + + System.out.println("Please enter a number"); y = scanObject.nextInt(); + scanObject.nextLine(); + + // System.out.println(y); + + System.out.println("Please enter another number"); z = scanObject.nextInt(); + // scanObject.nextLine(); System.out.println("Adding now..."); int x = Calculator.sum(y, z); @@ -32,7 +40,7 @@ public static void main(String[] args) { Double d = Console.getDoubleInput("Enter a double."); Console.println("The user input %s as a string", s); - Console.println("The user input %s as a integer", i); + // Console.println("The user input %s as a integer", i); Console.println("The user input %s as a d", d); } } diff --git a/src/test/java/CalculatorEngineTest.java b/src/test/java/com/zipcodewilmington/scientific_calculator/CalculatorEngineTest.java similarity index 93% rename from src/test/java/CalculatorEngineTest.java rename to src/test/java/com/zipcodewilmington/scientific_calculator/CalculatorEngineTest.java index a2824dd..1ad35ba 100644 --- a/src/test/java/CalculatorEngineTest.java +++ b/src/test/java/com/zipcodewilmington/scientific_calculator/CalculatorEngineTest.java @@ -1,3 +1,5 @@ +package com.zipcodewilmington.scientific_calculator; + import com.zipcodewilmington.scientificcalculator.Calculator; import org.junit.Assert; import org.junit.Test; From 2f024f149daa238e9ddaada195fc06c903b52455 Mon Sep 17 00:00:00 2001 From: Jeremy Date: Sun, 27 Jun 2021 03:08:11 -0400 Subject: [PATCH 04/39] Added Subtraction with test cases --- .../scientificcalculator/Calculator.java | 8 +++++- .../{Console.java => CalculatorEngine.java} | 2 +- ...lication.java => CalculatorInterface.java} | 17 ++++++----- ...est.java => CalculatorInterfacesTest.java} | 28 +++++++++++++++++-- 4 files changed, 42 insertions(+), 13 deletions(-) rename src/main/java/com/zipcodewilmington/scientificcalculator/{Console.java => CalculatorEngine.java} (96%) rename src/main/java/com/zipcodewilmington/scientificcalculator/{MainApplication.java => CalculatorInterface.java} (58%) rename src/test/java/com/zipcodewilmington/scientific_calculator/{CalculatorEngineTest.java => CalculatorInterfacesTest.java} (52%) diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/Calculator.java b/src/main/java/com/zipcodewilmington/scientificcalculator/Calculator.java index ee7f429..029472f 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/Calculator.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/Calculator.java @@ -1,9 +1,15 @@ package com.zipcodewilmington.scientificcalculator; public class Calculator { + private static int result; + public static int sum(int firstNum, int secondNum) { - int result; result = firstNum + secondNum; return result; } + + public int subtract(int firstNum, int secondNum) { + result = firstNum - secondNum; + return result; + } } diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/Console.java b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java similarity index 96% rename from src/main/java/com/zipcodewilmington/scientificcalculator/Console.java rename to src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java index a73c358..15d76af 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/Console.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java @@ -5,7 +5,7 @@ /** * Created by leon on 2/9/18. */ -public class Console { +public class CalculatorEngine { public static void print(String output, Object... args) { System.out.printf(output, args); diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorInterface.java similarity index 58% rename from src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java rename to src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorInterface.java index af154c4..0d586c7 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorInterface.java @@ -5,7 +5,7 @@ /** * Created by leon on 2/9/18. */ -public class MainApplication { +public class CalculatorInterface { public static void main(String[] args) { Integer y = 0; @@ -13,9 +13,8 @@ public static void main(String[] args) { Scanner scanObject = new Scanner(System.in); - Console.println("Welcome to my calculator!"); - - // Connected the sum method + CalculatorEngine.println("Welcome to the calculator!\nWhat would you like to do?"); + System.out.println("1. Basic Functions \n2. Scientific Functions \n3. Something Fun!"); System.out.println("Please enter a number"); @@ -23,7 +22,7 @@ public static void main(String[] args) { scanObject.nextLine(); // System.out.println(y); - + // Connected the sum method System.out.println("Please enter another number"); z = scanObject.nextInt(); // scanObject.nextLine(); @@ -33,14 +32,14 @@ public static void main(String[] args) { System.out.println(x); - String s = Console.getStringInput("Enter a string"); + String s = CalculatorEngine.getStringInput("Enter a string"); - Double d = Console.getDoubleInput("Enter a double."); + Double d = CalculatorEngine.getDoubleInput("Enter a double."); - Console.println("The user input %s as a string", s); + CalculatorEngine.println("The user input %s as a string", s); // Console.println("The user input %s as a integer", i); - Console.println("The user input %s as a d", d); + CalculatorEngine.println("The user input %s as a d", d); } } diff --git a/src/test/java/com/zipcodewilmington/scientific_calculator/CalculatorEngineTest.java b/src/test/java/com/zipcodewilmington/scientific_calculator/CalculatorInterfacesTest.java similarity index 52% rename from src/test/java/com/zipcodewilmington/scientific_calculator/CalculatorEngineTest.java rename to src/test/java/com/zipcodewilmington/scientific_calculator/CalculatorInterfacesTest.java index 1ad35ba..1c468b6 100644 --- a/src/test/java/com/zipcodewilmington/scientific_calculator/CalculatorEngineTest.java +++ b/src/test/java/com/zipcodewilmington/scientific_calculator/CalculatorInterfacesTest.java @@ -6,7 +6,7 @@ -public class CalculatorEngineTest { +public class CalculatorInterfacesTest { @Test public void testSum() { @@ -32,5 +32,29 @@ public void testSum1() { Assert.fail(); } } -} + @Test + public void testSubtract() { + // Given + Calculator calculator = new Calculator(); + // When + int result; + result = calculator.subtract(10, 5); + // Then + if (result != 5) { // 10 - 5 = 5 + Assert.fail(); + } + } + @Test + public void testSubtract1() { + // Given + Calculator calculator = new Calculator(); + // When + int result; + result = calculator.subtract(20, 3); + // Then + if (result != 17) { // 20 - 3 = 17 + Assert.fail(); + } + } + } From 3bf3e266ccaf36f15dd71e39de4b4f8bf200920e Mon Sep 17 00:00:00 2001 From: Jeremy Date: Sun, 27 Jun 2021 04:04:42 -0400 Subject: [PATCH 05/39] Worked on switch statement --- .../CalculatorEngine.java | 3 +++ .../CalculatorInterface.java | 25 ++++++++++++++++--- 2 files changed, 25 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java index 15d76af..c5e12d2 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java @@ -11,6 +11,9 @@ public static void print(String output, Object... args) { System.out.printf(output, args); } + + + public static void println(String output, Object... args) { print(output + "\n", args); } diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorInterface.java b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorInterface.java index 0d586c7..97db1c1 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorInterface.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorInterface.java @@ -6,16 +6,35 @@ * Created by leon on 2/9/18. */ public class CalculatorInterface { - public static void main(String[] args) { - Integer y = 0; - Integer z = 0; + static Integer y = 0; + static Integer z = 0; + private static String prompt; + + + public static void main(String[] args) { Scanner scanObject = new Scanner(System.in); CalculatorEngine.println("Welcome to the calculator!\nWhat would you like to do?"); System.out.println("1. Basic Functions \n2. Scientific Functions \n3. Something Fun!"); + + public String menuOption1(String prompt) { + } + switch (prompt) { + case "1": + System.out.println("Here are some Basic Functions. \n+ \nAddition , - \n-Subtraction , / \n-Division , * \n-Multiplication"; + break; + case "2": + System.out.println("Here are some Scientific Functions. \nSine() \nCosine()"); + break; + case "3": + System.out.println("Something Fun!"); + break; + } + + System.out.println("Please enter a number"); y = scanObject.nextInt(); From 3f110d23d89bf31579b4671722cd7c8ea1c5c890 Mon Sep 17 00:00:00 2001 From: charnaexw Date: Sun, 27 Jun 2021 12:02:07 -0400 Subject: [PATCH 06/39] Added the start of switch. --- .../scientificcalculator/Calculator.java | 1 + .../scientificcalculator/CalculatorEngine.java | 2 ++ .../scientificcalculator/CalculatorInterface.java | 1 + .../scientificcalculator/Scientific.java | 12 ++++++++++++ 4 files changed, 16 insertions(+) create mode 100644 src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/Calculator.java b/src/main/java/com/zipcodewilmington/scientificcalculator/Calculator.java index 029472f..cafd740 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/Calculator.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/Calculator.java @@ -12,4 +12,5 @@ public int subtract(int firstNum, int secondNum) { result = firstNum - secondNum; return result; } + } diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java index c5e12d2..d4be3b5 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java @@ -35,4 +35,6 @@ public static Integer getIntegerInput(String prompt) { public static Double getDoubleInput(String prompt) { return null; } + + } diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorInterface.java b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorInterface.java index 97db1c1..b6ea84b 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorInterface.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorInterface.java @@ -50,6 +50,7 @@ public String menuOption1(String prompt) { int x = Calculator.sum(y, z); System.out.println(x); + String String s = CalculatorEngine.getStringInput("Enter a string"); diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java b/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java new file mode 100644 index 0000000..538cbe6 --- /dev/null +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java @@ -0,0 +1,12 @@ +package com.zipcodewilmington.scientificcalculator; + +import com.sun.codemodel.internal.JSwitch; + +public class Scientific { + + public static Double triganometry(firstNum, secondNum) + + switch (operator)( + case "cos": + ) +} From a8b9bc00b0fdcd2172a5259d65a7c710394425d7 Mon Sep 17 00:00:00 2001 From: Jeremy Date: Sun, 27 Jun 2021 12:49:58 -0400 Subject: [PATCH 07/39] Tried to fix the switch statement in the Main application. --- README.md | 6 +-- .../scientificcalculator/Calculator.java | 11 ------ .../CalculatorDisplay.java | 4 ++ .../CalculatorEngine.java | 37 ++++-------------- .../scientificcalculator/Console.java | 38 +++++++++++++++++++ ...torInterface.java => MainApplication.java} | 30 +++++++++------ ...esTest.java => CalculatorDisplayTest.java} | 20 +++++----- 7 files changed, 80 insertions(+), 66 deletions(-) create mode 100644 src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorDisplay.java create mode 100644 src/main/java/com/zipcodewilmington/scientificcalculator/Console.java rename src/main/java/com/zipcodewilmington/scientificcalculator/{CalculatorInterface.java => MainApplication.java} (66%) rename src/test/java/com/zipcodewilmington/scientific_calculator/{CalculatorInterfacesTest.java => CalculatorDisplayTest.java} (61%) diff --git a/README.md b/README.md index 8402302..f2f084a 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,7 @@ ## Description -In this project your team will build a small app to function as a calculator. This app will be built in Java, and will use the topics and techniques discussed during the week. +In this project your team will build a small app to function as a calculatorEngine. This app will be built in Java, and will use the topics and techniques discussed during the week. Your team should work on this project in a single repository. Click the `fork` button in the top right corner to create a copy of this repository in one of your github accounts. You can go through the [GitHub forking tutorial](https://help.github.com/articles/fork-a-repo/) if you need additional practice with this. @@ -23,7 +23,7 @@ You must produce UML diagrams for your program. All classes (excluding test clas All calculators should have the following features: -- A state, representing the value currently displayed on the calculator (default 0) * +- A state, representing the value currently displayed on the calculatorEngine (default 0) * - Get the current number on the display * - Clear the display * - Change the number on the display * @@ -67,7 +67,7 @@ Each operation should automatically update the display ### Custom Features -In addition to the Core and Scientific features, you are required to create at least two of your own features for the calculator. They can be any two features that are not already covered and that you can implement as you see fit. These features must be properly tested. +In addition to the Core and Scientific features, you are required to create at least two of your own features for the calculatorEngine. They can be any two features that are not already covered and that you can implement as you see fit. These features must be properly tested. ### Hints diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/Calculator.java b/src/main/java/com/zipcodewilmington/scientificcalculator/Calculator.java index 029472f..e75f4d1 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/Calculator.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/Calculator.java @@ -1,15 +1,4 @@ package com.zipcodewilmington.scientificcalculator; public class Calculator { - private static int result; - - public static int sum(int firstNum, int secondNum) { - result = firstNum + secondNum; - return result; - } - - public int subtract(int firstNum, int secondNum) { - result = firstNum - secondNum; - return result; - } } diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorDisplay.java b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorDisplay.java new file mode 100644 index 0000000..d24bf2c --- /dev/null +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorDisplay.java @@ -0,0 +1,4 @@ +package com.zipcodewilmington.scientificcalculator; + +public class CalculatorDisplay { +} diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java index c5e12d2..ae9e3f7 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java @@ -1,38 +1,15 @@ package com.zipcodewilmington.scientificcalculator; -import java.util.Scanner; - -/** - * Created by leon on 2/9/18. - */ public class CalculatorEngine { + private static int result; - public static void print(String output, Object... args) { - System.out.printf(output, args); - } - - - - - public static void println(String output, Object... args) { - print(output + "\n", args); - } - - public static String getStringInput(String prompt) { - Scanner scanner = new Scanner(System.in); - println(prompt); - String userInput = scanner.nextLine(); - return userInput; - } - - public static Integer getIntegerInput(String prompt) { - Scanner scanner = new Scanner(System.in); - System.out.println(prompt); - Integer userInput = scanner.nextInt(); - return userInput; + public static int sum(int firstNum, int secondNum) { + result = firstNum + secondNum; + return result; } - public static Double getDoubleInput(String prompt) { - return null; + public int subtract(int firstNum, int secondNum) { + result = firstNum - secondNum; + return result; } } diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/Console.java b/src/main/java/com/zipcodewilmington/scientificcalculator/Console.java new file mode 100644 index 0000000..c8beab8 --- /dev/null +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/Console.java @@ -0,0 +1,38 @@ +package com.zipcodewilmington.scientificcalculator; + +import java.util.Scanner; + +/** + * Created by leon on 2/9/18. + */ +public class Console { + + public static void print(String output, Object... args) { + System.out.printf(output, args); + } + + + + + public static void println(String output, Object... args) { + print(output + "\n", args); + } + + public static String getStringInput(String prompt) { + Scanner scanner = new Scanner(System.in); + println(prompt); + String userInput = scanner.nextLine(); + return userInput; + } + + public static Integer getIntegerInput(String prompt) { + Scanner scanner = new Scanner(System.in); + System.out.println(prompt); + Integer userInput = scanner.nextInt(); + return userInput; + } + + public static Double getDoubleInput(String prompt) { + return null; + } +} diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorInterface.java b/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java similarity index 66% rename from src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorInterface.java rename to src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java index 97db1c1..fba4983 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorInterface.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java @@ -5,7 +5,7 @@ /** * Created by leon on 2/9/18. */ -public class CalculatorInterface { +public class MainApplication { static Integer y = 0; static Integer z = 0; @@ -16,15 +16,17 @@ public static void main(String[] args) { Scanner scanObject = new Scanner(System.in); - CalculatorEngine.println("Welcome to the calculator!\nWhat would you like to do?"); + Console.println("Welcome to the calculator!\nWhat would you like to do?"); System.out.println("1. Basic Functions \n2. Scientific Functions \n3. Something Fun!"); + menuOption1(); + } - - public String menuOption1(String prompt) { - } - switch (prompt) { + public static String menuOption1() { + String prompt; + prompt = Console.getStringInput("1, 2, 3"); + switch () { case "1": - System.out.println("Here are some Basic Functions. \n+ \nAddition , - \n-Subtraction , / \n-Division , * \n-Multiplication"; + System.out.println("Here are some Basic Functions. \n+ \nAddition , - \n-Subtraction , / \n-Division , * \n-Multiplication"); break; case "2": System.out.println("Here are some Scientific Functions. \nSine() \nCosine()"); @@ -32,8 +34,12 @@ public String menuOption1(String prompt) { case "3": System.out.println("Something Fun!"); break; + default: + Console.println("[ %s ] is not a valid input!", prompt); + break; } +/* System.out.println("Please enter a number"); @@ -49,16 +55,16 @@ public String menuOption1(String prompt) { System.out.println("Adding now..."); int x = Calculator.sum(y, z); System.out.println(x); +*/ - - String s = CalculatorEngine.getStringInput("Enter a string"); + String s = Console.getStringInput("Enter a string"); - Double d = CalculatorEngine.getDoubleInput("Enter a double."); + Double d = Console.getDoubleInput("Enter a double."); - CalculatorEngine.println("The user input %s as a string", s); + Console.println("The user input %s as a string", s); // Console.println("The user input %s as a integer", i); - CalculatorEngine.println("The user input %s as a d", d); + Console.println("The user input %s as a d", d); } } diff --git a/src/test/java/com/zipcodewilmington/scientific_calculator/CalculatorInterfacesTest.java b/src/test/java/com/zipcodewilmington/scientific_calculator/CalculatorDisplayTest.java similarity index 61% rename from src/test/java/com/zipcodewilmington/scientific_calculator/CalculatorInterfacesTest.java rename to src/test/java/com/zipcodewilmington/scientific_calculator/CalculatorDisplayTest.java index 1c468b6..0279f28 100644 --- a/src/test/java/com/zipcodewilmington/scientific_calculator/CalculatorInterfacesTest.java +++ b/src/test/java/com/zipcodewilmington/scientific_calculator/CalculatorDisplayTest.java @@ -1,20 +1,20 @@ package com.zipcodewilmington.scientific_calculator; -import com.zipcodewilmington.scientificcalculator.Calculator; +import com.zipcodewilmington.scientificcalculator.CalculatorEngine; import org.junit.Assert; import org.junit.Test; -public class CalculatorInterfacesTest { +public class CalculatorDisplayTest { @Test public void testSum() { // Given - Calculator calculator = new Calculator(); + CalculatorEngine calculatorEngine = new CalculatorEngine(); // When int result; - result = calculator.sum(2, 2); + result = calculatorEngine.sum(2, 2); // Then if (result != 4) { // if 2 + 2 != 4 Assert.fail(); @@ -23,10 +23,10 @@ public void testSum() { @Test public void testSum1() { // Given - Calculator calculator = new Calculator(); + CalculatorEngine calculatorEngine = new CalculatorEngine(); // When int result; - result = calculator.sum(1200, 500); + result = calculatorEngine.sum(1200, 500); // Then if (result != 1700) { // if 1200 + 500 != 1700 Assert.fail(); @@ -35,10 +35,10 @@ public void testSum1() { @Test public void testSubtract() { // Given - Calculator calculator = new Calculator(); + CalculatorEngine calculatorEngine = new CalculatorEngine(); // When int result; - result = calculator.subtract(10, 5); + result = calculatorEngine.subtract(10, 5); // Then if (result != 5) { // 10 - 5 = 5 Assert.fail(); @@ -47,10 +47,10 @@ public void testSubtract() { @Test public void testSubtract1() { // Given - Calculator calculator = new Calculator(); + CalculatorEngine calculatorEngine = new CalculatorEngine(); // When int result; - result = calculator.subtract(20, 3); + result = calculatorEngine.subtract(20, 3); // Then if (result != 17) { // 20 - 3 = 17 Assert.fail(); From d86c99d32d8953df54cbe60ab745f8013be142db Mon Sep 17 00:00:00 2001 From: charnaexw Date: Sun, 27 Jun 2021 16:17:16 -0400 Subject: [PATCH 08/39] Added COS SIN TAN + inverse --- .../scientificcalculator/MainApplication.java | 6 +-- .../scientificcalculator/Scientific.java | 43 +++++++++++++++++-- 2 files changed, 42 insertions(+), 7 deletions(-) diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java b/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java index 57544b2..d8682a1 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java @@ -29,7 +29,7 @@ public static String menuOption1() { System.out.println("Here are some Basic Functions. \n+ \nAddition , - \n-Subtraction , / \n-Division , * \n-Multiplication"); break; case "2": - System.out.println("Here are some Scientific Functions. \nSine() \nCosine()"); + System.out.println("Here are some Scientific Functions. \nSine() \nCosine() \nTangant"); break; case "3": System.out.println("Something Fun!"); @@ -57,13 +57,13 @@ public static String menuOption1() { System.out.println(x); */ -<<<<<<< HEAD:src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java +//<<<<<<< HEAD:src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java String s = Console.getStringInput("Enter a string"); ======= String String s = CalculatorEngine.getStringInput("Enter a string"); ->>>>>>> 67032e40a3e1b20aaf10917261cc55a57dbfe45b:src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorInterface.java +//>>>>>>> 67032e40a3e1b20aaf10917261cc55a57dbfe45b:src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorInterface.java diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java b/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java index 538cbe6..c24d054 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java @@ -3,10 +3,45 @@ import com.sun.codemodel.internal.JSwitch; public class Scientific { + public static void main(String[]args) { + int firstNum = 0; + double answer = 0.0; + char operator = 0; + + switch (operator) { + case "cos": + answer = Math.cos(firstNum); + break; + case "tan": + answer = Math.sin(firstNum); + break; + + case "sin": + answer = Math.tan(firstNum); + break; + + case "acos": + answer = Math.acos(firstNum); + break; + + case "atan": + answer = Math.atan(firstNum); + break; + + case "asin": + answer = Math.asin(firstNum); + break; + + } + } + public static void long factorial(int n) { + long fact = 1; + for (int i = 2; i <= n; i++) { + fact = fact * i; + } + return fact; + } + - public static Double triganometry(firstNum, secondNum) - switch (operator)( - case "cos": - ) } From 322ed802407197f31b119749d3c41db457f86dfe Mon Sep 17 00:00:00 2001 From: charnaexw Date: Sun, 27 Jun 2021 17:18:05 -0400 Subject: [PATCH 09/39] Added another switch(sqrt, sq, factorial, cubed) --- .../scientificcalculator/Scientific.java | 36 ++++++++++++++++--- 1 file changed, 32 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java b/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java index c24d054..ecba18e 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java @@ -3,7 +3,7 @@ import com.sun.codemodel.internal.JSwitch; public class Scientific { - public static void main(String[]args) { + public static void main java.lang.String { int firstNum = 0; double answer = 0.0; char operator = 0; @@ -32,14 +32,42 @@ public static void main(String[]args) { answer = Math.asin(firstNum); break; + default: + System.out.println("ERR"); + } + switch (operator){ + case "x2": + answer= Math.pow(firstNum, 2); + break; + case "x^": + answer = Math.sqrt(firstNum); + break; + + case "x3": + answer = Math.pow(firstNum, 3); + break; + + case "!x": + long fact = 1; + for (int i = 2; i <= firstNum; i++) { + answer = fact * i;} + System.out.println("true"); + break; + + case "": + answer = Math.fact(firstNum); + break; + + default: + System.out.println("ERR"); } } public static void long factorial(int n) { - long fact = 1; + long answer = 1; for (int i = 2; i <= n; i++) { - fact = fact * i; + answer = answer * i; } - return fact; + return answer; } From 103cd7e28204e7e0c53a3a82a5e1ccee12277975 Mon Sep 17 00:00:00 2001 From: charnaexw Date: Sun, 27 Jun 2021 18:13:43 -0400 Subject: [PATCH 10/39] Adding the MR MC M- --- .../scientificcalculator/Scientific.java | 25 ++++++++----------- 1 file changed, 10 insertions(+), 15 deletions(-) diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java b/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java index ecba18e..5f17d04 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java @@ -3,7 +3,8 @@ import com.sun.codemodel.internal.JSwitch; public class Scientific { - public static void main java.lang.String { + public Scientific + public static void main(String[] args) { int firstNum = 0; double answer = 0.0; char operator = 0; @@ -35,9 +36,9 @@ public class Scientific { default: System.out.println("ERR"); } - switch (operator){ + switch (operator) { case "x2": - answer= Math.pow(firstNum, 2); + answer = Math.pow(firstNum, 2); break; case "x^": answer = Math.sqrt(firstNum); @@ -50,26 +51,20 @@ public class Scientific { case "!x": long fact = 1; for (int i = 2; i <= firstNum; i++) { - answer = fact * i;} - System.out.println("true"); + answer = fact * i; + } break; case "": - answer = Math.fact(firstNum); + answer = math break; default: System.out.println("ERR"); } } - public static void long factorial(int n) { - long answer = 1; - for (int i = 2; i <= n; i++) { - answer = answer * i; - } - return answer; - } - - + public void actionPerformed(ActionEvent e) { + String s = e.getActionCommand(); + } } From 2b8319e66df37be51702e91c7dec499961be90d6 Mon Sep 17 00:00:00 2001 From: charnaexw Date: Sun, 27 Jun 2021 18:44:44 -0400 Subject: [PATCH 11/39] ignore the red. --- .../scientificcalculator/Scientific.java | 26 ++++++++++++++----- 1 file changed, 19 insertions(+), 7 deletions(-) diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java b/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java index 5f17d04..2fa514f 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java @@ -3,7 +3,7 @@ import com.sun.codemodel.internal.JSwitch; public class Scientific { - public Scientific + public static void main(String[] args) { int firstNum = 0; double answer = 0.0; @@ -55,16 +55,28 @@ public static void main(String[] args) { } break; - case "": - answer = math - break; - default: System.out.println("ERR"); } } + public void actionPerformed(ActionEvent e) { String s = e.getActionCommand(); + switch (operator) { + case "MC": + m1 = 0; + tfield.setText(""); + break; + case "MR" : + tfield.setText(""); + tfield.setText(tfield.getText() + m1); + break; + case "M-" : + //something I have no clue + break; + } + } + } + + - } -} From 3da4d229872a7232b136e4f0a9b68b0f57d28c73 Mon Sep 17 00:00:00 2001 From: Jeremy Date: Sun, 27 Jun 2021 18:52:04 -0400 Subject: [PATCH 12/39] Testing branches --- pom.xml | 12 +++++ .../scientificcalculator/Calculator.java | 9 ++-- .../CalculatorEngine.java | 30 +++++++++++++ .../scientificcalculator/MainApplication.java | 45 +++---------------- .../scientificcalculator/Scientific.java | 3 +- 5 files changed, 53 insertions(+), 46 deletions(-) diff --git a/pom.xml b/pom.xml index d8cd763..2d16867 100644 --- a/pom.xml +++ b/pom.xml @@ -7,6 +7,18 @@ com.zipcodewilmington scientific_calculator 1.0-SNAPSHOT + + + + org.apache.maven.plugins + maven-compiler-plugin + + 7 + 7 + + + + junit diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/Calculator.java b/src/main/java/com/zipcodewilmington/scientificcalculator/Calculator.java index 5219610..98516f5 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/Calculator.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/Calculator.java @@ -1,8 +1,7 @@ package com.zipcodewilmington.scientificcalculator; - +/* public class Calculator { -<<<<<<< HEAD -======= + private static int result; public static int sum(int firstNum, int secondNum) { @@ -14,6 +13,4 @@ public int subtract(int firstNum, int secondNum) { result = firstNum - secondNum; return result; } - ->>>>>>> 67032e40a3e1b20aaf10917261cc55a57dbfe45b -} +*/ \ No newline at end of file diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java index b695cc4..edd3626 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java @@ -1,6 +1,36 @@ package com.zipcodewilmington.scientificcalculator; public class CalculatorEngine { + CalculatorEngine calculatorEngine = new CalculatorEngine(); + + public void run(){ + Console.println("Welcome to the calculator!\nWhat would you like to do?"); + Console.println("1. Basic Functions \n2. Scientific Functions \n3. Something Fun!"); + menuOption1(); + } + + + public void menuOption1() { + String firstChoice; + do { + firstChoice = Console.getStringInput("1, 2, 3"); + switch (firstChoice.toLowerCase()) { + case "1": + System.out.println("Here are some Basic Functions. \n+ \nAddition , - \n-Subtraction , / \n-Division , * \n-Multiplication"); + break; + case "2": + System.out.println("Here are some Scientific Functions. \nSine() \nCosine()"); + break; + case "3": + System.out.println("Something Fun!"); + break; + default: + Console.println("[ %s ] is not a valid input!", firstChoice); + break; + } + } while (true); + } + private static int result; public static int sum(int firstNum, int secondNum) { diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java b/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java index 57544b2..90cbfbb 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java @@ -7,37 +7,12 @@ */ public class MainApplication { - static Integer y = 0; - static Integer z = 0; - private static String prompt; - - public static void main(String[] args) { - - Scanner scanObject = new Scanner(System.in); - - Console.println("Welcome to the calculator!\nWhat would you like to do?"); - System.out.println("1. Basic Functions \n2. Scientific Functions \n3. Something Fun!"); - menuOption1(); + public class Console = + CalculatorEngine = new CalculatorEngine(); } +} - public static String menuOption1() { - String prompt; - prompt = Console.getStringInput("1, 2, 3"); - switch () { - case "1": - System.out.println("Here are some Basic Functions. \n+ \nAddition , - \n-Subtraction , / \n-Division , * \n-Multiplication"); - break; - case "2": - System.out.println("Here are some Scientific Functions. \nSine() \nCosine()"); - break; - case "3": - System.out.println("Something Fun!"); - break; - default: - Console.println("[ %s ] is not a valid input!", prompt); - break; - } /* @@ -55,22 +30,14 @@ public static String menuOption1() { System.out.println("Adding now..."); int x = Calculator.sum(y, z); System.out.println(x); -*/ -<<<<<<< HEAD:src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java - String s = Console.getStringInput("Enter a string"); -======= - String + String s = Console.getStringInput("Enter a string"); String s = CalculatorEngine.getStringInput("Enter a string"); ->>>>>>> 67032e40a3e1b20aaf10917261cc55a57dbfe45b:src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorInterface.java - - - Double d = Console.getDoubleInput("Enter a double."); Console.println("The user input %s as a string", s); // Console.println("The user input %s as a integer", i); Console.println("The user input %s as a d", d); - } -} + } */ + diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java b/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java index 538cbe6..df98e03 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java @@ -1,7 +1,7 @@ package com.zipcodewilmington.scientificcalculator; import com.sun.codemodel.internal.JSwitch; - +/* public class Scientific { public static Double triganometry(firstNum, secondNum) @@ -10,3 +10,4 @@ public static Double triganometry(firstNum, secondNum) case "cos": ) } +*/ \ No newline at end of file From 113986613bebda53ac528441782a937e5678edce Mon Sep 17 00:00:00 2001 From: charnaexw Date: Sun, 27 Jun 2021 18:59:57 -0400 Subject: [PATCH 13/39] Making Chnages. --- .../zipcodewilmington/scientificcalculator/Scientific.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java b/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java index 2fa514f..5f37269 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java @@ -36,6 +36,7 @@ public static void main(String[] args) { default: System.out.println("ERR"); } + switch (operator) { case "x2": answer = Math.pow(firstNum, 2); @@ -58,6 +59,7 @@ public static void main(String[] args) { default: System.out.println("ERR"); } + public Integer } public void actionPerformed(ActionEvent e) { @@ -74,9 +76,8 @@ public void actionPerformed(ActionEvent e) { case "M-" : //something I have no clue break; + } } - } - - +} \ No newline at end of file From 42020a16ed55b344919e312afa77712644672014 Mon Sep 17 00:00:00 2001 From: Bobbi-Z <85585077+Bobbi-Z@users.noreply.github.com> Date: Sun, 27 Jun 2021 19:06:48 -0400 Subject: [PATCH 14/39] the struggle --- src/.idea/.gitignore | 3 +++ src/.idea/misc.xml | 6 ++++++ src/.idea/modules.xml | 10 ++++++++++ src/.idea/vcs.xml | 6 ++++++ .../scientificcalculator/CalculatorDisplay.java | 10 ++++++++++ .../scientificcalculator/CalculatorEngine.java | 4 ++++ 6 files changed, 39 insertions(+) create mode 100644 src/.idea/.gitignore create mode 100644 src/.idea/misc.xml create mode 100644 src/.idea/modules.xml create mode 100644 src/.idea/vcs.xml diff --git a/src/.idea/.gitignore b/src/.idea/.gitignore new file mode 100644 index 0000000..26d3352 --- /dev/null +++ b/src/.idea/.gitignore @@ -0,0 +1,3 @@ +# Default ignored files +/shelf/ +/workspace.xml diff --git a/src/.idea/misc.xml b/src/.idea/misc.xml new file mode 100644 index 0000000..8ed5f34 --- /dev/null +++ b/src/.idea/misc.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/src/.idea/modules.xml b/src/.idea/modules.xml new file mode 100644 index 0000000..31eaf94 --- /dev/null +++ b/src/.idea/modules.xml @@ -0,0 +1,10 @@ + + + + + + + + + + \ No newline at end of file diff --git a/src/.idea/vcs.xml b/src/.idea/vcs.xml new file mode 100644 index 0000000..6c0b863 --- /dev/null +++ b/src/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorDisplay.java b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorDisplay.java index d24bf2c..dcc7d90 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorDisplay.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorDisplay.java @@ -1,4 +1,14 @@ package com.zipcodewilmington.scientificcalculator; public class CalculatorDisplay { + + public void currentEngineReturn(){ + + switch ( new CalculatorEngine()){ + + + } + + + } diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java index b695cc4..3971d5c 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java @@ -1,8 +1,10 @@ package com.zipcodewilmington.scientificcalculator; public class CalculatorEngine { + private static int result; + public static int sum(int firstNum, int secondNum) { result = firstNum + secondNum; return result; @@ -14,4 +16,6 @@ public int subtract(int firstNum, int secondNum) { } + + } From 013a00d3b318aefa7f881a0d3026925a58478aa8 Mon Sep 17 00:00:00 2001 From: Bobbi-Z <85585077+Bobbi-Z@users.noreply.github.com> Date: Sun, 27 Jun 2021 19:15:39 -0400 Subject: [PATCH 15/39] the struggle is real --- .../scientificcalculator/CalculatorDisplay.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorDisplay.java b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorDisplay.java index dcc7d90..d4b2fb5 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorDisplay.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorDisplay.java @@ -2,9 +2,9 @@ public class CalculatorDisplay { - public void currentEngineReturn(){ - switch ( new CalculatorEngine()){ + + } From 4af3d2a2f5733a61235ba6b649f263c715721ba2 Mon Sep 17 00:00:00 2001 From: charnaexw Date: Sun, 27 Jun 2021 19:20:59 -0400 Subject: [PATCH 16/39] .log maybe --- .../scientificcalculator/Calculator.java | 2 +- .../scientificcalculator/Scientific.java | 26 +++++-------------- 2 files changed, 7 insertions(+), 21 deletions(-) diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/Calculator.java b/src/main/java/com/zipcodewilmington/scientificcalculator/Calculator.java index 5219610..9b49493 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/Calculator.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/Calculator.java @@ -15,5 +15,5 @@ public int subtract(int firstNum, int secondNum) { return result; } ->>>>>>> 67032e40a3e1b20aaf10917261cc55a57dbfe45b +//>>>>>>> 67032e40a3e1b20aaf10917261cc55a57dbfe45b } diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java b/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java index 5f37269..766b36b 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java @@ -52,32 +52,18 @@ public static void main(String[] args) { case "!x": long fact = 1; for (int i = 2; i <= firstNum; i++) { - answer = fact * i; - } + answer = fact * i;} break; - default: System.out.println("ERR"); } - public Integer - } + public Integer { + + switch { + - public void actionPerformed(ActionEvent e) { - String s = e.getActionCommand(); - switch (operator) { - case "MC": - m1 = 0; - tfield.setText(""); - break; - case "MR" : - tfield.setText(""); - tfield.setText(tfield.getText() + m1); - break; - case "M-" : - //something I have no clue - break; } - } + } } \ No newline at end of file From a3d897a67e29c4d0febdfcfcf64b4bc52e493494 Mon Sep 17 00:00:00 2001 From: Jeremy Date: Sun, 27 Jun 2021 21:22:29 -0400 Subject: [PATCH 17/39] Added Basic Arithmatic test cases --- .DS_Store | Bin 0 -> 6148 bytes .../CalculatorDisplay.java | 21 ++++ .../CalculatorEngine.java | 50 +++------ .../scientificcalculator/Console.java | 5 +- .../scientificcalculator/MainApplication.java | 38 ++----- .../scientificcalculator/Scientific.java | 4 +- .../CalculatorDisplayTest.java | 60 ---------- .../CalculatorEngineTest.java | 106 ++++++++++++++++++ 8 files changed, 155 insertions(+), 129 deletions(-) create mode 100644 .DS_Store delete mode 100644 src/test/java/com/zipcodewilmington/scientific_calculator/CalculatorDisplayTest.java create mode 100644 src/test/java/com/zipcodewilmington/scientific_calculator/CalculatorEngineTest.java diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..9a874b5768f336915163bb88cd434575b859f936 GIT binary patch literal 6148 zcmeH~Jr2S!425ml0g0s}V-^m;4I%_5-~tF3k&vj^b9A16778<}(6eNJu~Vz<8=6`~ zboab&MFtUB!i}=AFfm2m$tVxGT*u4pe81nUlA49C} z?O@64YO)2RT{MRe%{!}2F))pG(Sih~)xkgosK7*lF7m<7{{#Hn{6A@7N(HFEpDCdI z{ Date: Sun, 27 Jun 2021 22:23:48 -0400 Subject: [PATCH 18/39] This is what we have for science. --- .../CalculatorDisplay.java | 1 + .../scientificcalculator/Scientific.java | 32 ++++++++----------- 2 files changed, 15 insertions(+), 18 deletions(-) diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorDisplay.java b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorDisplay.java index d24bf2c..cdd6234 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorDisplay.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorDisplay.java @@ -1,4 +1,5 @@ package com.zipcodewilmington.scientificcalculator; public class CalculatorDisplay { + } diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java b/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java index 91b512c..1fabee0 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java @@ -1,7 +1,5 @@ package com.zipcodewilmington.scientificcalculator; -import com.sun.codemodel.internal.JSwitch; - public class Scientific { public static void main(String[] args) { @@ -52,10 +50,12 @@ public static void main(String[] args) { case "!x": long fact = 1; for (int i = 2; i <= firstNum; i++) { - value = fact * i;} + value = fact * i; + } break; default: - System.out.println("ERR");} + System.out.println("ERR"); + } switch (operator) { case ".log": @@ -73,22 +73,18 @@ public static void main(String[] args) { case "Ln": value = Math.log(firstNum); break; - default - System.out.println("ERR");} - public Double (value){ - if (Math.toRadians(value)) - - - - - - - + System.out.println("ERR"); } + public static boolean isRadian ( double input){ + double to180 = (input + ((180 / Math.PI) - input)); + // 57 is 180 degrees rounded to whole number + if (Math.round(to180) == 57) { + return true; + } else { + } + return false; + } } - } - - From 91eb470ffff717d08ef6771c4be7f24486fba104 Mon Sep 17 00:00:00 2001 From: Jeremy Date: Sun, 27 Jun 2021 22:34:00 -0400 Subject: [PATCH 19/39] Fixed up some of the display. --- .../scientificcalculator/Calculator.java | 7 ---- .../CalculatorDisplay.java | 39 ++++++++++--------- .../CalculatorEngine.java | 2 +- .../scientificcalculator/MainApplication.java | 28 ++++++------- .../scientificcalculator/Scientific.java | 2 +- 5 files changed, 37 insertions(+), 41 deletions(-) diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/Calculator.java b/src/main/java/com/zipcodewilmington/scientificcalculator/Calculator.java index 334300a..8b5315b 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/Calculator.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/Calculator.java @@ -13,11 +13,4 @@ public int subtract(int firstNum, int secondNum) { result = firstNum - secondNum; return result; } -/*<<<<<<< HEAD - -//>>>>>>> 67032e40a3e1b20aaf10917261cc55a57dbfe45b } -======= - ->>>>>>> 009177cc9de68c1f0401d32805d4a54e699cc1e5 -*/ \ No newline at end of file diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorDisplay.java b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorDisplay.java index 62cb33c..770c04b 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorDisplay.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorDisplay.java @@ -3,23 +3,24 @@ public class CalculatorDisplay { public static void menuOption1() { - System.out.println("What would you like to do?"); - String prompt; - do { - prompt = Console.getStringInput("1, 2, 3"); - switch (prompt.toLowerCase()) { - case "1": - System.out.println("Here are some Basic Functions. \n+ \nAddition , - \n-Subtraction , / \n-Division , * \n-Multiplication"); - break; - case "2": - System.out.println("Here are some Scientific Functions. \nSine() \nCosine() \nTangent"); - break; - case "3": - System.out.println("Something Fun!"); - break; - default: - Console.println("[ %s ] is not a valid input!", prompt); - break; - } - } while (true); + String prompt; + do { + prompt = Console.getStringInput(""); + switch (prompt.toLowerCase()) { + case "1": + System.out.println("Here are some Basic Functions. \n(+) - Addition \n(-) - Subtraction \n(/) - Division \n(*) - Multiplication"); + break; + case "2": + System.out.println("Here are some Scientific Functions. \nSine() \nCosine() \nTangent()"); + break; + case "3": + System.out.println("Return to menu? \n ( Y / N?)"); + Console.getStringInput(""); + break; + default: + Console.println("[ %s ] is not a valid input!", prompt); + break; + } + } while (true); } +} diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java index a38435e..3d0792b 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java @@ -1,7 +1,7 @@ package com.zipcodewilmington.scientificcalculator; public class CalculatorEngine { - CalculatorEngine calculatorEngine = new CalculatorEngine(); + // CalculatorEngine calculatorEngine = new CalculatorEngine(); private static Double value; public static Double sum(double firstNum, double secondNum) { diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java b/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java index 49238cb..a920f61 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java @@ -6,12 +6,25 @@ */ public class MainApplication { - // String s = Console.getStringInput("Enter a string"); private CalculatorEngine engine = new CalculatorEngine(); private CalculatorDisplay display = new CalculatorDisplay(); public static void main(String[] args) { - CalculatorDisplay.menuOption1(); + System.out.println("Welcome! \nWhat would you like to do?"); + System.out.println("1. Basic Functions \n2. Scientific Functions \n3. Return to Menu"); + CalculatorDisplay.menuOption1(); + + + // String s = Console.getStringInput("Enter a string"); + String s = Console.getStringInput("Enter a string"); + // String s = Console.getStringInput("Enter a string"); + // String s = CalculatorEngine.getStringInput("Enter a string"); + Double d = Console.getDoubleInput("Enter a double."); + Console.println("The user input %s as a string", s); + // Console.println("The user input %s as a integer", i); + Console.println("The user input %s as a d", d); + + } } @@ -24,17 +37,6 @@ public static void main(String[] args) { System.out.println("Adding now..."); int x = Calculator.sum(y, z); System.out.println(x); - - - String s = Console.getStringInput("Enter a string"); - String s = Console.getStringInput("Enter a string"); - String s = CalculatorEngine.getStringInput("Enter a string"); - - Double d = Console.getDoubleInput("Enter a double."); - - Console.println("The user input %s as a string", s); - // Console.println("The user input %s as a integer", i); - Console.println("The user input %s as a d", d); } */ diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java b/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java index b4ba80b..3470d9f 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java @@ -91,6 +91,6 @@ public Double (value){ } } - +*/ From 7882cfa6f240ab4852958297a809ffd44c5c7c41 Mon Sep 17 00:00:00 2001 From: charnaexw Date: Sun, 27 Jun 2021 22:42:13 -0400 Subject: [PATCH 20/39] again. --- .../scientificcalculator/CalculatorDisplay.java | 1 - .../zipcodewilmington/scientificcalculator/Scientific.java | 4 ++-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorDisplay.java b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorDisplay.java index cdd6234..d24bf2c 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorDisplay.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorDisplay.java @@ -1,5 +1,4 @@ package com.zipcodewilmington.scientificcalculator; public class CalculatorDisplay { - } diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java b/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java index 1fabee0..b539e78 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java @@ -82,8 +82,8 @@ public static boolean isRadian ( double input){ if (Math.round(to180) == 57) { return true; } else { - } - return false; + }return false; + } } From c9f0b6cd89b094c6248030a294ec8d256dee1112 Mon Sep 17 00:00:00 2001 From: Bobbi-Z <85585077+Bobbi-Z@users.noreply.github.com> Date: Sun, 27 Jun 2021 23:12:25 -0400 Subject: [PATCH 21/39] square root --- .../scientificcalculator/CalculatorEngine.java | 11 +++++++++-- .../scientificcalculator/Scientific.java | 2 +- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java index a38435e..0a28818 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java @@ -8,12 +8,12 @@ public static Double sum(double firstNum, double secondNum) { value = firstNum + secondNum; return value; } - public Double subtract(Double firstNum, Double secondNum) { + public Double subtract(double firstNum, double secondNum) { value = firstNum - secondNum; return value; } - public Double divide(Double firstNum, Double secondNum) { + public Double divide(double firstNum, double secondNum) { value = firstNum / secondNum; return value; } @@ -22,4 +22,11 @@ public Double multiply(double firstNum, double secondNum) { value = firstNum * secondNum; return value; } + + public Double sqrt(double firstNum){ + value = Math.sqrt(firstNum); + return value; + + } + } diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java b/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java index b4ba80b..a5830a4 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java @@ -1,4 +1,4 @@ -/* + package com.zipcodewilmington.scientificcalculator; import com.sun.codemodel.internal.JSwitch; From 9b9dc257926daf89dddfdddcc20e148e62b4e119 Mon Sep 17 00:00:00 2001 From: Bobbi-Z <85585077+Bobbi-Z@users.noreply.github.com> Date: Sun, 27 Jun 2021 23:41:10 -0400 Subject: [PATCH 22/39] square root test --- .../scientificcalculator/CalculatorEngine.java | 11 ++++++++--- .../CalculatorEngineTest.java | 18 ++++++++++++++++-- 2 files changed, 24 insertions(+), 5 deletions(-) diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java index 0a28818..cdfb22c 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java @@ -23,10 +23,15 @@ public Double multiply(double firstNum, double secondNum) { return value; } - public Double sqrt(double firstNum){ - value = Math.sqrt(firstNum); + public Double square(double firstNum){ + double sr; + double Value = firstNum / 2; + do { + sr = value; + value = (sr +(firstNum / sr)) / 2; + } + while ((sr - value) != 0); return value; - } } diff --git a/src/test/java/com/zipcodewilmington/scientific_calculator/CalculatorEngineTest.java b/src/test/java/com/zipcodewilmington/scientific_calculator/CalculatorEngineTest.java index 7875439..ff99799 100644 --- a/src/test/java/com/zipcodewilmington/scientific_calculator/CalculatorEngineTest.java +++ b/src/test/java/com/zipcodewilmington/scientific_calculator/CalculatorEngineTest.java @@ -14,7 +14,7 @@ public void testSum1() { CalculatorEngine calculatorEngine = new CalculatorEngine(); // When Double result; - result = calculatorEngine.sum(2.00, 2.00); + result = CalculatorEngine.sum(2.00, 2.00); // Then if (result != 4.00) { // if 2 + 2 != 4 Assert.fail(); @@ -26,7 +26,7 @@ public void testSum2() { CalculatorEngine calculatorEngine = new CalculatorEngine(); // When Double result; - result = calculatorEngine.sum(1200.00, 500.00); + result = CalculatorEngine.sum(1200.00, 500.00); // Then if (result != 1700.00) { // if 1200 + 500 != 1700 Assert.fail(); @@ -63,6 +63,7 @@ public void testDivide1() { Double result; result = calculatorEngine.divide(6.00, 3.00); if (result != 2.00); { + Assert.fail(); } } @@ -72,6 +73,7 @@ public void testDivide2() { Double result; result = calculatorEngine.divide(33.33, 11.11); if (result != 3.00); { + Assert.fail(); } } @@ -81,6 +83,7 @@ public void testMultiply1() { Double result; result = calculatorEngine.multiply(5.00, 20.00); if (result != 100.00); { + Assert.fail(); } } @@ -90,8 +93,19 @@ public void testMultiply2() { Double result; result = calculatorEngine.multiply(7.00, 20.00); if (result != 140.00); { + Assert.fail(); } } + @Test + public void testSquare1(){ + CalculatorEngine calculatorEngine = new CalculatorEngine(); + Double result; + result = calculatorEngine.square(9.00); + if (result != 3.00);{ + Assert.fail(); + } + + } } From e7307cf8e3b27e52f08b3d43e351305c836ab4c8 Mon Sep 17 00:00:00 2001 From: Bobbi-Z <85585077+Bobbi-Z@users.noreply.github.com> Date: Sun, 27 Jun 2021 23:45:19 -0400 Subject: [PATCH 23/39] square root test --- .../scientific_calculator/CalculatorEngineTest.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/test/java/com/zipcodewilmington/scientific_calculator/CalculatorEngineTest.java b/src/test/java/com/zipcodewilmington/scientific_calculator/CalculatorEngineTest.java index ff99799..77a9013 100644 --- a/src/test/java/com/zipcodewilmington/scientific_calculator/CalculatorEngineTest.java +++ b/src/test/java/com/zipcodewilmington/scientific_calculator/CalculatorEngineTest.java @@ -11,7 +11,7 @@ public class CalculatorEngineTest { @Test public void testSum1() { // Given - CalculatorEngine calculatorEngine = new CalculatorEngine(); + CalculatorEngine CalculatorEngine = new CalculatorEngine(); // When Double result; result = CalculatorEngine.sum(2.00, 2.00); @@ -23,7 +23,7 @@ public void testSum1() { @Test public void testSum2() { // Given - CalculatorEngine calculatorEngine = new CalculatorEngine(); + CalculatorEngine CalculatorEngine = new CalculatorEngine(); // When Double result; result = CalculatorEngine.sum(1200.00, 500.00); From c70a2ac550a0a98f2096252f10c06d341625fc94 Mon Sep 17 00:00:00 2001 From: Bobbi-Z <85585077+Bobbi-Z@users.noreply.github.com> Date: Sun, 27 Jun 2021 23:49:49 -0400 Subject: [PATCH 24/39] square root test2 --- .../scientificcalculator/CalculatorEngine.java | 13 ++++++------- .../scientific_calculator/CalculatorEngineTest.java | 2 +- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java index cdfb22c..6ad8bcf 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java @@ -1,7 +1,6 @@ package com.zipcodewilmington.scientificcalculator; public class CalculatorEngine { - CalculatorEngine calculatorEngine = new CalculatorEngine(); private static Double value; public static Double sum(double firstNum, double secondNum) { @@ -23,14 +22,14 @@ public Double multiply(double firstNum, double secondNum) { return value; } - public Double square(double firstNum){ - double sr; - double Value = firstNum / 2; + public Double squareRoot(double firstNum){ + double s; + double value = firstNum / 2; do { - sr = value; - value = (sr +(firstNum / sr)) / 2; + s = value; + value = (s +(firstNum / s)) / 2; } - while ((sr - value) != 0); + while ((s - value) != 0); return value; } diff --git a/src/test/java/com/zipcodewilmington/scientific_calculator/CalculatorEngineTest.java b/src/test/java/com/zipcodewilmington/scientific_calculator/CalculatorEngineTest.java index 77a9013..5a22ee5 100644 --- a/src/test/java/com/zipcodewilmington/scientific_calculator/CalculatorEngineTest.java +++ b/src/test/java/com/zipcodewilmington/scientific_calculator/CalculatorEngineTest.java @@ -100,7 +100,7 @@ public void testMultiply2() { public void testSquare1(){ CalculatorEngine calculatorEngine = new CalculatorEngine(); Double result; - result = calculatorEngine.square(9.00); + result = calculatorEngine.squareRoot(9.00); if (result != 3.00);{ Assert.fail(); } From ba0e06227aa2b3fa0a14a0b1f04ca5e44632b420 Mon Sep 17 00:00:00 2001 From: Jeremy Date: Mon, 28 Jun 2021 00:11:41 -0400 Subject: [PATCH 25/39] Added some more things to the display. --- .../CalculatorDisplay.java | 19 +++++++++++++++++-- .../CalculatorEngine.java | 4 ++-- .../scientificcalculator/Console.java | 4 ---- .../scientificcalculator/MainApplication.java | 12 +++++------- 4 files changed, 24 insertions(+), 15 deletions(-) diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorDisplay.java b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorDisplay.java index 770c04b..2d82140 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorDisplay.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorDisplay.java @@ -4,6 +4,7 @@ public class CalculatorDisplay { public static void menuOption1() { String prompt; + outerLoop: do { prompt = Console.getStringInput(""); switch (prompt.toLowerCase()) { @@ -14,13 +15,27 @@ public static void menuOption1() { System.out.println("Here are some Scientific Functions. \nSine() \nCosine() \nTangent()"); break; case "3": - System.out.println("Return to menu? \n ( Y / N?)"); - Console.getStringInput(""); + String userInput = Console.getStringInput("Time for some math? \n ( Y / N )"); + if(userInput.equalsIgnoreCase("Y")) { + break outerLoop; + } break; default: Console.println("[ %s ] is not a valid input!", prompt); break; } } while (true); + + System.out.println("Please choose an operator ( +, - , / , * )"); + String operator = Console.getStringInput(""); + Console.println("You entered %s\n", operator); + System.out.println("Enter your first number"); + Double firstNum = Console.getDoubleInput(""); + Console.println("%s", firstNum); + System.out.println("Enter your second number"); + Double secondNum = Console.getDoubleInput(""); + Console.println("%s", secondNum); + + } } diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java index 3d0792b..aeb525d 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java @@ -4,7 +4,7 @@ public class CalculatorEngine { // CalculatorEngine calculatorEngine = new CalculatorEngine(); private static Double value; - public static Double sum(double firstNum, double secondNum) { + public static Double sum(Double firstNum, Double secondNum) { value = firstNum + secondNum; return value; } @@ -18,7 +18,7 @@ public Double divide(Double firstNum, Double secondNum) { return value; } - public Double multiply(double firstNum, double secondNum) { + public Double multiply(Double firstNum, Double secondNum) { value = firstNum * secondNum; return value; } diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/Console.java b/src/main/java/com/zipcodewilmington/scientificcalculator/Console.java index 983022c..92dff0f 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/Console.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/Console.java @@ -10,10 +10,6 @@ public class Console { public static void print(String output, Object... args) { System.out.printf(output, args); } - - - - public static void println(String output, Object... args) { print(output + "\n", args); } diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java b/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java index a920f61..b23c06d 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java @@ -10,19 +10,17 @@ public class MainApplication { private CalculatorDisplay display = new CalculatorDisplay(); public static void main(String[] args) { - System.out.println("Welcome! \nWhat would you like to do?"); - System.out.println("1. Basic Functions \n2. Scientific Functions \n3. Return to Menu"); + System.out.println("Welcome! \nTake a look at some of our functions!"); + System.out.println("(1) Basic Functions \n(2) Scientific Functions \n(3) Math time!"); CalculatorDisplay.menuOption1(); - // String s = Console.getStringInput("Enter a string"); String s = Console.getStringInput("Enter a string"); - // String s = Console.getStringInput("Enter a string"); - // String s = CalculatorEngine.getStringInput("Enter a string"); + Integer i = Console.getIntegerInput("Enter an integer"); Double d = Console.getDoubleInput("Enter a double."); Console.println("The user input %s as a string", s); - // Console.println("The user input %s as a integer", i); - Console.println("The user input %s as a d", d); + Console.println("The user input %s as a integer", i); + Console.println("The user input %s as a double", d); } From 03f3aac366949f4eb578f5707787b533efc185a5 Mon Sep 17 00:00:00 2001 From: charnaexw Date: Mon, 28 Jun 2021 01:01:23 -0400 Subject: [PATCH 26/39] I greyed out a lot of code but the code that is there should now be consistant with what you have. --- .../scientificcalculator/Scientific.java | 72 ++++++++++++--- .../scientific_calculator/ScientificTest.java | 92 +++++++++++++++++++ 2 files changed, 152 insertions(+), 12 deletions(-) create mode 100644 src/test/java/com/zipcodewilmington/scientific_calculator/ScientificTest.java diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java b/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java index ad0ff18..17d8871 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java @@ -1,8 +1,63 @@ -/* + package com.zipcodewilmington.scientificcalculator; public class Scientific { + private static double value; + + public static Double tan (double value) { + value = 0; + value = Math.tan(value; + return value; + } + public Double tanR(double value) { + value = 0; + value = Math.atan(value); + return value; + } + + + public Double cos(double value) { + value = 0; + value = Math.cos(value); + return value; + } + + public double sin(double value) { + value = 0; + value = Math.sin(value); + } + + public double cb(double value) { + value = 0; + value= Math.pow(value, 3); + } + + public double sqrt(double value) { + value = 0; + value = Math.sqrt(value); + return value; + } + + public double squ(double value) { + value = 0; + value = Math.pow(value, 2); + return value + } + + + public double sinR(double value) { + value = 0; + value = Math.asin(value); + return value; + } + public double cosR(double value){ + value = 0; + value = Math.acos(value); + return value; + } +} + /*public double result; public static void main(String[] args) { int firstNum = 0; double value = 0.0; @@ -77,21 +132,14 @@ public static void main(String[] args) { default System.out.println("ERR"); } - */public static boolean isRadian ( double input){ + public static boolean isRadian ( double input){ double to180 = (input + ((180 / Math.PI) - input)); // 57 is 180 degrees rounded to whole number if (Math.round(to180) == 57) { return true; } else { - /*}return false; - - + } + return false; } - } -} -//<<<<<<< master -//======= -*/ - + */ -//>>>>>>> master diff --git a/src/test/java/com/zipcodewilmington/scientific_calculator/ScientificTest.java b/src/test/java/com/zipcodewilmington/scientific_calculator/ScientificTest.java new file mode 100644 index 0000000..8853ac3 --- /dev/null +++ b/src/test/java/com/zipcodewilmington/scientific_calculator/ScientificTest.java @@ -0,0 +1,92 @@ +package com.zipcodewilmington.scientific_calculator; + +import com.zipcodewilmington.scientificcalculator.CalculatorEngine; +import com.zipcodewilmington.scientificcalculator.Scientific; +import org.junit.Assert; +import org.junit.Test; + +public class ScientificTest { + @Test + public void testTan() { + Scientific scientific = new Scientific(); + Double result; + result = scientific.tan(-1.995200412208242); + if (result != 90.0) ; + { // + Assert.fail(); + } + } + @Test + public void testTanR() { + Scientific scientific = new Scientific(); + Double result; + result = scientific.tanR(-1.995200412208242); + if (result != 100) ; + { // + Assert.fail(); + } + } + @Test + public void testCos(){ + Scientific scientific = new Scientific(); + Double value; + value = scientific.cos(-1.995200412208242); + if value != scientific.cos(1.0){ + Assert.fail(); + } + } + @Test + public void testCosR(){ + Scientific scientific = new Scientific(); + Double value; + value = scientific.cos(-1.995200412208242); + if value != scientific.cos(1.0){ + Assert.fail(); + } + } + @Test + public void testSine (){ + Scientific scientific = new Scientific(); + double value; + value = scientific.sin(0.8939966636005579); + if value != scientific.sin(90){ + Assert.fail(); + } + } + @Test + public void testSineR (){ + Scientific scientific = new Scientific(); + double value; + value = scientific.sinR(8); + if value = scientific.sinR(5.0){ + Assert.fail(); + } + } + @Test + public void testCubed (){ + Scientific scientific = Scientific(); + double value; + value = scientific.cb(3); + if value = scientific.cb(10){ + Assert.fail(); + } + } + @Test + public void testSqrt (){ + Scientific scientific = new Scientific(); + double value; + value = scientific.sqrt(25); + if value != scientific.sqrt(5){ + Assert.fail(); + } + } + @Test + public void testSquare (){ + Scientific scientific = new Scientific(); + double value; + value = scientific.squ(5); + if value = scientific.squ(25){ + Assert.fail(); + } + } +} From 8d6131c1cae125bbac32deb4b0e64c3caf94db9d Mon Sep 17 00:00:00 2001 From: Jeremy Date: Mon, 28 Jun 2021 01:14:35 -0400 Subject: [PATCH 27/39] Added some basic calculator and scientific functionality. --- .../CalculatorDisplay.java | 13 +--- .../CalculatorEngine.java | 6 +- .../scientificcalculator/MainApplication.java | 72 +++++++++++++------ .../scientificcalculator/Scientific.java | 11 +-- 4 files changed, 60 insertions(+), 42 deletions(-) diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorDisplay.java b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorDisplay.java index 2d82140..8c2621d 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorDisplay.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorDisplay.java @@ -25,17 +25,8 @@ public static void menuOption1() { break; } } while (true); - - System.out.println("Please choose an operator ( +, - , / , * )"); - String operator = Console.getStringInput(""); - Console.println("You entered %s\n", operator); - System.out.println("Enter your first number"); - Double firstNum = Console.getDoubleInput(""); - Console.println("%s", firstNum); - System.out.println("Enter your second number"); - Double secondNum = Console.getDoubleInput(""); - Console.println("%s", secondNum); - + } + public static void basicOperators(){ } } diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java index aeb525d..315d5b4 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java @@ -8,17 +8,17 @@ public static Double sum(Double firstNum, Double secondNum) { value = firstNum + secondNum; return value; } - public Double subtract(Double firstNum, Double secondNum) { + public static Double subtract(Double firstNum, Double secondNum) { value = firstNum - secondNum; return value; } - public Double divide(Double firstNum, Double secondNum) { + public static Double divide(Double firstNum, Double secondNum) { value = firstNum / secondNum; return value; } - public Double multiply(Double firstNum, Double secondNum) { + public static Double multiply(Double firstNum, Double secondNum) { value = firstNum * secondNum; return value; } diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java b/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java index b23c06d..f616e9f 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java @@ -9,32 +9,64 @@ public class MainApplication { private CalculatorEngine engine = new CalculatorEngine(); private CalculatorDisplay display = new CalculatorDisplay(); - public static void main(String[] args) { - System.out.println("Welcome! \nTake a look at some of our functions!"); - System.out.println("(1) Basic Functions \n(2) Scientific Functions \n(3) Math time!"); - CalculatorDisplay.menuOption1(); + public static void main(String[] args) { + System.out.println("Welcome! \nTake a look at some of our functions!"); + System.out.println("(1) Basic Functions \n(2) Scientific Functions \n(3) Math time!"); + CalculatorDisplay.menuOption1(); + System.out.println("Please choose an operator ( +, - , / , * )"); + String operator = Console.getStringInput(""); + Console.println("You entered %s\n", operator); + System.out.println("Enter your first number"); + Double firstNum = Console.getDoubleInput(""); + Console.println("%s", firstNum); + System.out.println("Enter your second number"); + Double secondNum = Console.getDoubleInput(""); + Console.println("%s", secondNum); - String s = Console.getStringInput("Enter a string"); - Integer i = Console.getIntegerInput("Enter an integer"); - Double d = Console.getDoubleInput("Enter a double."); - Console.println("The user input %s as a string", s); - Console.println("The user input %s as a integer", i); - Console.println("The user input %s as a double", d); + String basicMathOperator = operator; + switch (basicMathOperator) { + case "+": + System.out.println(CalculatorEngine.sum(firstNum, secondNum)); + break; + case "-": + System.out.println(); + CalculatorEngine.subtract(firstNum, secondNum); + break; + case "/": + System.out.println(CalculatorEngine.divide(firstNum, secondNum)); + break; + case "*": + System.out.println(CalculatorEngine.multiply(firstNum, secondNum)); + break; + default: + System.out.println("Unable to do math."); + } + String scientificOperator = operator; + switch (scientificOperator) { + case "cos": + System.out.println(Math.cos(firstNum)); + break; + case "tan": + System.out.println(Math.sin(firstNum)); + break; + case "sin": + System.out.println(Math.tan(firstNum)); + break; + default: + System.out.println("Unable to do math."); } + } } /* - - System.out.println("Please enter a number"); - // System.out.println(y); - // Connected the sum method - System.out.println("Please enter another number"); - System.out.println("Adding now..."); - int x = Calculator.sum(y, z); - System.out.println(x); - } - */ + String s = Console.getStringInput("Enter a string"); + Integer i = Console.getIntegerInput("Enter an integer"); + Double d = Console.getDoubleInput("Enter a double."); + Console.println("The user input %s as a string", s); + Console.println("The user input %s as a integer", i); + Console.println("The user input %s as a double", d); +*/ diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java b/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java index ad0ff18..4d7236e 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java @@ -77,21 +77,16 @@ public static void main(String[] args) { default System.out.println("ERR"); } - */public static boolean isRadian ( double input){ + public static boolean isRadian ( double input){ double to180 = (input + ((180 / Math.PI) - input)); // 57 is 180 degrees rounded to whole number if (Math.round(to180) == 57) { return true; } else { - /*}return false; + }return false; } } } -//<<<<<<< master -//======= -*/ - - -//>>>>>>> master +*/ \ No newline at end of file From 60531d5e70c55137670051e7bc68c4d15f2d09b8 Mon Sep 17 00:00:00 2001 From: Bobbi-Z <85585077+Bobbi-Z@users.noreply.github.com> Date: Mon, 28 Jun 2021 01:48:54 -0400 Subject: [PATCH 28/39] fixing tests --- .../CalculatorDisplay.java | 8 +-- .../CalculatorEngine.java | 24 +++---- .../scientificcalculator/Scientific.java | 12 ++-- .../CalculatorEngineTest.java | 66 ++++++++++--------- 4 files changed, 55 insertions(+), 55 deletions(-) diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorDisplay.java b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorDisplay.java index 2d82140..5973193 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorDisplay.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorDisplay.java @@ -15,10 +15,10 @@ public static void menuOption1() { System.out.println("Here are some Scientific Functions. \nSine() \nCosine() \nTangent()"); break; case "3": - String userInput = Console.getStringInput("Time for some math? \n ( Y / N )"); - if(userInput.equalsIgnoreCase("Y")) { - break outerLoop; - } + String userInput = Console.getStringInput("Time for some math? \n ( Y / N )"); + if (userInput.equalsIgnoreCase("Y")) { + break outerLoop; + } break; default: Console.println("[ %s ] is not a valid input!", prompt); diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java index 6780879..c9198fc 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java @@ -4,26 +4,23 @@ public class CalculatorEngine { // CalculatorEngine calculatorEngine = new CalculatorEngine(); private static Double value; - public static Double sum(Double firstNum, Double secondNum) { - value = firstNum + secondNum; - return value; + public Double sum(Double firstNum, Double secondNum) { + return firstNum + secondNum; } + public Double subtract(Double firstNum, Double secondNum) { - value = firstNum - secondNum; - return value; + return firstNum - secondNum; } - public Double divide(Double firstNum, Double secondNum) { - value = firstNum / secondNum; - return value; + public static Double divide(Double firstNum, Double secondNum) { + return firstNum / secondNum; } - public Double multiply(Double firstNum, Double secondNum) { - value = firstNum * secondNum; - return value; + public static Double multiply(Double firstNum, Double secondNum) { + return firstNum * secondNum; } - public Double squareRoot(Double firstNum){ + public static Double squareRoot(Double firstNum){ double s; double value = firstNum / 2; do { @@ -34,4 +31,7 @@ public Double squareRoot(Double firstNum){ return value; } + public static Double square(Double firstNum){ + return firstNum * firstNum; + } } diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java b/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java index 7d264d4..fe3a9a8 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java @@ -1,6 +1,6 @@ package com.zipcodewilmington.scientificcalculator; - +/* public class Scientific { public static void main(String[] args) { @@ -77,21 +77,17 @@ public static void main(String[] args) { default System.out.println("ERR"); } - */public static boolean isRadian ( double input){ + /* public static boolean isRadian( double input){ double to180 = (input + ((180 / Math.PI) - input)); // 57 is 180 degrees rounded to whole number if (Math.round(to180) == 57) { return true; } else { - /*}return false; + return false; + } } } } -//<<<<<<< master -//======= */ - - -//>>>>>>> master diff --git a/src/test/java/com/zipcodewilmington/scientific_calculator/CalculatorEngineTest.java b/src/test/java/com/zipcodewilmington/scientific_calculator/CalculatorEngineTest.java index 5a22ee5..d9af6dd 100644 --- a/src/test/java/com/zipcodewilmington/scientific_calculator/CalculatorEngineTest.java +++ b/src/test/java/com/zipcodewilmington/scientific_calculator/CalculatorEngineTest.java @@ -4,6 +4,7 @@ import org.junit.Assert; import org.junit.Test; +import static com.zipcodewilmington.scientificcalculator.CalculatorEngine.*; public class CalculatorEngineTest { @@ -59,52 +60,55 @@ public void testSubtract2() { @Test public void testDivide1() { - CalculatorEngine calculatorEngine = new CalculatorEngine(); - Double result; - result = calculatorEngine.divide(6.00, 3.00); - if (result != 2.00); { - Assert.fail(); - } + Double expected = 100.00; + Double firstNum = 1000.00; + Double secondNum = 10.00; + Double actual = CalculatorEngine.divide(firstNum, secondNum); + Assert.assertEquals(expected, actual); } @Test public void testDivide2() { - CalculatorEngine calculatorEngine = new CalculatorEngine(); - Double result; - result = calculatorEngine.divide(33.33, 11.11); - if (result != 3.00); { - Assert.fail(); - } + Double expected = 4.00; + Double firstNum = 20.00; + Double secondNum = 5.00; + Double actual = CalculatorEngine.divide(firstNum, secondNum); + Assert.assertEquals(expected, actual); } @Test public void testMultiply1() { - CalculatorEngine calculatorEngine = new CalculatorEngine(); - Double result; - result = calculatorEngine.multiply(5.00, 20.00); - if (result != 100.00); { - Assert.fail(); + Double expected = 100.00; + Double firstNum = 20.00; + Double secondNum = 5.00; + Double actual = multiply(firstNum, secondNum); + Assert.assertEquals(expected, actual); } - } + @Test public void testMultiply2() { - CalculatorEngine calculatorEngine = new CalculatorEngine(); - Double result; - result = calculatorEngine.multiply(7.00, 20.00); - if (result != 140.00); { - Assert.fail(); - } + Double expected = 4.00; + Double firstNum = 2.00; + Double secondNum = 2.0; + Double actual = multiply(firstNum, secondNum); + Assert.assertEquals(expected, actual); } + @Test - public void testSquare1(){ - CalculatorEngine calculatorEngine = new CalculatorEngine(); - Double result; - result = calculatorEngine.squareRoot(9.00); - if (result != 3.00);{ - Assert.fail(); - } + public void testSquareRoot(){ + Double expected = 2.00; + Double firstNum = 4.00; + Double actual = squareRoot(firstNum); + Assert.assertEquals(expected, actual); + } + @Test + public void testSquare(){ + Double expected = 16.00; + Double firstNum = 4.00; + Double actual = square(firstNum); + Assert.assertEquals(expected, actual); } } From d39280c3618c60c1c73c69f816310fe8cd78e668 Mon Sep 17 00:00:00 2001 From: charnaexw Date: Mon, 28 Jun 2021 02:06:17 -0400 Subject: [PATCH 29/39] I'm sleepy. --- .../scientificcalculator/Scientific.java | 6 ++-- .../scientific_calculator/ScientificTest.java | 30 +++++++++---------- 2 files changed, 19 insertions(+), 17 deletions(-) diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java b/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java index 17d8871..035a0c0 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java @@ -6,7 +6,7 @@ public class Scientific { public static Double tan (double value) { value = 0; - value = Math.tan(value; + value = Math.tan(value); return value; } @@ -26,11 +26,13 @@ public Double cos(double value) { public double sin(double value) { value = 0; value = Math.sin(value); + return value; } public double cb(double value) { value = 0; value= Math.pow(value, 3); + return value; } public double sqrt(double value) { @@ -42,7 +44,7 @@ public double sqrt(double value) { public double squ(double value) { value = 0; value = Math.pow(value, 2); - return value + return value; } diff --git a/src/test/java/com/zipcodewilmington/scientific_calculator/ScientificTest.java b/src/test/java/com/zipcodewilmington/scientific_calculator/ScientificTest.java index 8853ac3..956b683 100644 --- a/src/test/java/com/zipcodewilmington/scientific_calculator/ScientificTest.java +++ b/src/test/java/com/zipcodewilmington/scientific_calculator/ScientificTest.java @@ -10,8 +10,8 @@ public class ScientificTest { public void testTan() { Scientific scientific = new Scientific(); Double result; - result = scientific.tan(-1.995200412208242); - if (result != 90.0) ; + result = scientific.tan(0.87144798272); + if (result != Math.tan(7)) { // Assert.fail(); } @@ -19,9 +19,9 @@ public void testTan() { @Test public void testTanR() { Scientific scientific = new Scientific(); - Double result; - result = scientific.tanR(-1.995200412208242); - if (result != 100) ; + Double value; + value = scientific.tanR(0.10955952677); + if (value != Math.atan(.11)) { // Assert.fail(); } @@ -30,8 +30,8 @@ public void testTanR() { public void testCos(){ Scientific scientific = new Scientific(); Double value; - value = scientific.cos(-1.995200412208242); - if value != scientific.cos(1.0){ + value = scientific.cos(-0.4480736161291702); + if (value != Math.cos(90.0)){ Assert.fail(); } } @@ -39,8 +39,8 @@ public void testCos(){ public void testCosR(){ Scientific scientific = new Scientific(); Double value; - value = scientific.cos(-1.995200412208242); - if value != scientific.cos(1.0){ + value = scientific.cos(-1.99); + if (value != Math.acos(1.0)){ Assert.fail(); } } @@ -49,7 +49,7 @@ public void testSine (){ Scientific scientific = new Scientific(); double value; value = scientific.sin(0.8939966636005579); - if value != scientific.sin(90){ + if (value != scientific.sin(90)){ Assert.fail(); } } @@ -58,16 +58,16 @@ public void testSineR (){ Scientific scientific = new Scientific(); double value; value = scientific.sinR(8); - if value = scientific.sinR(5.0){ + if (value != scientific.sinR(5.0)){ Assert.fail(); } } @Test public void testCubed (){ - Scientific scientific = Scientific(); + Scientific scientific = new Scientific(); double value; value = scientific.cb(3); - if value = scientific.cb(10){ + if (value != scientific.cb(10)){ Assert.fail(); } } @@ -76,7 +76,7 @@ public void testSqrt (){ Scientific scientific = new Scientific(); double value; value = scientific.sqrt(25); - if value != scientific.sqrt(5){ + if (value != scientific.sqrt(5)){ Assert.fail(); } } @@ -85,7 +85,7 @@ public void testSquare (){ Scientific scientific = new Scientific(); double value; value = scientific.squ(5); - if value = scientific.squ(25){ + if (value != scientific.squ(25)){ Assert.fail(); } } From 42e7a083e837c07af6b8b5a24d8eea47fdf6f47a Mon Sep 17 00:00:00 2001 From: Bobbi-Z <85585077+Bobbi-Z@users.noreply.github.com> Date: Mon, 28 Jun 2021 06:06:13 -0400 Subject: [PATCH 30/39] root and square - all tests pass --- .../CalculatorEngine.java | 26 ++++++++++++++++++- .../scientificcalculator/Scientific.java | 2 +- .../CalculatorEngineTest.java | 18 +++++++++++++ 3 files changed, 44 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java index c9198fc..a971214 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java @@ -34,4 +34,28 @@ public static Double squareRoot(Double firstNum){ public static Double square(Double firstNum){ return firstNum * firstNum; } -} + + public static Double squareY(Double firstNum, Double secondNum) { + return Math.pow(firstNum, secondNum); + + } + + public static Double squareRootY(Double firstNum, Double secondNum){ + double xPre = Math.random() % 10; + double eps = 0.001; + double delX = 2147483647; + double xK = 0.00; + double A = firstNum; + double N = secondNum; + + + while (delX > eps){ + xK = ((N - 1.0) * xPre + A / Math.pow(xPre, N - 1)) / N; + delX = Math.abs(xK - xPre); + xPre = xK; + } + double value = Math.round(xK * 1000.00) / 1000.00; + return value; + } + + } diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java b/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java index fe3a9a8..bf77835 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java @@ -1,6 +1,6 @@ package com.zipcodewilmington.scientificcalculator; -/* + public class Scientific { public static void main(String[] args) { diff --git a/src/test/java/com/zipcodewilmington/scientific_calculator/CalculatorEngineTest.java b/src/test/java/com/zipcodewilmington/scientific_calculator/CalculatorEngineTest.java index d9af6dd..fd83f0f 100644 --- a/src/test/java/com/zipcodewilmington/scientific_calculator/CalculatorEngineTest.java +++ b/src/test/java/com/zipcodewilmington/scientific_calculator/CalculatorEngineTest.java @@ -4,6 +4,7 @@ import org.junit.Assert; import org.junit.Test; +import static com.sun.tools.doclint.Entity.divide; import static com.zipcodewilmington.scientificcalculator.CalculatorEngine.*; @@ -110,6 +111,23 @@ public void testSquare(){ Double actual = square(firstNum); Assert.assertEquals(expected, actual); } + @Test + public void testSquareY(){ + Double expected = 7776.00; + Double firstNum = 6.00; + Double secondNumb = 5.00; + Double actual = CalculatorEngine.squareY(firstNum, secondNumb); + Assert.assertEquals(expected, actual); + } + + @Test + public void testSquareRootY(){ + Double expected = 1.431; + Double firstNum = 6.00; + Double secondNumb = 5.00; + Double actual = CalculatorEngine.squareRootY(firstNum, secondNumb); + Assert.assertEquals(expected, actual); + } } From 28fcabee40cc8f2e5146e67fbd811e4af766ee77 Mon Sep 17 00:00:00 2001 From: Bobbi-Z <85585077+Bobbi-Z@users.noreply.github.com> Date: Mon, 28 Jun 2021 06:08:23 -0400 Subject: [PATCH 31/39] Add files via upload --- CalculatorEngineTest.java | 142 ++++++++++++++++++++++++++++++++++++++ TestMainApplication.java | 7 ++ 2 files changed, 149 insertions(+) create mode 100644 CalculatorEngineTest.java create mode 100644 TestMainApplication.java diff --git a/CalculatorEngineTest.java b/CalculatorEngineTest.java new file mode 100644 index 0000000..fd83f0f --- /dev/null +++ b/CalculatorEngineTest.java @@ -0,0 +1,142 @@ +package com.zipcodewilmington.scientific_calculator; + +import com.zipcodewilmington.scientificcalculator.CalculatorEngine; +import org.junit.Assert; +import org.junit.Test; + +import static com.sun.tools.doclint.Entity.divide; +import static com.zipcodewilmington.scientificcalculator.CalculatorEngine.*; + + +public class CalculatorEngineTest { + + @Test + public void testSum1() { + // Given + CalculatorEngine CalculatorEngine = new CalculatorEngine(); + // When + Double result; + result = CalculatorEngine.sum(2.00, 2.00); + // Then + if (result != 4.00) { // if 2 + 2 != 4 + Assert.fail(); + } + } + @Test + public void testSum2() { + // Given + CalculatorEngine CalculatorEngine = new CalculatorEngine(); + // When + Double result; + result = CalculatorEngine.sum(1200.00, 500.00); + // Then + if (result != 1700.00) { // if 1200 + 500 != 1700 + Assert.fail(); + } + } + @Test + public void testSubtract1() { + // Given + CalculatorEngine calculatorEngine = new CalculatorEngine(); + // When + Double result; + result = calculatorEngine.subtract(10.00, 5.00); + // Then + if (result != 5.00) { // 10 - 5 = 5 + Assert.fail(); + } + } + @Test + public void testSubtract2() { + // Given + CalculatorEngine calculatorEngine = new CalculatorEngine(); + // When + Double result; + result = calculatorEngine.subtract(20.00, 3.00); + // Then + if (result != 17.00) { // 20 - 3 = 17 + Assert.fail(); + } + } + + @Test + public void testDivide1() { + Double expected = 100.00; + Double firstNum = 1000.00; + Double secondNum = 10.00; + Double actual = CalculatorEngine.divide(firstNum, secondNum); + Assert.assertEquals(expected, actual); + } + + @Test + public void testDivide2() { + Double expected = 4.00; + Double firstNum = 20.00; + Double secondNum = 5.00; + Double actual = CalculatorEngine.divide(firstNum, secondNum); + Assert.assertEquals(expected, actual); + } + + @Test + public void testMultiply1() { + Double expected = 100.00; + Double firstNum = 20.00; + Double secondNum = 5.00; + Double actual = multiply(firstNum, secondNum); + Assert.assertEquals(expected, actual); + } + + + @Test + public void testMultiply2() { + Double expected = 4.00; + Double firstNum = 2.00; + Double secondNum = 2.0; + Double actual = multiply(firstNum, secondNum); + Assert.assertEquals(expected, actual); + } + + @Test + public void testSquareRoot(){ + Double expected = 2.00; + Double firstNum = 4.00; + Double actual = squareRoot(firstNum); + Assert.assertEquals(expected, actual); + } + + @Test + public void testSquare(){ + Double expected = 16.00; + Double firstNum = 4.00; + Double actual = square(firstNum); + Assert.assertEquals(expected, actual); + } + @Test + public void testSquareY(){ + Double expected = 7776.00; + Double firstNum = 6.00; + Double secondNumb = 5.00; + Double actual = CalculatorEngine.squareY(firstNum, secondNumb); + Assert.assertEquals(expected, actual); + } + + @Test + public void testSquareRootY(){ + Double expected = 1.431; + Double firstNum = 6.00; + Double secondNumb = 5.00; + Double actual = CalculatorEngine.squareRootY(firstNum, secondNumb); + Assert.assertEquals(expected, actual); + } +} + + + +/* @Test(expected = ArithmeticException.class) + public void testDivideWillThrowExceptionWhenDivideOnZero() { + Calculator calculator = new Calculator(); + calculator.divide(6, 0); + } +} */ + + diff --git a/TestMainApplication.java b/TestMainApplication.java new file mode 100644 index 0000000..94e8d98 --- /dev/null +++ b/TestMainApplication.java @@ -0,0 +1,7 @@ +package com.zipcodewilmington.scientific_calculator; + +/** + * Created by leon on 2/9/18. + */ +public class TestMainApplication { +} From 7023e2496ab3542d10388d676666bb5e73468a7a Mon Sep 17 00:00:00 2001 From: Bobbi-Z <85585077+Bobbi-Z@users.noreply.github.com> Date: Mon, 28 Jun 2021 06:12:12 -0400 Subject: [PATCH 32/39] Delete TestMainApplication.java --- TestMainApplication.java | 7 ------- 1 file changed, 7 deletions(-) delete mode 100644 TestMainApplication.java diff --git a/TestMainApplication.java b/TestMainApplication.java deleted file mode 100644 index 94e8d98..0000000 --- a/TestMainApplication.java +++ /dev/null @@ -1,7 +0,0 @@ -package com.zipcodewilmington.scientific_calculator; - -/** - * Created by leon on 2/9/18. - */ -public class TestMainApplication { -} From 9113a1aa721381245c7a55d572d3b639717f54bb Mon Sep 17 00:00:00 2001 From: Bobbi-Z <85585077+Bobbi-Z@users.noreply.github.com> Date: Mon, 28 Jun 2021 06:12:27 -0400 Subject: [PATCH 33/39] Delete CalculatorEngineTest.java --- CalculatorEngineTest.java | 142 -------------------------------------- 1 file changed, 142 deletions(-) delete mode 100644 CalculatorEngineTest.java diff --git a/CalculatorEngineTest.java b/CalculatorEngineTest.java deleted file mode 100644 index fd83f0f..0000000 --- a/CalculatorEngineTest.java +++ /dev/null @@ -1,142 +0,0 @@ -package com.zipcodewilmington.scientific_calculator; - -import com.zipcodewilmington.scientificcalculator.CalculatorEngine; -import org.junit.Assert; -import org.junit.Test; - -import static com.sun.tools.doclint.Entity.divide; -import static com.zipcodewilmington.scientificcalculator.CalculatorEngine.*; - - -public class CalculatorEngineTest { - - @Test - public void testSum1() { - // Given - CalculatorEngine CalculatorEngine = new CalculatorEngine(); - // When - Double result; - result = CalculatorEngine.sum(2.00, 2.00); - // Then - if (result != 4.00) { // if 2 + 2 != 4 - Assert.fail(); - } - } - @Test - public void testSum2() { - // Given - CalculatorEngine CalculatorEngine = new CalculatorEngine(); - // When - Double result; - result = CalculatorEngine.sum(1200.00, 500.00); - // Then - if (result != 1700.00) { // if 1200 + 500 != 1700 - Assert.fail(); - } - } - @Test - public void testSubtract1() { - // Given - CalculatorEngine calculatorEngine = new CalculatorEngine(); - // When - Double result; - result = calculatorEngine.subtract(10.00, 5.00); - // Then - if (result != 5.00) { // 10 - 5 = 5 - Assert.fail(); - } - } - @Test - public void testSubtract2() { - // Given - CalculatorEngine calculatorEngine = new CalculatorEngine(); - // When - Double result; - result = calculatorEngine.subtract(20.00, 3.00); - // Then - if (result != 17.00) { // 20 - 3 = 17 - Assert.fail(); - } - } - - @Test - public void testDivide1() { - Double expected = 100.00; - Double firstNum = 1000.00; - Double secondNum = 10.00; - Double actual = CalculatorEngine.divide(firstNum, secondNum); - Assert.assertEquals(expected, actual); - } - - @Test - public void testDivide2() { - Double expected = 4.00; - Double firstNum = 20.00; - Double secondNum = 5.00; - Double actual = CalculatorEngine.divide(firstNum, secondNum); - Assert.assertEquals(expected, actual); - } - - @Test - public void testMultiply1() { - Double expected = 100.00; - Double firstNum = 20.00; - Double secondNum = 5.00; - Double actual = multiply(firstNum, secondNum); - Assert.assertEquals(expected, actual); - } - - - @Test - public void testMultiply2() { - Double expected = 4.00; - Double firstNum = 2.00; - Double secondNum = 2.0; - Double actual = multiply(firstNum, secondNum); - Assert.assertEquals(expected, actual); - } - - @Test - public void testSquareRoot(){ - Double expected = 2.00; - Double firstNum = 4.00; - Double actual = squareRoot(firstNum); - Assert.assertEquals(expected, actual); - } - - @Test - public void testSquare(){ - Double expected = 16.00; - Double firstNum = 4.00; - Double actual = square(firstNum); - Assert.assertEquals(expected, actual); - } - @Test - public void testSquareY(){ - Double expected = 7776.00; - Double firstNum = 6.00; - Double secondNumb = 5.00; - Double actual = CalculatorEngine.squareY(firstNum, secondNumb); - Assert.assertEquals(expected, actual); - } - - @Test - public void testSquareRootY(){ - Double expected = 1.431; - Double firstNum = 6.00; - Double secondNumb = 5.00; - Double actual = CalculatorEngine.squareRootY(firstNum, secondNumb); - Assert.assertEquals(expected, actual); - } -} - - - -/* @Test(expected = ArithmeticException.class) - public void testDivideWillThrowExceptionWhenDivideOnZero() { - Calculator calculator = new Calculator(); - calculator.divide(6, 0); - } -} */ - - From 7d29c67c58d02609f9c3bc715d11a55f65ab588a Mon Sep 17 00:00:00 2001 From: Bobbi-Z <85585077+Bobbi-Z@users.noreply.github.com> Date: Mon, 28 Jun 2021 06:30:49 -0400 Subject: [PATCH 34/39] double check all code --- .../scientificcalculator/CalculatorEngine.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java index ef03bde..c83459f 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/CalculatorEngine.java @@ -4,7 +4,7 @@ public class CalculatorEngine { // CalculatorEngine calculatorEngine = new CalculatorEngine(); private static Double value; - public Double sum(Double firstNum, Double secondNum) { + public static Double sum(Double firstNum, Double secondNum) { return firstNum + secondNum; } From 7dad93f12dd491b7b453499726b83802ce7d5bd2 Mon Sep 17 00:00:00 2001 From: Bobbi-Z <85585077+Bobbi-Z@users.noreply.github.com> Date: Mon, 28 Jun 2021 07:01:25 -0400 Subject: [PATCH 35/39] Add files via upload --- Scientific-Calc-UML as of 6:28:2021.png | Bin 0 -> 89548 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 Scientific-Calc-UML as of 6:28:2021.png diff --git a/Scientific-Calc-UML as of 6:28:2021.png b/Scientific-Calc-UML as of 6:28:2021.png new file mode 100644 index 0000000000000000000000000000000000000000..8dd235eacb42152d9e2dd473335b760ca5d37f61 GIT binary patch literal 89548 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

K8dP!?;x*lt-l#lBbu0Ysz_~q2y1O$+23*{W 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 Date: Mon, 28 Jun 2021 07:02:52 -0400 Subject: [PATCH 36/39] Add files via upload cannotsleep... From f74c1f3b98a6a7176173627521c7504f2294baa7 Mon Sep 17 00:00:00 2001 From: charnaexw Date: Mon, 28 Jun 2021 07:45:44 -0400 Subject: [PATCH 37/39] added static to the class in my code. --- .../scientificcalculator/Scientific.java | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java b/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java index 471e86a..8b8d121 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java @@ -10,50 +10,50 @@ public static Double tan (double value) { return value; } - public Double tanR(double value) { + public static Double tanR(double value) { value = 0; value = Math.atan(value); return value; } - public Double cos(double value) { + public static Double cos(double value) { value = 0; value = Math.cos(value); return value; } - public double sin(double value) { + public static double sin(double value) { value = 0; value = Math.sin(value); return value; } - public double cb(double value) { + public static double cb(double value) { value = 0; value= Math.pow(value, 3); return value; } - public double sqrt(double value) { + public static double sqrt(double value) { value = 0; value = Math.sqrt(value); return value; } - public double squ(double value) { + public static double squ(double value) { value = 0; value = Math.pow(value, 2); return value; } - public double sinR(double value) { + public static double sinR(double value) { value = 0; value = Math.asin(value); return value; } - public double cosR(double value){ + public static double cosR(double value){ value = 0; value = Math.acos(value); return value; From 30c242dceebdb9f188c5beffc9e3ed6afb501331 Mon Sep 17 00:00:00 2001 From: Bobbi-Z <85585077+Bobbi-Z@users.noreply.github.com> Date: Mon, 28 Jun 2021 08:56:01 -0400 Subject: [PATCH 38/39] Add files via upload updated UML with char's chamges. --- Scientific-Calc UML.png | Bin 0 -> 92843 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 Scientific-Calc UML.png diff --git a/Scientific-Calc UML.png b/Scientific-Calc UML.png new file mode 100644 index 0000000000000000000000000000000000000000..a0fedbcbeb8dec802d2e247491d5ca20f5dcfa7e GIT binary patch literal 92843 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 literal 0 HcmV?d00001 From 831537d6ad0e2f5ed487bd97ae4524d6ac7af4e0 Mon Sep 17 00:00:00 2001 From: Bobbi-Z <85585077+Bobbi-Z@users.noreply.github.com> Date: Mon, 28 Jun 2021 10:09:25 -0400 Subject: [PATCH 39/39] last minute updates --- Scientific-Calc-UML as of 6:28:2021.png | Bin 89548 -> 0 bytes .../scientificcalculator/CalculatorEngine.java | 8 ++++++++ .../CalculatorEngineTest.java | 13 +++++++++++++ 3 files changed, 21 insertions(+) delete mode 100644 Scientific-Calc-UML as of 6:28:2021.png diff --git a/Scientific-Calc-UML as of 6:28:2021.png b/Scientific-Calc-UML as of 6:28:2021.png deleted file mode 100644 index 8dd235eacb42152d9e2dd473335b760ca5d37f61..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 89548 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

K8dP!?;x*lt-l#lBbu0Ysz_~q2y1O$+23*{W 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