From 0dc1b3648f81c55bf172e557a575899f66142f43 Mon Sep 17 00:00:00 2001 From: isiah-a Date: Sat, 1 Mar 2025 11:46:58 -0500 Subject: [PATCH 01/27] Added custom function java file --- .../scientificcalculator/Customfunctions.java | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 src/main/java/com/zipcodewilmington/scientificcalculator/Customfunctions.java diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/Customfunctions.java b/src/main/java/com/zipcodewilmington/scientificcalculator/Customfunctions.java new file mode 100644 index 0000000..aa2aa7b --- /dev/null +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/Customfunctions.java @@ -0,0 +1,7 @@ +package com.zipcodewilmington.scientificcalculator; + +import java.util.Scanner; + +public class Customfunctions { + +} From 6b8e8b17277ccc6510c4e3bbb6826e22819214db Mon Sep 17 00:00:00 2001 From: christhomas1190 <111439861+christhomas1190@users.noreply.github.com> Date: Sat, 1 Mar 2025 11:55:59 -0500 Subject: [PATCH 02/27] Can you see this --- SciCalc.puml | 27 +++++++++++++++++++ ScienceCalc.puml | 17 ++++++++++++ .../scientificcalculator/Scientific.java | 5 ++++ 3 files changed, 49 insertions(+) create mode 100644 SciCalc.puml create mode 100644 ScienceCalc.puml create mode 100644 src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java diff --git a/SciCalc.puml b/SciCalc.puml new file mode 100644 index 0000000..f2cda62 --- /dev/null +++ b/SciCalc.puml @@ -0,0 +1,27 @@ +@startuml +'https://plantuml.com/class-diagram + +abstract class AbstractList +abstract AbstractCollection +interface List +interface Collection + +List <|-- AbstractList +Collection <|-- AbstractCollection + +Collection <|- List +AbstractCollection <|- AbstractList +AbstractList <|-- ArrayList + +class ArrayList { +Object[] elementData +size() +} + +enum TimeUnit { +DAYS +HOURS +MINUTES +} + +@enduml \ No newline at end of file diff --git a/ScienceCalc.puml b/ScienceCalc.puml new file mode 100644 index 0000000..e14da04 --- /dev/null +++ b/ScienceCalc.puml @@ -0,0 +1,17 @@ +@startuml +'https://plantuml.com/object-diagram + +object London +object Washington +object Berlin +object PuertoRico +object NewYork + +map CapitalCity { + UK *-> London + USA *--> Washington + Germany *---> Berlin +} + +NewYork --> CapitalCity::USA +@enduml 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..a1e24dd --- /dev/null +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java @@ -0,0 +1,5 @@ +package com.zipcodewilmington.scientificcalculator; + +public class Scientific { + +} From 85b1845bd039dbefb964ec60a1e081eb679e7c3c Mon Sep 17 00:00:00 2001 From: isiah-a Date: Sat, 1 Mar 2025 12:03:41 -0500 Subject: [PATCH 03/27] Added custom function java file --- .../zipcodewilmington/scientificcalculator/Corefunctions.java | 4 ++++ .../scientificcalculator/MainApplication.java | 1 + 2 files changed, 5 insertions(+) create mode 100644 src/main/java/com/zipcodewilmington/scientificcalculator/Corefunctions.java diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/Corefunctions.java b/src/main/java/com/zipcodewilmington/scientificcalculator/Corefunctions.java new file mode 100644 index 0000000..107a4c3 --- /dev/null +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/Corefunctions.java @@ -0,0 +1,4 @@ +package com.zipcodewilmington.scientificcalculator; + +public class Corefunctions { +} diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java b/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java index 5f42132..4e3a3c4 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java @@ -15,3 +15,4 @@ public static void main(String[] args) { Console.println("The user input %s as a d", d); } } + From 084753b8ae4c098e373db2b3f7fa5373f73f46a6 Mon Sep 17 00:00:00 2001 From: isiah-a Date: Sat, 1 Mar 2025 13:51:51 -0500 Subject: [PATCH 04/27] Added basic math --- .../BasicCalcfunctions.java | 37 +++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 src/main/java/com/zipcodewilmington/scientificcalculator/BasicCalcfunctions.java diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/BasicCalcfunctions.java b/src/main/java/com/zipcodewilmington/scientificcalculator/BasicCalcfunctions.java new file mode 100644 index 0000000..201a53a --- /dev/null +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/BasicCalcfunctions.java @@ -0,0 +1,37 @@ +package com.zipcodewilmington.scientificcalculator; + +import java.util.scanner; +import java.lang.Math; + + +Public class BasicCalcfunctions { + + //Add + public static double addition(double a, double b) { + return a + b; + } + + //Subtract + public static double subtraction(double a, double b) { + return a - b; + } + + //Multiplication + public static double multiplication(double a, double b) { + return a * b; + } + + //Division + public static double division(double a, double b) { + if (b == 0) { + throw new ArithmeticException("Can't divide by 0"); + } else { + return a / b; + } + + } + + public static double Memory(double a, double b) { + return a=b; + } +} From 9ad792898ea29f424e92bc48c645218e5989b705 Mon Sep 17 00:00:00 2001 From: christhomas1190 <111439861+christhomas1190@users.noreply.github.com> Date: Sat, 1 Mar 2025 14:17:06 -0500 Subject: [PATCH 05/27] Here we go again --- .../scientificcalculator/Console.java | 2 +- .../scientificcalculator/Science.java | 56 +++++++++++++++++++ .../scientificcalculator/Scientific.java | 5 -- 3 files changed, 57 insertions(+), 6 deletions(-) create mode 100644 src/main/java/com/zipcodewilmington/scientificcalculator/Science.java delete mode 100644 src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/Console.java b/src/main/java/com/zipcodewilmington/scientificcalculator/Console.java index 83f0e97..5e59ade 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/Console.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/Console.java @@ -29,4 +29,4 @@ public static Integer getIntegerInput(String prompt) { public static Double getDoubleInput(String prompt) { return null; } -} +} \ No newline at end of file diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java b/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java new file mode 100644 index 0000000..fefa355 --- /dev/null +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java @@ -0,0 +1,56 @@ +package com.zipcodewilmington.scientificcalculator; + +import java.util.Scanner; + +public class Science { + + public double square(double num){ + return num*num; + } + public double pow(double a, double b){ + return Math.pow(a, b); + } + public double squareRt(double num) { + return Math.sqrt(num); + } + public double inverse(double num) { + return inverse(num); + } + public double inverseSine(double num) { + return inverseSine(num); + } + public double switchSign(double num) { + return switchSign(num); + } + public double sin(double num) { + return Math.sin(num); + } + public double cos(double num) { + return Math.cos(num); + } + public double tan(double num) { + return Math.tan(num); + } + public double inverseCos(double num) { + return Math.acos(num); + } + public double inverseTan(double num) { + return Math.atan(num); + } + public double factorial(double num) { + int i = 0; + for (i = 0; i <= num; i++) { + return num * i; + } + } + + + public static void main(String[] args) { + Scanner scanner = new Scanner(System.in); + Science science = new Science(); + System.out.print("Enter a number to find the square root: "); + double number = scanner.nextDouble(); + double result = science.squareRt(number); + System.out.println("The square root of " + number + " is: " + result); + } +}; diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java b/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java deleted file mode 100644 index a1e24dd..0000000 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/Scientific.java +++ /dev/null @@ -1,5 +0,0 @@ -package com.zipcodewilmington.scientificcalculator; - -public class Scientific { - -} From 0a135b623bb0299af2f6fe61d450718d299264d9 Mon Sep 17 00:00:00 2001 From: christhomas1190 <111439861+christhomas1190@users.noreply.github.com> Date: Sat, 1 Mar 2025 14:31:25 -0500 Subject: [PATCH 06/27] Here we go again --- .../java/com/zipcodewilmington/scientificcalculator/Science.java | 1 + 1 file changed, 1 insertion(+) diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java b/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java index fefa355..90b941d 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java @@ -45,6 +45,7 @@ public double factorial(double num) { } + public static void main(String[] args) { Scanner scanner = new Scanner(System.in); Science science = new Science(); From 85d8f8fd797b487a781d439ddd819a13fef6a798 Mon Sep 17 00:00:00 2001 From: christhomas1190 <111439861+christhomas1190@users.noreply.github.com> Date: Sat, 1 Mar 2025 14:36:32 -0500 Subject: [PATCH 07/27] Everything in science --- .../BasicCalcfunctions.java | 37 ------------------- .../scientificcalculator/Science.java | 22 +++++++++++ 2 files changed, 22 insertions(+), 37 deletions(-) delete mode 100644 src/main/java/com/zipcodewilmington/scientificcalculator/BasicCalcfunctions.java diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/BasicCalcfunctions.java b/src/main/java/com/zipcodewilmington/scientificcalculator/BasicCalcfunctions.java deleted file mode 100644 index 201a53a..0000000 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/BasicCalcfunctions.java +++ /dev/null @@ -1,37 +0,0 @@ -package com.zipcodewilmington.scientificcalculator; - -import java.util.scanner; -import java.lang.Math; - - -Public class BasicCalcfunctions { - - //Add - public static double addition(double a, double b) { - return a + b; - } - - //Subtract - public static double subtraction(double a, double b) { - return a - b; - } - - //Multiplication - public static double multiplication(double a, double b) { - return a * b; - } - - //Division - public static double division(double a, double b) { - if (b == 0) { - throw new ArithmeticException("Can't divide by 0"); - } else { - return a / b; - } - - } - - public static double Memory(double a, double b) { - return a=b; - } -} diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java b/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java index 90b941d..79b1b37 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java @@ -43,8 +43,30 @@ public double factorial(double num) { return num * i; } } + + //Addition + public static double addition(double a, double b) { + return a + b; + } + //Subtract + public static double subtraction(double a, double b) { + return a - b; + } + + //Multiplication + public static double multiplication(double a, double b) { + return a * b; + } + //Division + public static double division(double a, double b) { + if (b == 0) { + throw new ArithmeticException("Can't divide by 0"); + } else { + return a / b; + } + } public static void main(String[] args) { Scanner scanner = new Scanner(System.in); From 2dbd83df1cc137d09f111e4dba3e4448477a146c Mon Sep 17 00:00:00 2001 From: christhomas1190 <111439861+christhomas1190@users.noreply.github.com> Date: Sat, 1 Mar 2025 17:23:50 -0500 Subject: [PATCH 08/27] Almost there?? --- .../scientificcalculator/Console.java | 13 ++- .../scientificcalculator/MainApplication.java | 47 +++++++-- .../scientificcalculator/Science.java | 95 +++++++++---------- 3 files changed, 95 insertions(+), 60 deletions(-) diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/Console.java b/src/main/java/com/zipcodewilmington/scientificcalculator/Console.java index 5e59ade..d917682 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/Console.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/Console.java @@ -23,10 +23,19 @@ public static String getStringInput(String prompt) { } public static Integer getIntegerInput(String prompt) { - return null; + Scanner scanner = new Scanner(System.in); + System.out.println(prompt); + int userInput2= scanner.nextInt(); + return userInput2; } public static Double getDoubleInput(String prompt) { - return null; + Scanner scanner = new Scanner(System.in); + System.out.println(prompt); + while(!scanner.hasNextDouble()){ + System.out.println("Invalid input. Please enter a valid double"); + scanner.next(); + } + return scanner.nextDouble(); } } \ No newline at end of file diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java b/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java index 4e3a3c4..6fc5139 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java @@ -1,18 +1,49 @@ package com.zipcodewilmington.scientificcalculator; +import java.util.Scanner; + /** * Created by leon on 2/9/18. */ public class MainApplication { public static void main(String[] args) { - Console.println("Welcome to my calculator!"); - 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 d", d); + System.out.println("Welcome to my scientific calculator"); + Scanner scanner = new Scanner(System.in); + + while (true) { + System.out.println(" Choose an operation"); + System.out.println("1: Addition"); + System.out.println("2: Subtraction"); + System.out.println("3: Multiplication"); + System.out.println("4: Division"); +// System.out.println(""); +// System.out.println(""); +// System.out.println(""); +// System.out.println(""); +// System.out.println(""); +// System.out.println(""); + System.out.println("13"); + + int choice =scanner.nextInt(); + + if(choice == 13){ + break; + } + double num1=0; + double num2=0; + + if(choice >=1 && choice <= 4){ + num1= Console.getDoubleInput("Enter first number here :"); + num2= Console.getDoubleInput("Enter second number here :"); + + } + Science science = new Science(); + switch(choice){ + case 1: + System.out.println("Result:" + science.addition(num1, num2)); + break; + } + } } } diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java b/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java index 79b1b37..28d67bd 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java @@ -4,46 +4,42 @@ public class Science { - public double square(double num){ - return num*num; - } - public double pow(double a, double b){ - return Math.pow(a, b); - } - public double squareRt(double num) { - return Math.sqrt(num); - } - public double inverse(double num) { - return inverse(num); - } - public double inverseSine(double num) { - return inverseSine(num); - } - public double switchSign(double num) { - return switchSign(num); - } - public double sin(double num) { - return Math.sin(num); - } - public double cos(double num) { - return Math.cos(num); - } - public double tan(double num) { - return Math.tan(num); - } - public double inverseCos(double num) { - return Math.acos(num); - } - public double inverseTan(double num) { - return Math.atan(num); - } - public double factorial(double num) { - int i = 0; - for (i = 0; i <= num; i++) { - return num * i; - } - } - +// public double square(double num){ +// return num*num; +// } +// public double pow(double a, double b){ +// return Math.pow(a, b); +// } +// public static double squareRt(double num) { +// double squareRt = Math.sqrt(num); +// +// return squareRt; +// } +// public double inverse(double num) { +// return inverse(num); +// } +// public double inverseSine(double num) { +// return inverseSine(num); +// } +// public double switchSign(double num) {return switchSign(num);} +// public double sin(double num) { +// return Math.sin(num); +// } +// public double cos(double num) { +// return Math.cos(num); +// } +// public double tan(double num) {return Math.tan(num);} +// public double inverseCos(double num) {return Math.acos(num);} +// public double inverseTan(double num) { +// return Math.atan(num); +// } +//// public double factorial(double num) { +//// int i = 0; +//// for (i = 0; i <= num; i++) { +//// return num * i; +//// } +//// } +// //Addition public static double addition(double a, double b) { return a + b; @@ -65,15 +61,14 @@ public static double division(double a, double b) { } else { return a / b; } - } +} - public static void main(String[] args) { - Scanner scanner = new Scanner(System.in); - Science science = new Science(); - System.out.print("Enter a number to find the square root: "); - double number = scanner.nextDouble(); - double result = science.squareRt(number); - System.out.println("The square root of " + number + " is: " + result); - } -}; +// public static void main(String[] args) { +// Scanner scanner = new Scanner(System.in); +// Science science = new Science(); +// double number = scanner.nextDouble(); +// double result = science.squareRt(number); +// System.out.println("The square root of " + number + " is: " + result); +// } +//}; From c11ffe5a7c80afcc89d28e6d03076c25f3c30f8f Mon Sep 17 00:00:00 2001 From: christhomas1190 <111439861+christhomas1190@users.noreply.github.com> Date: Sat, 1 Mar 2025 17:32:31 -0500 Subject: [PATCH 09/27] Almost there?? --- .../scientificcalculator/MainApplication.java | 16 ++--- .../scientificcalculator/Science.java | 67 +++++++++---------- 2 files changed, 38 insertions(+), 45 deletions(-) diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java b/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java index 6fc5139..ec2b07d 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java @@ -16,13 +16,14 @@ public static void main(String[] args) { System.out.println("2: Subtraction"); System.out.println("3: Multiplication"); System.out.println("4: Division"); -// System.out.println(""); -// System.out.println(""); -// System.out.println(""); -// System.out.println(""); -// System.out.println(""); -// System.out.println(""); - System.out.println("13"); + System.out.println("5: Square"); + System.out.println("6: Square root"); + System.out.println("7: Sine"); + System.out.println("8: Cosine"); + System.out.println("8: Tangent"); + System.out.println("9: Inverse Sine"); + System.out.println("10: Inverse Cosine"); + System.out.println("13"); int choice =scanner.nextInt(); @@ -35,7 +36,6 @@ public static void main(String[] args) { if(choice >=1 && choice <= 4){ num1= Console.getDoubleInput("Enter first number here :"); num2= Console.getDoubleInput("Enter second number here :"); - } Science science = new Science(); switch(choice){ diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java b/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java index 28d67bd..3ce009f 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java @@ -4,35 +4,35 @@ public class Science { -// public double square(double num){ -// return num*num; -// } -// public double pow(double a, double b){ -// return Math.pow(a, b); -// } -// public static double squareRt(double num) { -// double squareRt = Math.sqrt(num); -// -// return squareRt; -// } -// public double inverse(double num) { -// return inverse(num); -// } -// public double inverseSine(double num) { -// return inverseSine(num); -// } -// public double switchSign(double num) {return switchSign(num);} -// public double sin(double num) { -// return Math.sin(num); -// } -// public double cos(double num) { -// return Math.cos(num); -// } -// public double tan(double num) {return Math.tan(num);} -// public double inverseCos(double num) {return Math.acos(num);} -// public double inverseTan(double num) { -// return Math.atan(num); -// } + public double square(double num){ + return num*num; + } + public double pow(double a, double b){ + return Math.pow(a, b); + } + public static double squareRt(double num) { + double squareRt = Math.sqrt(num); + + return squareRt; + } + public double inverse(double num) { + return inverse(num); + } + public double inverseSine(double num) { + return inverseSine(num); + } + public double switchSign(double num) {return switchSign(num);} + public double sin(double num) { + return Math.sin(num); + } + public double cos(double num) { + return Math.cos(num); + } + public double tan(double num) {return Math.tan(num);} + public double inverseCos(double num) {return Math.acos(num);} + public double inverseTan(double num) { + return Math.atan(num); + } //// public double factorial(double num) { //// int i = 0; //// for (i = 0; i <= num; i++) { @@ -64,11 +64,4 @@ public static double division(double a, double b) { } } -// public static void main(String[] args) { -// Scanner scanner = new Scanner(System.in); -// Science science = new Science(); -// double number = scanner.nextDouble(); -// double result = science.squareRt(number); -// System.out.println("The square root of " + number + " is: " + result); -// } -//}; + From a31901fcf5e2fb7ea7b6e8b165b2febc49dcebf0 Mon Sep 17 00:00:00 2001 From: isiah-a Date: Sat, 1 Mar 2025 20:35:21 -0500 Subject: [PATCH 10/27] Adding more math methods --- .../scientificcalculator/Science.java | 25 ++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java b/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java index 3ce009f..d54d648 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java @@ -1,5 +1,5 @@ package com.zipcodewilmington.scientificcalculator; - +import java.lang.Math; import java.util.Scanner; public class Science { @@ -62,6 +62,29 @@ public static double division(double a, double b) { return a / b; } } + public static double degrees(double num) { + return Math.toDegrees(num); + } + + public static double radians(double num) { + return Math.toRadians(num); + } + + public static double log(double num) { + return Math.log(num); + + } + + public static double log10(double num) { + return Math.log10(num); + } + + //Natural logarithm + public static double log1p(double num) { + return Math.log1p(num); + } + + public static double } From d3ec3228f0d18f53574fa8b5dc27b6fb71b40bd9 Mon Sep 17 00:00:00 2001 From: isiah-a Date: Sat, 1 Mar 2025 21:45:40 -0500 Subject: [PATCH 11/27] Added more math and made minor changes to MainApplication --- .../scientificcalculator/MainApplication.java | 4 +-- .../scientificcalculator/Science.java | 28 +++++++++++++------ .../TestMainApplication.java | 1 + 3 files changed, 22 insertions(+), 11 deletions(-) diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java b/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java index ec2b07d..7309b49 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java @@ -23,9 +23,9 @@ public static void main(String[] args) { System.out.println("8: Tangent"); System.out.println("9: Inverse Sine"); System.out.println("10: Inverse Cosine"); - System.out.println("13"); + System.out.println("13: Quit application"); - int choice =scanner.nextInt(); + int choice = scanner.nextInt(); if(choice == 13){ break; diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java b/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java index d54d648..201f103 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java @@ -11,25 +11,31 @@ public double pow(double a, double b){ return Math.pow(a, b); } public static double squareRt(double num) { - double squareRt = Math.sqrt(num); - - return squareRt; + return Math.sqrt(num); } public double inverse(double num) { - return inverse(num); + return 1 / num; } + + //If absolute value of number is greater than 1 the result will be NaN public double inverseSine(double num) { - return inverseSine(num); + return Math.asin(num); + } + public double switchSign(double num) { + return Math.signum(num); } - public double switchSign(double num) {return switchSign(num);} public double sin(double num) { return Math.sin(num); } public double cos(double num) { return Math.cos(num); } - public double tan(double num) {return Math.tan(num);} - public double inverseCos(double num) {return Math.acos(num);} + public double tan(double num) { + return Math.tan(num); + } + public double inverseCos(double num) { + return Math.acos(num); + } public double inverseTan(double num) { return Math.atan(num); } @@ -62,19 +68,24 @@ public static double division(double a, double b) { return a / b; } } + + //Degrees public static double degrees(double num) { return Math.toDegrees(num); } + //Radians public static double radians(double num) { return Math.toRadians(num); } + //Log public static double log(double num) { return Math.log(num); } + //Inverse Log public static double log10(double num) { return Math.log10(num); } @@ -84,7 +95,6 @@ public static double log1p(double num) { return Math.log1p(num); } - public static double } diff --git a/src/test/java/com/zipcodewilmington/scientific_calculator/TestMainApplication.java b/src/test/java/com/zipcodewilmington/scientific_calculator/TestMainApplication.java index 94e8d98..6cec4ac 100644 --- a/src/test/java/com/zipcodewilmington/scientific_calculator/TestMainApplication.java +++ b/src/test/java/com/zipcodewilmington/scientific_calculator/TestMainApplication.java @@ -4,4 +4,5 @@ * Created by leon on 2/9/18. */ public class TestMainApplication { + } From 5f0baa2b90c94c88d295a05051d3c8d214b6b41c Mon Sep 17 00:00:00 2001 From: isiah-a Date: Sat, 1 Mar 2025 22:45:41 -0500 Subject: [PATCH 12/27] imported BigInteger for factorial --- .../scientificcalculator/Customfunctions.java | 1 - .../scientificcalculator/MainApplication.java | 3 +- .../scientificcalculator/Science.java | 39 +++++++++++-------- 3 files changed, 23 insertions(+), 20 deletions(-) diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/Customfunctions.java b/src/main/java/com/zipcodewilmington/scientificcalculator/Customfunctions.java index aa2aa7b..9a4d2ea 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/Customfunctions.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/Customfunctions.java @@ -1,5 +1,4 @@ package com.zipcodewilmington.scientificcalculator; - import java.util.Scanner; public class Customfunctions { diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java b/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java index 7309b49..a48d5a1 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java @@ -1,5 +1,4 @@ package com.zipcodewilmington.scientificcalculator; - import java.util.Scanner; /** @@ -25,7 +24,7 @@ public static void main(String[] args) { System.out.println("10: Inverse Cosine"); System.out.println("13: Quit application"); - int choice = scanner.nextInt(); + int choice = scanner.nextInt(); //Close scanner when all inputs are built if(choice == 13){ break; diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java b/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java index 201f103..7f0cdba 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java @@ -1,51 +1,56 @@ package com.zipcodewilmington.scientificcalculator; +import java.math.BigInteger; import java.lang.Math; -import java.util.Scanner; + public class Science { - public double square(double num){ + public static double square(double num){ return num*num; } - public double pow(double a, double b){ + public static double pow(double a, double b){ return Math.pow(a, b); } public static double squareRt(double num) { return Math.sqrt(num); } - public double inverse(double num) { + public static double inverse(double num) { return 1 / num; } //If absolute value of number is greater than 1 the result will be NaN - public double inverseSine(double num) { + public static double inverseSine(double num) { return Math.asin(num); } - public double switchSign(double num) { + + //Returns sign of number 1 for positive, -1 for negative and 0 for zero + public static double switchSign(double num) { return Math.signum(num); } - public double sin(double num) { + public static double sin(double num) { return Math.sin(num); } - public double cos(double num) { + public static double cos(double num) { return Math.cos(num); } - public double tan(double num) { + public static double tan(double num) { return Math.tan(num); } - public double inverseCos(double num) { + public static double inverseCos(double num) { return Math.acos(num); } public double inverseTan(double num) { return Math.atan(num); } -//// public double factorial(double num) { -//// int i = 0; -//// for (i = 0; i <= num; i++) { -//// return num * i; -//// } -//// } -// + + public static BigInteger factorial(int num) { + BigInteger b = new BigInteger("1"); + for(int i = 2; i <= num; i++){ + b = b.multiply(BigInteger.valueOf(i)); + } + return b; + } + //Addition public static double addition(double a, double b) { return a + b; From 35937d5fc4cc23137fe7849f938d954534716729 Mon Sep 17 00:00:00 2001 From: isiah-a Date: Sat, 1 Mar 2025 23:02:02 -0500 Subject: [PATCH 13/27] Created factorial using big integer --- .../scientificcalculator/MainApplication.java | 3 ++- .../com/zipcodewilmington/scientificcalculator/Science.java | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java b/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java index a48d5a1..38bffba 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java @@ -1,6 +1,6 @@ package com.zipcodewilmington.scientificcalculator; import java.util.Scanner; - +import java.math.BigInteger; /** * Created by leon on 2/9/18. */ @@ -24,6 +24,7 @@ public static void main(String[] args) { System.out.println("10: Inverse Cosine"); System.out.println("13: Quit application"); + int choice = scanner.nextInt(); //Close scanner when all inputs are built if(choice == 13){ diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java b/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java index 7f0cdba..b37e7a5 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java @@ -42,7 +42,7 @@ public static double inverseCos(double num) { public double inverseTan(double num) { return Math.atan(num); } - + //using BigInteger import public static BigInteger factorial(int num) { BigInteger b = new BigInteger("1"); for(int i = 2; i <= num; i++){ From 334dc2b5c7c3d70e3d2424a1a55293e92545b8d2 Mon Sep 17 00:00:00 2001 From: isiah-a Date: Sat, 1 Mar 2025 23:11:17 -0500 Subject: [PATCH 14/27] added inverse natural log in science --- .../com/zipcodewilmington/scientificcalculator/Science.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java b/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java index b37e7a5..e1337d8 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java @@ -99,6 +99,10 @@ public static double log10(double num) { public static double log1p(double num) { return Math.log1p(num); } + //Inverse Natural Log + public static double inverseNL(double num) { + return Math.exp(num); + } } From f51cc0cd4bfec539b63e5cb6e17417568b8145ed Mon Sep 17 00:00:00 2001 From: isiah-a Date: Sat, 1 Mar 2025 23:55:25 -0500 Subject: [PATCH 15/27] Added memory options in science --- .../scientificcalculator/Science.java | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java b/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java index e1337d8..ec4b34e 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java @@ -104,6 +104,19 @@ public static double inverseNL(double num) { return Math.exp(num); } + //Store memory + public static double storeMemory(double a, double b){ + return a = a + b; + } + //reset memory + public static double resetMemory(double a, double b){ + return a = 0; + } + //recall memory + public static double recallMemory(double a, double b){ + return a = a + b; + } + } From e547523e0981d13494b8d20023bfcbfd3260da91 Mon Sep 17 00:00:00 2001 From: isiah-a Date: Sun, 2 Mar 2025 00:56:25 -0500 Subject: [PATCH 16/27] Added memory to main application at bottom in comments to go in at a later time Added memory variable above while loop --- .../scientificcalculator/MainApplication.java | 20 +++++++++++++++++-- .../scientificcalculator/Science.java | 6 +++--- 2 files changed, 21 insertions(+), 5 deletions(-) diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java b/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java index 38bffba..90f2eca 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java @@ -8,8 +8,10 @@ public class MainApplication { public static void main(String[] args) { System.out.println("Welcome to my scientific calculator"); Scanner scanner = new Scanner(System.in); + double memory = 0; - while (true) { + + while (true) { //SwitchDisplayMode(String mode) = allow user to type operation/menu options in System.out.println(" Choose an operation"); System.out.println("1: Addition"); System.out.println("2: Subtraction"); @@ -23,7 +25,7 @@ public static void main(String[] args) { System.out.println("9: Inverse Sine"); System.out.println("10: Inverse Cosine"); System.out.println("13: Quit application"); - + //SwitchDisplayMode() = create multiple display menus instead of one large one? int choice = scanner.nextInt(); //Close scanner when all inputs are built @@ -43,7 +45,21 @@ public static void main(String[] args) { System.out.println("Result:" + science.addition(num1, num2)); break; } + } } } +//System.out.print(memory); +//break + +//memory = Science.storeMemory(memory, num1); +//System.out.println("Current value is " + memory ); +//break; + +//memory = Science.resetMemory(memory); +//System.out.println("Memory has been reset +//break; +//num1 = Science.recallMemory(num1, memory); +//System.out.println("Memory is now set to " + num1); +//break; \ No newline at end of file diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java b/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java index ec4b34e..dd32a0f 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java @@ -106,15 +106,15 @@ public static double inverseNL(double num) { //Store memory public static double storeMemory(double a, double b){ - return a = a + b; + return a = b; } //reset memory - public static double resetMemory(double a, double b){ + public static double resetMemory(double a){ return a = 0; } //recall memory public static double recallMemory(double a, double b){ - return a = a + b; + return a = b; } } From b739497b7120546485bb4c40937ae3ed7097271a Mon Sep 17 00:00:00 2001 From: isiah-a Date: Sun, 2 Mar 2025 12:02:33 -0500 Subject: [PATCH 17/27] Added comments for math in Science file --- .../scientificcalculator/Science.java | 26 ++++++++++++++----- 1 file changed, 19 insertions(+), 7 deletions(-) diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java b/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java index dd32a0f..d776918 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java @@ -5,15 +5,19 @@ public class Science { + public static double square(double num){ return num*num; } + //Returns the value of the first argument raised to the power of the second argument public static double pow(double a, double b){ return Math.pow(a, b); } + //Returns the correctly rounded positive square root of a double value public static double squareRt(double num) { return Math.sqrt(num); } + public static double inverse(double num) { return 1 / num; } @@ -27,22 +31,28 @@ public static double inverseSine(double num) { public static double switchSign(double num) { return Math.signum(num); } + //Returns the trigonometric sine of an angle public static double sin(double num) { return Math.sin(num); } + //Returns the trigonometric cosine of an angle public static double cos(double num) { return Math.cos(num); } + //Returns the trigonometric tangent of an angle public static double tan(double num) { return Math.tan(num); } + //Returns the arc cosine of a value; the returned angle is in the range 0.0 through pi. public static double inverseCos(double num) { return Math.acos(num); } + //Returns the arc tangent of a value; the returned angle is in the range -pi/ 2 through pi/ 2 public double inverseTan(double num) { return Math.atan(num); } - //using BigInteger import + //using BigInteger import...returns the product of all positive integers less than or equal + // to a given positive integer public static BigInteger factorial(int num) { BigInteger b = new BigInteger("1"); for(int i = 2; i <= num; i++){ @@ -74,32 +84,34 @@ public static double division(double a, double b) { } } - //Degrees + //Degrees: Converts an angle measured in radians to an + // approximately equivalent angle measured in degrees. public static double degrees(double num) { return Math.toDegrees(num); } - //Radians + //Radians: Converts an angle measured in degrees to an + // approximately equivalent angle measured in radians. public static double radians(double num) { return Math.toRadians(num); } - //Log + //Log: Returns the natural logarithm (base e) of a double value. public static double log(double num) { return Math.log(num); } - //Inverse Log + //Inverse Log: Returns the base 10 logarithm of a double value. public static double log10(double num) { return Math.log10(num); } - //Natural logarithm + //Natural logarithm: Returns the natural logarithm of the sum of the argument and 1. public static double log1p(double num) { return Math.log1p(num); } - //Inverse Natural Log + //Inverse Natural Log: Returns Euler's number e raised to the power of a double value. public static double inverseNL(double num) { return Math.exp(num); } From bf690f1f1fb4ca9bb82bcb476718ccd36b5e5579 Mon Sep 17 00:00:00 2001 From: christhomas1190 <111439861+christhomas1190@users.noreply.github.com> Date: Sun, 2 Mar 2025 12:57:44 -0500 Subject: [PATCH 18/27] Almost there??? --- .../scientificcalculator/MainApplication.java | 122 ++++++++++++++++-- .../scientificcalculator/Science.java | 86 ++++++------ 2 files changed, 154 insertions(+), 54 deletions(-) diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java b/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java index 90f2eca..2c7931d 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java @@ -1,6 +1,5 @@ package com.zipcodewilmington.scientificcalculator; import java.util.Scanner; -import java.math.BigInteger; /** * Created by leon on 2/9/18. */ @@ -18,37 +17,134 @@ public static void main(String[] args) { System.out.println("3: Multiplication"); System.out.println("4: Division"); System.out.println("5: Square"); - System.out.println("6: Square root"); - System.out.println("7: Sine"); - System.out.println("8: Cosine"); - System.out.println("8: Tangent"); - System.out.println("9: Inverse Sine"); - System.out.println("10: Inverse Cosine"); - System.out.println("13: Quit application"); + System.out.println("6: Cube/Exponent"); + System.out.println("7: Square root"); + System.out.println("8: Sine"); + System.out.println("9: Cosine"); + System.out.println("10: Tangent"); + System.out.println("11: Inverse Sine"); + System.out.println("12: Inverse Cosine"); + System.out.println("13: Inverse Tangent"); + System.out.println("14: Inverse"); + System.out.println("15: Switch sign"); + System.out.println("16: Factorial"); + System.out.println("17: Degrees"); + System.out.println("18: Radians"); + System.out.println("19: log"); + System.out.println("20: log10"); + System.out.println("21: log1p"); + System.out.println("22: Inverse Natural Log"); + System.out.println("23:Store Memory"); + System.out.println("24:Reset Memory"); + System.out.println("25:Recall Memory"); + System.out.println("26: Quit application"); //SwitchDisplayMode() = create multiple display menus instead of one large one? int choice = scanner.nextInt(); //Close scanner when all inputs are built - if(choice == 13){ + if(choice == 26){ break; } + double num1=0; double num2=0; - if(choice >=1 && choice <= 4){ - num1= Console.getDoubleInput("Enter first number here :"); - num2= Console.getDoubleInput("Enter second number here :"); + if(choice >=1 && choice <= 4 || choice ==6 || choice ==25|| choice ==23){ + System.out.println("Enter first number: "); + num1=scanner.nextDouble(); + System.out.println("Enter second number: "); + num2=scanner.nextDouble(); + }else if ( choice ==5 || choice ==7 || (choice>8 && choice <=25)){ + num1= Console.getDoubleInput("Enter number here :"); } + + Science science = new Science(); switch(choice){ case 1: System.out.println("Result:" + science.addition(num1, num2)); break; - } + case 2: + System.out.println("Result:" + science.subtraction(num1, num2)); + break; + case 3: + System.out.println("Result:" + science.multiplication(num1, num2)); + break; + case 4: + System.out.println("Result:" + science.division(num1, num2)); + break; + case 5: + System.out.println("Result:" + science.square(num1)); + break; + case 6: + System.out.println("Result:" + science.pow(num1, num2)); + break; + case 7: + System.out.println("Result:" + science.squareRt(num1)); + break; + case 8: + System.out.println("Result:" + science.sin(num1)); + break; + case 9: + System.out.println("Result:" + science.cos(num1)); + break; + case 10: + System.out.println("Result:" + science.tan(num1)); + break; + case 11: + System.out.println("Result:" + science.inverseSin(num1)); + break; + + case 12: + System.out.println("Result:" + science.inverseCos(num1)); + break; + case 13: + System.out.println("Result:" + science.inverseTan(num1)); + break; + + case 14: + System.out.println("Result:" + science.inverse(num1)); + break; + case 15: + System.out.println("Result:" + science.switchSign(num1)); + break; +// case 16: +// System.out.println("Result:" + science.factorial(num1); +// break; + case 17: + System.out.println("Result:" + science.degrees(num1)); + break; + case 18: + System.out.println("Result:" + science.radians(num1)); + break; + case 19: + System.out.println("Result:" + science.log(num1)); + break; + case 20: + System.out.println("Result:" + science.log10(num1)); + break; + case 21: + System.out.println("Result:" + science.log1p(num1)); + break; + case 22: + System.out.println("Result:" + science.inverseNL(num1)); + break; + case 23: + System.out.println("Result:" + science.storeMemory(num1, num2)); + break; + case 24: + System.out.println("Result:" + science.resetMemory(num1)); + break; + case 25: + System.out.println("Result:" + science.recallMemory(num1, num2)); + break; + + } } } } + //System.out.print(memory); //break diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java b/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java index dd32a0f..7b5f0a3 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java @@ -4,29 +4,40 @@ public class Science { + //Addition + public static double addition(double a, double b) { + return a + b; + } + //Subtract + public static double subtraction(double a, double b) { + return a - b; + } + //Multiplication + public static double multiplication(double a, double b) { + return a * b; + } + + //Division + public static double division(double a, double b) { + if (b == 0) { + throw new ArithmeticException("Can't divide by 0"); + } else { + return a / b; + } + } + //Squares given number public static double square(double num){ return num*num; } + // can be used to cube the number, or for exponents public static double pow(double a, double b){ return Math.pow(a, b); } + //Used to find square root of a number public static double squareRt(double num) { return Math.sqrt(num); } - public static double inverse(double num) { - return 1 / num; - } - - //If absolute value of number is greater than 1 the result will be NaN - public static double inverseSine(double num) { - return Math.asin(num); - } - - //Returns sign of number 1 for positive, -1 for negative and 0 for zero - public static double switchSign(double num) { - return Math.signum(num); - } public static double sin(double num) { return Math.sin(num); } @@ -36,50 +47,43 @@ public static double cos(double num) { public static double tan(double num) { return Math.tan(num); } + public static double inverseSin(double num) { + return Math.asin(num); + } public static double inverseCos(double num) { return Math.acos(num); } public double inverseTan(double num) { return Math.atan(num); } - //using BigInteger import - public static BigInteger factorial(int num) { - BigInteger b = new BigInteger("1"); - for(int i = 2; i <= num; i++){ - b = b.multiply(BigInteger.valueOf(i)); - } - return b; - } + //If absolute value of number is greater than 1 the result will be NaN - //Addition - public static double addition(double a, double b) { - return a + b; - } - //Subtract - public static double subtraction(double a, double b) { - return a - b; + // + public static double inverse(double num) { + return 1 / num; } - //Multiplication - public static double multiplication(double a, double b) { - return a * b; + //Returns sign of number 1 for positive, -1 for negative and 0 for zero + public static double switchSign(double num) { + return Math.signum(num); } - //Division - public static double division(double a, double b) { - if (b == 0) { - throw new ArithmeticException("Can't divide by 0"); - } else { - return a / b; - } - } - //Degrees + //using BigInteger import +// public static BigInteger factorial(int num) { +// BigInteger b = new BigInteger("1"); +// for(int i = 2; i <= num; i++){ +// b = b.multiply(BigInteger.valueOf(i)); +// } +// return b.doubleValue(); +// } + + //Converts radians to degrees public static double degrees(double num) { return Math.toDegrees(num); } - //Radians + //Converts degrees to radians public static double radians(double num) { return Math.toRadians(num); } From 5cb4fdb42257b5b0452f098869f47b47f6b407d3 Mon Sep 17 00:00:00 2001 From: christhomas1190 <111439861+christhomas1190@users.noreply.github.com> Date: Sun, 2 Mar 2025 13:00:28 -0500 Subject: [PATCH 19/27] Almost there??? --- .../zipcodewilmington/scientificcalculator/MainApplication.java | 2 +- .../com/zipcodewilmington/scientificcalculator/Science.java | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java b/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java index 2c7931d..5b65d56 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java @@ -93,7 +93,7 @@ public static void main(String[] args) { System.out.println("Result:" + science.tan(num1)); break; case 11: - System.out.println("Result:" + science.inverseSin(num1)); + System.out.println("Result:" + science.inverseSine(num1)); break; case 12: diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java b/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java index dd32a0f..8a0fa49 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java @@ -42,6 +42,7 @@ public static double inverseCos(double num) { public double inverseTan(double num) { return Math.atan(num); } + //using BigInteger import public static BigInteger factorial(int num) { BigInteger b = new BigInteger("1"); From 47370ead935b46705f05d75d788dc96119d60c7b Mon Sep 17 00:00:00 2001 From: isiah-a Date: Mon, 3 Mar 2025 16:06:17 -0500 Subject: [PATCH 20/27] created 1st test for square and fixed issue with getting sin to work while running main application. --- .../scientificcalculator/MainApplication.java | 14 +++++++------- .../scientificcalculator/Science.java | 8 ++++---- .../scientific_calculator/ScienceTest.java | 19 +++++++++++++++++++ .../TestMainApplication.java | 3 +++ 4 files changed, 33 insertions(+), 11 deletions(-) create mode 100644 src/test/java/com/zipcodewilmington/scientific_calculator/ScienceTest.java diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java b/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java index 5b65d56..b0c7df4 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java @@ -49,12 +49,12 @@ public static void main(String[] args) { double num1=0; double num2=0; - if(choice >=1 && choice <= 4 || choice ==6 || choice ==25|| choice ==23){ + if(choice >=1 && choice <= 4 || choice ==6 || choice ==25){ System.out.println("Enter first number: "); num1=scanner.nextDouble(); System.out.println("Enter second number: "); num2=scanner.nextDouble(); - }else if ( choice ==5 || choice ==7 || (choice>8 && choice <=25)){ + }else if (choice == 5 || choice == 7 || (choice >= 8 && choice <= 25)){ num1= Console.getDoubleInput("Enter number here :"); } @@ -109,9 +109,9 @@ public static void main(String[] args) { case 15: System.out.println("Result:" + science.switchSign(num1)); break; -// case 16: -// System.out.println("Result:" + science.factorial(num1); -// break; + case 16: + System.out.println("Result:" + science.factorial((int) num1)); + break; case 17: System.out.println("Result:" + science.degrees(num1)); break; @@ -131,13 +131,13 @@ public static void main(String[] args) { System.out.println("Result:" + science.inverseNL(num1)); break; case 23: - System.out.println("Result:" + science.storeMemory(num1, num2)); + System.out.println("Result:" + science.storeMemory(num1)); break; case 24: System.out.println("Result:" + science.resetMemory(num1)); break; case 25: - System.out.println("Result:" + science.recallMemory(num1, num2)); + System.out.println("Result:" + science.recallMemory(num1)); break; } diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java b/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java index 8a0fa49..5607bbb 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java @@ -106,16 +106,16 @@ public static double inverseNL(double num) { } //Store memory - public static double storeMemory(double a, double b){ - return a = b; + public static double storeMemory(double a){ + return a; } //reset memory public static double resetMemory(double a){ return a = 0; } //recall memory - public static double recallMemory(double a, double b){ - return a = b; + public static double recallMemory(double a){ + return a; } } diff --git a/src/test/java/com/zipcodewilmington/scientific_calculator/ScienceTest.java b/src/test/java/com/zipcodewilmington/scientific_calculator/ScienceTest.java new file mode 100644 index 0000000..193fe9f --- /dev/null +++ b/src/test/java/com/zipcodewilmington/scientific_calculator/ScienceTest.java @@ -0,0 +1,19 @@ +package com.zipcodewilmington.scientific_calculator; + +import com.zipcodewilmington.scientificcalculator.Science; +import org.junit.Test; + +import static org.junit.Assert.assertEquals; + +public class ScienceTest { + + @Test + + public void testsquare1() { + Science science1 = new Science(); + double actual = science1.square(12); + assertEquals(144.0, actual, 0.001); + } +} + + diff --git a/src/test/java/com/zipcodewilmington/scientific_calculator/TestMainApplication.java b/src/test/java/com/zipcodewilmington/scientific_calculator/TestMainApplication.java index 6cec4ac..fe75566 100644 --- a/src/test/java/com/zipcodewilmington/scientific_calculator/TestMainApplication.java +++ b/src/test/java/com/zipcodewilmington/scientific_calculator/TestMainApplication.java @@ -1,8 +1,11 @@ package com.zipcodewilmington.scientific_calculator; +import org.junit.Test; + /** * Created by leon on 2/9/18. */ public class TestMainApplication { + } From e65b9504a0b870b6dde97d6bbea7a4df020cdeea Mon Sep 17 00:00:00 2001 From: christhomas1190 <111439861+christhomas1190@users.noreply.github.com> Date: Tue, 4 Mar 2025 16:55:27 -0500 Subject: [PATCH 21/27] Added test and replaces factorials --- ScienceCalc.puml | 16 +++---- .../scientificcalculator/MainApplication.java | 15 ------ .../scientificcalculator/Science.java | 10 ++-- .../TestMainApplication.java | 47 ++++++++++++++++++- 4 files changed, 57 insertions(+), 31 deletions(-) diff --git a/ScienceCalc.puml b/ScienceCalc.puml index e14da04..9655887 100644 --- a/ScienceCalc.puml +++ b/ScienceCalc.puml @@ -1,17 +1,13 @@ @startuml 'https://plantuml.com/object-diagram -object London -object Washington -object Berlin -object PuertoRico -object NewYork +object Science.java +object Console -map CapitalCity { - UK *-> London - USA *--> Washington - Germany *---> Berlin +map MainApp { + Calculator *-> Science.java + Welcome msg. *--> Console } -NewYork --> CapitalCity::USA +'NewYork --> CapitalCity::USA @enduml diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java b/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java index 5b65d56..387bf9b 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java @@ -95,7 +95,6 @@ public static void main(String[] args) { case 11: System.out.println("Result:" + science.inverseSine(num1)); break; - case 12: System.out.println("Result:" + science.inverseCos(num1)); break; @@ -145,17 +144,3 @@ public static void main(String[] args) { } } -//System.out.print(memory); -//break - -//memory = Science.storeMemory(memory, num1); -//System.out.println("Current value is " + memory ); -//break; - -//memory = Science.resetMemory(memory); -//System.out.println("Memory has been reset -//break; - -//num1 = Science.recallMemory(num1, memory); -//System.out.println("Memory is now set to " + num1); -//break; \ No newline at end of file diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java b/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java index 8a0fa49..0fba159 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java @@ -44,12 +44,12 @@ public double inverseTan(double num) { } //using BigInteger import - public static BigInteger factorial(int num) { - BigInteger b = new BigInteger("1"); - for(int i = 2; i <= num; i++){ - b = b.multiply(BigInteger.valueOf(i)); + public static int factorial(int num) { + int solution = 1; + for (int i = 1; i <= num; i++) { + solution *= i; } - return b; + return solution; } //Addition diff --git a/src/test/java/com/zipcodewilmington/scientific_calculator/TestMainApplication.java b/src/test/java/com/zipcodewilmington/scientific_calculator/TestMainApplication.java index 6cec4ac..f6ce79a 100644 --- a/src/test/java/com/zipcodewilmington/scientific_calculator/TestMainApplication.java +++ b/src/test/java/com/zipcodewilmington/scientific_calculator/TestMainApplication.java @@ -1,8 +1,53 @@ package com.zipcodewilmington.scientific_calculator; +import com.zipcodewilmington.scientificcalculator.Science; +import org.junit.Test; + +import java.math.BigInteger; + +import static org.junit.Assert.assertEquals; + /** * Created by leon on 2/9/18. */ public class TestMainApplication { - + @Test + public void testsquare1() { + Science science1 = new Science(); + double actual = science1.square(12); + assertEquals(144.0, actual, 0.001); + } + @Test + public void testsquare2() { + Science science1 = new Science(); + double actual = science1.square(12); + assertEquals(144.0, actual, 0.001); + }@Test + public void testsquare3() { + Science science1 = new Science(); + double actual = science1.square(12); + assertEquals(144.0, actual, 0.001); + } + @Test + public void testsquareRt() { + Science science1 = new Science(); + double actual = science1.squareRt(25); + assertEquals(5, actual, 0.001); + }@Test + public void testlog() { + Science science1 = new Science(); + double actual = science1.log(10); + assertEquals(2.302585092994046, actual, 0.001); + }@Test + public void testfactorial() { + Science science1 = new Science(); + int actual = science1.factorial(5); + assertEquals(120.0, actual, 0001); + } + @Test + public void testsin() { + Science science1 = new Science(); + double actual = science1.sin(20); + assertEquals(0.9129452507276277, actual, 0.001); + } } From 5ce8fdf63a41fdc7d6f03428503150c879b7f1ac Mon Sep 17 00:00:00 2001 From: christhomas1190 <111439861+christhomas1190@users.noreply.github.com> Date: Wed, 5 Mar 2025 09:26:50 -0500 Subject: [PATCH 22/27] Let us pray --- .../scientificcalculator/MainApplication.java | 5 +- .../scientific_calculator/ScienceTest.java | 54 ++++++++++++++++--- 2 files changed, 51 insertions(+), 8 deletions(-) diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java b/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java index 092582f..3b1bd8a 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java @@ -12,6 +12,7 @@ public static void main(String[] args) { while (true) { //SwitchDisplayMode(String mode) = allow user to type operation/menu options in System.out.println(" Choose an operation"); + //.nextln()?? System.out.println("1: Addition"); System.out.println("2: Subtraction"); System.out.println("3: Multiplication"); @@ -46,8 +47,8 @@ public static void main(String[] args) { break; } - double num1=0; - double num2=0; + double num1; + double num2; if(choice >=1 && choice <= 4 || choice ==6 || choice ==25){ System.out.println("Enter first number: "); diff --git a/src/test/java/com/zipcodewilmington/scientific_calculator/ScienceTest.java b/src/test/java/com/zipcodewilmington/scientific_calculator/ScienceTest.java index 193fe9f..33092cf 100644 --- a/src/test/java/com/zipcodewilmington/scientific_calculator/ScienceTest.java +++ b/src/test/java/com/zipcodewilmington/scientific_calculator/ScienceTest.java @@ -7,13 +7,55 @@ public class ScienceTest { - @Test + @Test - public void testsquare1() { - Science science1 = new Science(); - double actual = science1.square(12); - assertEquals(144.0, actual, 0.001); - } + public void testsquare1() { + Science science1 = new Science(); + double actual = science1.square(12); + assertEquals(144.0, actual, 0.001); + } + + @Test + public void testsquare2() { + Science science1 = new Science(); + double actual = science1.square(12); + assertEquals(144.0, actual, 0.001); + } + + @Test + public void testsquare3() { + Science science1 = new Science(); + double actual = science1.square(12); + assertEquals(144.0, actual, 0.001); + } + + @Test + public void testsquareRt() { + Science science1 = new Science(); + double actual = science1.squareRt(25); + assertEquals(5, actual, 0.001); + } + + @Test + public void testlog() { + Science science1 = new Science(); + double actual = science1.log(10); + assertEquals(2.302585092994046, actual, 0.001); + } + + @Test + public void testfactorial() { + Science science1 = new Science(); + int actual = science1.factorial(5); + assertEquals(120.0, actual, 0001); + } + + @Test + public void testsin() { + Science science1 = new Science(); + double actual = science1.sin(20); + assertEquals(0.9129452507276277, actual, 0.001); + } } From 38b7af57cf89a44b3157931707a012a82cec73b1 Mon Sep 17 00:00:00 2001 From: isiah-a Date: Wed, 5 Mar 2025 09:30:26 -0500 Subject: [PATCH 23/27] added test comment --- .../zipcodewilmington/scientific_calculator/ScienceTest.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/test/java/com/zipcodewilmington/scientific_calculator/ScienceTest.java b/src/test/java/com/zipcodewilmington/scientific_calculator/ScienceTest.java index 33092cf..f287f9f 100644 --- a/src/test/java/com/zipcodewilmington/scientific_calculator/ScienceTest.java +++ b/src/test/java/com/zipcodewilmington/scientific_calculator/ScienceTest.java @@ -58,4 +58,6 @@ public void testsin() { } } +//test + From bb6dd5d0b6ac5c1dc7430f38450af1a4c02546a8 Mon Sep 17 00:00:00 2001 From: isiah-a Date: Wed, 5 Mar 2025 12:57:34 -0500 Subject: [PATCH 24/27] added pow and add tests --- .../scientificcalculator/MainApplication.java | 4 ++-- .../scientific_calculator/ScienceTest.java | 14 ++++++++++++++ 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java b/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java index 3b1bd8a..d4e43ef 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/MainApplication.java @@ -47,8 +47,8 @@ public static void main(String[] args) { break; } - double num1; - double num2; + double num1 = 0; + double num2 = 0; if(choice >=1 && choice <= 4 || choice ==6 || choice ==25){ System.out.println("Enter first number: "); diff --git a/src/test/java/com/zipcodewilmington/scientific_calculator/ScienceTest.java b/src/test/java/com/zipcodewilmington/scientific_calculator/ScienceTest.java index f287f9f..03a2ca8 100644 --- a/src/test/java/com/zipcodewilmington/scientific_calculator/ScienceTest.java +++ b/src/test/java/com/zipcodewilmington/scientific_calculator/ScienceTest.java @@ -56,6 +56,20 @@ public void testsin() { double actual = science1.sin(20); assertEquals(0.9129452507276277, actual, 0.001); } + + @Test + public void testpow() { + Science science1 = new Science(); + double actual = science1.pow(5, 4); + assertEquals(625, actual, 0.001); + } + + @Test + public void testadd(){ + Science science1 = new Science(); + double actual = science1.addition(10, 2); + assertEquals(12, 12, 0.001); + } } //test From 2568ab23239b8f33c6d968fa56c2c89201ae8d4c Mon Sep 17 00:00:00 2001 From: isiah-a Date: Wed, 5 Mar 2025 13:32:59 -0500 Subject: [PATCH 25/27] added tests for sin, pow, inverse, inverse sine, switch sign, cos , tan, inverse cos, inverse tan, add, subtract, multiply, division, log 10, log1p. --- .../scientific_calculator/ScienceTest.java | 108 +++++++++++++++++- 1 file changed, 106 insertions(+), 2 deletions(-) diff --git a/src/test/java/com/zipcodewilmington/scientific_calculator/ScienceTest.java b/src/test/java/com/zipcodewilmington/scientific_calculator/ScienceTest.java index 03a2ca8..9fba902 100644 --- a/src/test/java/com/zipcodewilmington/scientific_calculator/ScienceTest.java +++ b/src/test/java/com/zipcodewilmington/scientific_calculator/ScienceTest.java @@ -3,6 +3,7 @@ import com.zipcodewilmington.scientificcalculator.Science; import org.junit.Test; +import static java.lang.Double.NaN; import static org.junit.Assert.assertEquals; public class ScienceTest { @@ -68,10 +69,113 @@ public void testpow() { public void testadd(){ Science science1 = new Science(); double actual = science1.addition(10, 2); - assertEquals(12, 12, 0.001); + assertEquals(12, actual , 0.001); } + + @Test + public void testinverseCos(){ + Science science1 = new Science(); + double actual = science1.inverseCos(2); + assertEquals(NaN, actual, 0.0001); + } + @Test + public void testinverse(){ + Science science1 = new Science(); + double actual = science1.inverse(10); + assertEquals(0.1, actual , 0.000001); + } + + @Test + public void testinverseSine(){ + Science science1 = new Science(); + double actual = science1.inverseSine(10); + assertEquals(NaN, actual , 0.000001); + } + + @Test + public void testswitchSign(){ + Science science1 = new Science(); + double actual = science1.switchSign(10); + assertEquals(1, actual , 0.000001); + } + + @Test + public void testcos(){ + Science science1 = new Science(); + double actual = science1.cos(10); + assertEquals(-0.8390715290764524, actual , 0.000001); + } + + @Test + public void testtan(){ + Science science1 = new Science(); + double actual = science1.tan(10); + assertEquals(0.6483608274590866, actual , 0.000001); + } + + @Test + public void testinversetan(){ + Science science1 = new Science(); + double actual = science1.inverseTan(3); + assertEquals(1.2490457723982544, actual , 0.000001); + } + + @Test + public void testsub(){ + Science science1 = new Science(); + double actual = science1.subtraction(3, 10); + assertEquals(-7, actual , 0.000001); + } + + @Test + public void testmulti(){ + Science science1 = new Science(); + double actual = science1.multiplication(-3, 10); + assertEquals(-30, actual , 0.000001); + } + + @Test + public void testdivision(){ //test will throw + // ArithmeticException("Can't divide by 0") if dividing by zero + Science science1 = new Science(); + double actual = science1.division(-3, 10); + assertEquals(-0.3, actual , 0.000001); + } + + @Test + public void testdegrees(){ + Science science1 = new Science(); + double actual = science1.degrees(10); + assertEquals(572.9577951308232, actual , 0.000001); + } + + @Test + public void testlog10(){ + Science science1 = new Science(); + double actual = science1.log10(5); + assertEquals(0.6989700043360189, actual , 0.000001); + } + + @Test + public void testlog1p(){ + Science science1 = new Science(); + double actual = science1.log1p(5); + assertEquals(1.791759469228055, actual , 0.000001); + } + + @Test + public void testinverseNL(){ + Science science1 = new Science(); + double actual = science1.inverseNL(5); + assertEquals(148.4131591025766, actual , 0.000001); + } + + + + + } -//test + From f81e033dcd9298e50d66d29daf202d4ba0415865 Mon Sep 17 00:00:00 2001 From: isiah-a Date: Wed, 5 Mar 2025 14:23:20 -0500 Subject: [PATCH 26/27] Fixed math for degrees, radians, and inverse NL. Added them to test and changed inputs for square tests. --- .../scientificcalculator/Science.java | 6 +++--- .../scientific_calculator/ScienceTest.java | 20 +++++++++++++------ 2 files changed, 17 insertions(+), 9 deletions(-) diff --git a/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java b/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java index 6d6c19f..27b97c0 100644 --- a/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java +++ b/src/main/java/com/zipcodewilmington/scientificcalculator/Science.java @@ -77,12 +77,12 @@ public static double division(double a, double b) { //Degrees public static double degrees(double num) { - return Math.toDegrees(num); + return (num * Math.PI) / 180; } //Radians public static double radians(double num) { - return Math.toRadians(num); + return (num * 180) / (Math.PI); } //Log @@ -102,7 +102,7 @@ public static double log1p(double num) { } //Inverse Natural Log public static double inverseNL(double num) { - return Math.exp(num); + return (Math.exp(Math.log(num))); } //Store memory diff --git a/src/test/java/com/zipcodewilmington/scientific_calculator/ScienceTest.java b/src/test/java/com/zipcodewilmington/scientific_calculator/ScienceTest.java index 9fba902..f4a5eaf 100644 --- a/src/test/java/com/zipcodewilmington/scientific_calculator/ScienceTest.java +++ b/src/test/java/com/zipcodewilmington/scientific_calculator/ScienceTest.java @@ -12,15 +12,15 @@ public class ScienceTest { public void testsquare1() { Science science1 = new Science(); - double actual = science1.square(12); - assertEquals(144.0, actual, 0.001); + double actual = science1.square(9.0); + assertEquals(81, actual, 0.001); } @Test public void testsquare2() { Science science1 = new Science(); - double actual = science1.square(12); - assertEquals(144.0, actual, 0.001); + double actual = science1.square(4); + assertEquals(16, actual, 0.001); } @Test @@ -146,7 +146,7 @@ public void testdivision(){ //test will throw public void testdegrees(){ Science science1 = new Science(); double actual = science1.degrees(10); - assertEquals(572.9577951308232, actual , 0.000001); + assertEquals(0.17453292519943295, actual , 0.000001); } @Test @@ -167,8 +167,16 @@ public void testlog1p(){ public void testinverseNL(){ Science science1 = new Science(); double actual = science1.inverseNL(5); - assertEquals(148.4131591025766, actual , 0.000001); + assertEquals(5, actual , 0.000001); } + @Test + public void testradians(){ + Science science1 = new Science(); + double actual = science1.radians(10); + assertEquals(572.9577951308232, actual , 0.000001); + } + + From a4010052752b5e1365ce825a88782d0da10f6bff Mon Sep 17 00:00:00 2001 From: christhomas1190 <111439861+christhomas1190@users.noreply.github.com> Date: Wed, 5 Mar 2025 21:40:06 -0500 Subject: [PATCH 27/27] Comments added --- .../scientific_calculator/ScienceTest.java | 82 +++++++++++++++++++ 1 file changed, 82 insertions(+) diff --git a/src/test/java/com/zipcodewilmington/scientific_calculator/ScienceTest.java b/src/test/java/com/zipcodewilmington/scientific_calculator/ScienceTest.java index f4a5eaf..58e1922 100644 --- a/src/test/java/com/zipcodewilmington/scientific_calculator/ScienceTest.java +++ b/src/test/java/com/zipcodewilmington/scientific_calculator/ScienceTest.java @@ -63,6 +63,11 @@ public void testpow() { Science science1 = new Science(); double actual = science1.pow(5, 4); assertEquals(625, actual, 0.001); + }@Test + public void testpow2() { + Science science1 = new Science(); + double actual = science1.pow(6, 6); + assertEquals(46656, actual, 0.001); } @Test @@ -70,6 +75,11 @@ public void testadd(){ Science science1 = new Science(); double actual = science1.addition(10, 2); assertEquals(12, actual , 0.001); + } @Test + public void testadd2(){ + Science science1 = new Science(); + double actual = science1.addition(25, 25); + assertEquals(50, actual , 0.001); } @Test @@ -77,12 +87,22 @@ public void testinverseCos(){ Science science1 = new Science(); double actual = science1.inverseCos(2); assertEquals(NaN, actual, 0.0001); + }@Test + public void testinverseCos2(){ + Science science1 = new Science(); + double actual = science1.inverseCos(6); + assertEquals(NaN, actual, 0.0001); } @Test public void testinverse(){ Science science1 = new Science(); double actual = science1.inverse(10); assertEquals(0.1, actual , 0.000001); + }@Test + public void testinverse2(){ + Science science1 = new Science(); + double actual = science1.inverse(50); + assertEquals(0.02, actual , 0.000001); } @Test @@ -90,6 +110,11 @@ public void testinverseSine(){ Science science1 = new Science(); double actual = science1.inverseSine(10); assertEquals(NaN, actual , 0.000001); + }@Test + public void testinverseSine2(){ + Science science1 = new Science(); + double actual = science1.inverseSine(15); + assertEquals(NaN, actual , 0.000001); } @Test @@ -97,6 +122,11 @@ public void testswitchSign(){ Science science1 = new Science(); double actual = science1.switchSign(10); assertEquals(1, actual , 0.000001); + }@Test + public void testswitchSign2(){ + Science science1 = new Science(); + double actual = science1.switchSign(15); + assertEquals(1, actual , 0.000001); } @Test @@ -104,6 +134,11 @@ public void testcos(){ Science science1 = new Science(); double actual = science1.cos(10); assertEquals(-0.8390715290764524, actual , 0.000001); + } @Test + public void testcos5(){ + Science science1 = new Science(); + double actual = science1.cos(20); + assertEquals(0.40808206181339196, actual , 0.000001); } @Test @@ -111,6 +146,11 @@ public void testtan(){ Science science1 = new Science(); double actual = science1.tan(10); assertEquals(0.6483608274590866, actual , 0.000001); + }@Test + public void testtan2(){ + Science science1 = new Science(); + double actual = science1.tan(30); + assertEquals(-6.405331196646276, actual , 0.000001); } @Test @@ -118,6 +158,11 @@ public void testinversetan(){ Science science1 = new Science(); double actual = science1.inverseTan(3); assertEquals(1.2490457723982544, actual , 0.000001); + }@Test + public void testinversetan2(){ + Science science1 = new Science(); + double actual = science1.inverseTan(8); + assertEquals(1.446441332248135, actual , 0.000001); } @Test @@ -126,12 +171,23 @@ public void testsub(){ double actual = science1.subtraction(3, 10); assertEquals(-7, actual , 0.000001); } + @Test + public void testsub1(){ + Science science1 = new Science(); + double actual = science1.subtraction(10, 3); + assertEquals(7, actual , 0.000001); + } @Test public void testmulti(){ Science science1 = new Science(); double actual = science1.multiplication(-3, 10); assertEquals(-30, actual , 0.000001); + }@Test + public void testmulti2(){ + Science science1 = new Science(); + double actual = science1.multiplication(13, 113); + assertEquals(1469.0, actual , 0.000001); } @Test @@ -140,6 +196,12 @@ public void testdivision(){ //test will throw Science science1 = new Science(); double actual = science1.division(-3, 10); assertEquals(-0.3, actual , 0.000001); + }@Test + public void testdivision2(){ //test will throw + // ArithmeticException("Can't divide by 0") if dividing by zero + Science science1 = new Science(); + double actual = science1.division(50, 10); + assertEquals(5, actual , 0.000001); } @Test @@ -147,6 +209,11 @@ public void testdegrees(){ Science science1 = new Science(); double actual = science1.degrees(10); assertEquals(0.17453292519943295, actual , 0.000001); + } @Test + public void testdegrees2(){ + Science science1 = new Science(); + double actual = science1.degrees(100); + assertEquals(1.7453292519943295, actual , 0.000001); } @Test @@ -161,6 +228,11 @@ public void testlog1p(){ Science science1 = new Science(); double actual = science1.log1p(5); assertEquals(1.791759469228055, actual , 0.000001); + }@Test + public void testlog1p2(){ + Science science1 = new Science(); + double actual = science1.log1p(25); + assertEquals(3.258096538021482, actual , 0.000001); } @Test @@ -168,12 +240,22 @@ public void testinverseNL(){ Science science1 = new Science(); double actual = science1.inverseNL(5); assertEquals(5, actual , 0.000001); + }@Test + public void testinverseNL2(){ + Science science1 = new Science(); + double actual = science1.inverseNL(73); + assertEquals(72.99999999999999, actual , 0.000001); } @Test public void testradians(){ Science science1 = new Science(); double actual = science1.radians(10); assertEquals(572.9577951308232, actual , 0.000001); + }@Test + public void testradians2(){ + Science science1 = new Science(); + double actual = science1.radians(42); + assertEquals(2406.4227395494577, actual , 0.000001); }