├── .gitignore ├── .idea ├── .gitignore ├── artifacts │ └── MathResolver_jar.xml ├── misc.xml ├── modules.xml └── uiDesigner.xml ├── MathResolver.iml ├── README.md └── src ├── META-INF └── MANIFEST.MF └── dev └── halq ├── Main.java ├── calculator ├── Calculator.java └── utils │ └── CalcUtil.java ├── equation └── EquationResolver.java ├── theorem ├── Thales.java └── utils │ └── CalcUtil.java └── utils └── CmdUtil.java /.gitignore: -------------------------------------------------------------------------------- 1 | # Project exclude paths 2 | /out/ -------------------------------------------------------------------------------- /.idea/.gitignore: -------------------------------------------------------------------------------- 1 | # Default ignored files 2 | /shelf/ 3 | /workspace.xml 4 | -------------------------------------------------------------------------------- /.idea/artifacts/MathResolver_jar.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | $PROJECT_DIR$/out/artifacts/MathResolver_jar 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /.idea/misc.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /.idea/uiDesigner.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | 110 | 111 | 112 | 113 | 114 | 115 | 116 | 117 | 118 | 119 | 120 | 121 | 122 | 123 | 124 | -------------------------------------------------------------------------------- /MathResolver.iml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # MathResolver 2 | MathResolver, this resolve linear equations, thales theorem, calculator(brain issue) 3 | 4 | java -jar (your jar) 5 | -------------------------------------------------------------------------------- /src/META-INF/MANIFEST.MF: -------------------------------------------------------------------------------- 1 | Manifest-Version: 1.0 2 | Main-Class: dev.halq.Main 3 | 4 | -------------------------------------------------------------------------------- /src/dev/halq/Main.java: -------------------------------------------------------------------------------- 1 | package dev.halq; 2 | 3 | import dev.halq.calculator.Calculator; 4 | import dev.halq.equation.EquationResolver; 5 | import dev.halq.theorem.Thales; 6 | 7 | import java.util.Scanner; 8 | import java.util.concurrent.TimeUnit; 9 | 10 | import static dev.halq.utils.CmdUtil.print; 11 | 12 | /** 13 | * @author Halq 14 | * @since 15/09/2022 15 | */ 16 | 17 | public class Main { 18 | public Main(){ 19 | super(); 20 | } 21 | 22 | 23 | public static void main(String[] args) throws InterruptedException { 24 | 25 | 26 | Scanner reader = new Scanner(System.in); 27 | 28 | String r = null; 29 | 30 | print("Welcome for my MathResolver!!" + " Made by Halq!"); 31 | TimeUnit.SECONDS.sleep(1); 32 | 33 | print("Wait.. loading MathResolver resources"); 34 | TimeUnit.SECONDS.sleep(3); 35 | 36 | print("Calculator, Equation, Thales"); 37 | 38 | r = reader.next(); 39 | 40 | if (r.equals("Calculator")) { 41 | print("Loading calculator..."); 42 | TimeUnit.SECONDS.sleep(2); 43 | Calculator.calculatorMain(); 44 | 45 | } else if (r.equals("Equation")) { 46 | print("Loading Equation Resolver..."); 47 | TimeUnit.SECONDS.sleep(2); 48 | EquationResolver.main(); 49 | 50 | } else if(r.equals("Thales")){ 51 | print("Loading Thales theorem"); 52 | TimeUnit.SECONDS.sleep(1); 53 | Thales.main(); 54 | 55 | } else { 56 | print("Please put valid value (Calculator, Equation, Thales)"); 57 | } 58 | 59 | } 60 | } -------------------------------------------------------------------------------- /src/dev/halq/calculator/Calculator.java: -------------------------------------------------------------------------------- 1 | package dev.halq.calculator; 2 | 3 | import dev.halq.calculator.utils.CalcUtil; 4 | 5 | import java.util.Scanner; 6 | 7 | import static dev.halq.utils.CmdUtil.print; 8 | 9 | /** 10 | * @author Halq 11 | * @since 15/09/2022 12 | */ 13 | 14 | public class Calculator { 15 | 16 | public static void calculatorMain() { 17 | double firstvalue, secondvalue; 18 | 19 | String op = null; 20 | Scanner reader = new Scanner(System.in); 21 | 22 | print("Please put first number"); 23 | 24 | if (!reader.hasNextDouble()) { 25 | 26 | print("Please put valid value"); 27 | reader.hasNextDouble(); 28 | 29 | } 30 | 31 | firstvalue = reader.nextDouble(); 32 | 33 | print("Please put math operator"); 34 | 35 | op = reader.next(); 36 | 37 | if (!(op.equals("+") || op.equals("-") || op.equals("+") || op.equals("/") || op.equals("%"))) { 38 | 39 | print("Please put valid operator"); 40 | 41 | } 42 | 43 | print("Please put second number"); 44 | 45 | if (!reader.hasNextDouble()) { 46 | 47 | print("Please put valid value"); 48 | reader.hasNextDouble(); 49 | 50 | } 51 | 52 | secondvalue = reader.nextDouble(); 53 | 54 | print("Result: "); 55 | CalcUtil.calcq(op, firstvalue, secondvalue); 56 | 57 | } 58 | } -------------------------------------------------------------------------------- /src/dev/halq/calculator/utils/CalcUtil.java: -------------------------------------------------------------------------------- 1 | package dev.halq.calculator.utils; 2 | 3 | import static dev.halq.utils.CmdUtil.*; 4 | 5 | /** 6 | * @author Halq 7 | * @since 15/09/2022 8 | */ 9 | 10 | public class CalcUtil { 11 | // 12 | public static void calcq(String operator, double value, double value2){ 13 | switch (operator){ 14 | 15 | case "*": 16 | calc(value * value2); 17 | break; 18 | 19 | case "+": 20 | calc(value + value2); 21 | break; 22 | 23 | case "-": 24 | calc(value - value2); 25 | break; 26 | 27 | case "/": 28 | if(value == 0 || value2 == 0) { 29 | print("Impossible to divide number by 0"); 30 | 31 | } else { 32 | calc(value / value2); 33 | 34 | } 35 | break; 36 | 37 | case "%": 38 | calc(value % value2); 39 | break; 40 | } 41 | } 42 | } -------------------------------------------------------------------------------- /src/dev/halq/equation/EquationResolver.java: -------------------------------------------------------------------------------- 1 | package dev.halq.equation; 2 | 3 | import java.util.Scanner; 4 | 5 | import static dev.halq.utils.CmdUtil.print; 6 | 7 | /** 8 | * @author Halq 9 | * @since 15/09/2022 10 | */ 11 | 12 | public class EquationResolver { 13 | 14 | public static void main() { 15 | Scanner reader = new Scanner(System.in); 16 | 17 | double a, b, c; 18 | 19 | print("Please give me constants"); 20 | 21 | print("Ex: 2x - 3x - 5 = 0 , a: 2 b: -3 c: -5"); 22 | 23 | print("a:"); 24 | if (!reader.hasNextDouble()) { 25 | 26 | print("Please give valid value"); 27 | reader.hasNextDouble(); 28 | 29 | } 30 | 31 | a = reader.nextDouble(); 32 | 33 | print("b:"); 34 | if (!reader.hasNextDouble()) { 35 | 36 | print("Please give valid value"); 37 | reader.hasNextDouble(); 38 | 39 | } 40 | 41 | b = reader.nextDouble(); 42 | 43 | print("c:"); 44 | if (!reader.hasNextDouble()) { 45 | 46 | print("Please give valid value"); 47 | reader.hasNextDouble(); 48 | 49 | } 50 | 51 | c = reader.nextDouble(); 52 | 53 | if (a != 0) { 54 | 55 | double r = (c - b) / a; 56 | 57 | print("Answer = " + r); 58 | 59 | } else if (b == c) { 60 | 61 | print("Answer = all x"); 62 | 63 | } else { 64 | 65 | print("Invalid equation"); 66 | 67 | } 68 | } 69 | 70 | } -------------------------------------------------------------------------------- /src/dev/halq/theorem/Thales.java: -------------------------------------------------------------------------------- 1 | package dev.halq.theorem; 2 | 3 | import dev.halq.theorem.utils.CalcUtil; 4 | import java.util.Scanner; 5 | 6 | import static dev.halq.utils.CmdUtil.print; 7 | 8 | /** 9 | * @author Halq 10 | * @since 22/09/2022 11 | */ 12 | 13 | public class Thales { 14 | 15 | public static void main(){ 16 | 17 | Scanner reader = new Scanner(System.in); 18 | 19 | double f, s, t; 20 | 21 | print("Please put first value"); 22 | 23 | if(!reader.hasNextDouble()){ 24 | 25 | print("please put valid value"); 26 | reader.hasNextDouble(); 27 | 28 | } 29 | 30 | f = reader.nextDouble(); 31 | 32 | print("Please put second value"); 33 | 34 | if(!reader.hasNextDouble()){ 35 | 36 | print("please put valid value"); 37 | reader.hasNextDouble(); 38 | 39 | } 40 | 41 | s = reader.nextDouble(); 42 | 43 | print("Please put tree value"); 44 | 45 | if(!reader.hasNextDouble()){ 46 | 47 | print("please put valid value"); 48 | reader.hasNextDouble(); 49 | 50 | } 51 | 52 | t = reader.nextDouble(); 53 | 54 | 55 | CalcUtil.calcThalesThoremWhitX(f, s, t); 56 | } 57 | } 58 | -------------------------------------------------------------------------------- /src/dev/halq/theorem/utils/CalcUtil.java: -------------------------------------------------------------------------------- 1 | package dev.halq.theorem.utils; 2 | 3 | import dev.halq.utils.CmdUtil; 4 | 5 | import static dev.halq.utils.CmdUtil.print; 6 | 7 | /** 8 | * @author Halq 9 | * @since 22/09/2022 10 | */ 11 | 12 | public class CalcUtil { 13 | 14 | public static void calcThalesThoremWhitX(Double value1, Double value2, Double value3){ 15 | 16 | double mult = value2 * value3; 17 | 18 | print("Result:"); 19 | 20 | CmdUtil.calc(mult / value1); 21 | 22 | print(""); 23 | print("Method:"); 24 | print(""); 25 | 26 | System.out.println(value1 + "x"); 27 | 28 | System.out.println(value2 + " * " + value3 + " = " + mult); 29 | 30 | System.out.println(mult + " / " + value1 + "x" + " = " + mult / value1); 31 | 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /src/dev/halq/utils/CmdUtil.java: -------------------------------------------------------------------------------- 1 | package dev.halq.utils; 2 | 3 | /** 4 | * @author Halq 5 | * @since 15/09/2022 6 | */ 7 | 8 | public class CmdUtil { 9 | 10 | public static void print(String message){ 11 | System.out.println(message); 12 | } 13 | 14 | public static void calc(Double value){ 15 | System.out.println(value); 16 | } 17 | } 18 | --------------------------------------------------------------------------------