Alpha to main #1
Binary file not shown.
|
@ -0,0 +1,58 @@
|
|||
package com.company;
|
||||
|
||||
|
||||
public class Calc {
|
||||
public static void print(String text) { //this is a small function to makes it easier to print out to terminal
|
||||
System.out.println(text); //similar to python output
|
||||
}
|
||||
//math functions
|
||||
public static double add(String num1, String num2){
|
||||
double add1 = Double.parseDouble(num1);
|
||||
double add2 = Double.parseDouble(num2);
|
||||
return add1 + add2;
|
||||
}
|
||||
public static double sub(String num1, String num2){
|
||||
double sub1 = Double.parseDouble(num1);
|
||||
double sub2 = Double.parseDouble(num2);
|
||||
return sub1 - sub2;
|
||||
}
|
||||
public static double mul(String num1, String num2){
|
||||
double mul1 = Double.parseDouble(num1);
|
||||
double mul2 = Double.parseDouble(num2);
|
||||
return mul1 * mul2;
|
||||
}
|
||||
|
||||
public static double div(String num1, String num2){
|
||||
double div1 = Double.parseDouble(num1);
|
||||
double div2 = Double.parseDouble(num2);
|
||||
if (div2 == 0 || div1 == 0){
|
||||
print("cant divide by zero");
|
||||
print("error code:");
|
||||
return -1;
|
||||
}
|
||||
return div1 / div2;
|
||||
}
|
||||
public static String mulRound(String num1, String num2){
|
||||
double mul1 = Double.parseDouble(num1);
|
||||
double mul2 = Double.parseDouble(num2);
|
||||
return Math.round(mul1 * mul2) + "rounded";
|
||||
}
|
||||
public static String divRemain(String num1, String num2){
|
||||
double div1 = Double.parseDouble(num1);
|
||||
double div2 = Double.parseDouble(num2);
|
||||
if (div2 == 0){
|
||||
print("cant divide by zero");
|
||||
print("error code:");
|
||||
return "-1";
|
||||
}
|
||||
else if (div1 == 0)
|
||||
return "0";
|
||||
else {
|
||||
int div1I = (int) div1;
|
||||
int div2I = (int) div2;
|
||||
int divT = div1I / div2I;
|
||||
return divT + " with remainder of: " + div1 % div2;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
|
@ -4,65 +4,50 @@ import java.util.Scanner;
|
|||
|
||||
public class Main {
|
||||
@SuppressWarnings("InfiniteLoopStatement")
|
||||
public static void main(String[] args)
|
||||
{
|
||||
while(true) {
|
||||
public static void main(String[] args) {
|
||||
double total = 0;
|
||||
String num1;
|
||||
String num2;
|
||||
while (true) {
|
||||
Scanner in = new Scanner(System.in);
|
||||
print("Enter first number: ");
|
||||
String num1 = in.nextLine();
|
||||
print("please enter second number");
|
||||
String num2 = in.nextLine();
|
||||
print("Inputs complete");
|
||||
print("Please input operator");
|
||||
print("+ , - , * or x , /");
|
||||
System.out.println("Enter first number: ");
|
||||
num1 = in.nextLine();
|
||||
if (num1.equals("ans") || num1.equals("total")) {
|
||||
num1 = String.valueOf(total);
|
||||
}
|
||||
System.out.println("please enter second number");
|
||||
num2 = in.nextLine();
|
||||
if (num2.equals("ans") || num2.equals("total")) {
|
||||
num2 = String.valueOf(total);
|
||||
}
|
||||
System.out.println("Inputs complete");
|
||||
System.out.println("Please input operator");
|
||||
System.out.println("+ , - , * or x , /");
|
||||
System.out.println("'for rounded multiplication: use '*r', 'Xr' or 'xr'");
|
||||
System.out.println("'for remainder division: use '/R' or '/r'");
|
||||
String op = in.nextLine();
|
||||
|
||||
switch (op) {
|
||||
case "+" -> {
|
||||
int total = add(num1, num2);
|
||||
total = Calc.add(num1, num2);
|
||||
System.out.println(total);
|
||||
}
|
||||
case "-" -> {
|
||||
int total = sub(num1, num2);
|
||||
total = Calc.sub(num1, num2);
|
||||
System.out.println(total);
|
||||
}
|
||||
case "*", "x" -> {
|
||||
int total = mul(num1, num2);
|
||||
total = Calc.mul(num1, num2);
|
||||
System.out.println(total);
|
||||
}
|
||||
case "/" -> {
|
||||
int total = div(num1, num2);
|
||||
total = Calc.div(num1, num2);
|
||||
System.out.println(total);
|
||||
}
|
||||
default -> print("Unexpected value: " + op + " ...restarting program");
|
||||
case "*/", "xR", "xr" -> System.out.println(Calc.mulRound(num1, num2));
|
||||
case "/R", "/r" -> System.out.println(Calc.divRemain(num1, num2));
|
||||
default -> System.out.println("Unexpected value: '" + op + "' ...restarting program");
|
||||
}
|
||||
}
|
||||
}
|
||||
private static void print(String text){
|
||||
System.out.println(text);
|
||||
}
|
||||
private static int add(String num1, String num2){
|
||||
int add1 = Integer.parseInt(num1);
|
||||
int add2 = Integer.parseInt(num2);
|
||||
return add1 + add2;
|
||||
}
|
||||
private static int sub(String num1, String num2){
|
||||
int sub1 = Integer.parseInt(num1);
|
||||
int sub2 = Integer.parseInt(num2);
|
||||
return sub1 - sub2;
|
||||
}
|
||||
private static int mul(String num1, String num2){
|
||||
int mul1 = Integer.parseInt(num1);
|
||||
int mul2 = Integer.parseInt(num2);
|
||||
return mul1 * mul2;
|
||||
}
|
||||
private static int div(String num1, String num2){
|
||||
int div1 = Integer.parseInt(num1);
|
||||
int div2 = Integer.parseInt(num2);
|
||||
if (div2 == 0 || div1 == 0){
|
||||
print("cant divide by zero");
|
||||
return -1;
|
||||
}
|
||||
return div1 / div2;
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue