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 {
|
public class Main {
|
||||||
@SuppressWarnings("InfiniteLoopStatement")
|
@SuppressWarnings("InfiniteLoopStatement")
|
||||||
public static void main(String[] args)
|
public static void main(String[] args) {
|
||||||
{
|
double total = 0;
|
||||||
while(true) {
|
String num1;
|
||||||
|
String num2;
|
||||||
|
while (true) {
|
||||||
Scanner in = new Scanner(System.in);
|
Scanner in = new Scanner(System.in);
|
||||||
print("Enter first number: ");
|
System.out.println("Enter first number: ");
|
||||||
String num1 = in.nextLine();
|
num1 = in.nextLine();
|
||||||
print("please enter second number");
|
if (num1.equals("ans") || num1.equals("total")) {
|
||||||
String num2 = in.nextLine();
|
num1 = String.valueOf(total);
|
||||||
print("Inputs complete");
|
}
|
||||||
print("Please input operator");
|
System.out.println("please enter second number");
|
||||||
print("+ , - , * or x , /");
|
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();
|
String op = in.nextLine();
|
||||||
|
|
||||||
switch (op) {
|
switch (op) {
|
||||||
case "+" -> {
|
case "+" -> {
|
||||||
int total = add(num1, num2);
|
total = Calc.add(num1, num2);
|
||||||
System.out.println(total);
|
System.out.println(total);
|
||||||
}
|
}
|
||||||
case "-" -> {
|
case "-" -> {
|
||||||
int total = sub(num1, num2);
|
total = Calc.sub(num1, num2);
|
||||||
System.out.println(total);
|
System.out.println(total);
|
||||||
}
|
}
|
||||||
case "*", "x" -> {
|
case "*", "x" -> {
|
||||||
int total = mul(num1, num2);
|
total = Calc.mul(num1, num2);
|
||||||
System.out.println(total);
|
System.out.println(total);
|
||||||
}
|
}
|
||||||
case "/" -> {
|
case "/" -> {
|
||||||
int total = div(num1, num2);
|
total = Calc.div(num1, num2);
|
||||||
System.out.println(total);
|
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