Anda di halaman 1dari 4

/*

* Dean Gella, Period 4


*/
import java.util.Scanner;

!
!

public class FractionalCalculator_Gella {



public static void main(String[] args) {


Scanner console= new Scanner(System.in);


System.out.println("Please enter an Equation");

String input1= console.next();


if (input1.equals("quit")) {

System.out.println("Terminated");

console.close();
}
String operator= console.next();
String input2= console.next();

String strEquation= input1;


String strEquation2= input2;

int number= getNumber(strEquation);


int numerator= getNumerator(strEquation);
int denominator= getDenominator(strEquation);

int number2= getNumber(strEquation2);


int numerator2= getNumerator(strEquation2);
int denominator2= getDenominator(strEquation2);

/*System.out.println(number);
System.out.println(numerator);
System.out.println(denominator);
System.out.println(number2);
System.out.println(numerator2);
System.out.println(denominator2);*/

int impropernum1= (number * denominator + numerator);


String strImproper1= (impropernum1 + "/" + denominator);
//System.out.println(strImproper1);

int impropernum2= (number2 * denominator2 + numerator2);


String strImproper2= (impropernum2 + "/" + denominator2);

!
!
!
!

!
!

//System.out.println(strImproper2);



if (operator.equals("+")) { //addition



int improper1= impropernum1 * denominator2;



int improper2= denominator * impropernum2;



int demoman= denominator * denominator2; //
denominator * denominator2



int numeratorfinal= improper1 + improper2;



String answer= numeratorfinal + "/" + demoman;



System.out.println(answer);


}


else if (operator.equals("-")) { //subtraction



int improper1= impropernum1 * denominator2;



int improper2= denominator * impropernum2;



int demopan= denominator * denominator2;



int numeratorfinal= improper1 - improper2;



String answer= numeratorfinal + "/" + demopan;



System.out.println(answer);


}


else if (operator.equals("*")) { //multiplication



int numerator1= impropernum1 * impropernum2;



int denominatorfinal= denominator * denominator2;



String answer= numerator1 + "/" + denominatorfinal;



System.out.println(answer);

!

!

}
else




}

if (operator.equals("/")) { //division
int numerator1= impropernum1 * denominator2;
int denominatorfinal= denominator * impropernum2;
String answer= numerator1 + "/" + denominatorfinal;
System.out.println(answer);


public static int getNumber(String input) {


int indexOfUnderscore= input.indexOf('_');


int indexOfSlash= input.indexOf('/');


if (indexOfUnderscore >= 0) {



String mixedNum= input.substring(0,
indexOfUnderscore);



int number= Integer.parseInt(mixedNum);



return (number);

}
else
{

if (indexOfSlash >= 0) {


return (0);

}

else {


return (Integer.parseInt(input));

}
}


public static int getNumerator(String input) {


int indexOfUnderscore= input.indexOf('_');


int indexOfSlash= input.indexOf('/');


if (indexOfSlash >= 0) {



if (indexOfUnderscore >= 0) {




String mixedNum1=
input.substring(indexOfUnderscore + 1, indexOfSlash);




int numerator= Integer.parseInt(mixedNum1);




return (numerator);



}



else {




String mixedNum1= input.substring(0,
indexOfSlash);




int numerator= Integer.parseInt(mixedNum1);




return (numerator);



}


}


else {



return (0);


}

}

public static int getDenominator(String input) {



int indexOfSlash= input.indexOf('/');

if (indexOfSlash >= 0) {


String mixedNum2= input.substring(indexOfSlash + 1);


int denominator= Integer.parseInt(mixedNum2);


return (denominator);

}

else {


return (1);

!


}

Anda mungkin juga menyukai