CODE:
import
java.io.*;
import
java.util.*;
public
class rat
{
/*
*members
Numerator,Denominator
*/
int
numerator;
int
denominator;
/*
*Constructor
*/
public
rat(int a,int b)
{
numerator=a;
denominator=b;
}
/*
*Additon
method
*@param
two rational numbers
*@return
sum
*/
public
void add(rat a,rat b)
{
if(a.denominator==b.denominator)
{
numerator=a.numerator+b.numerator;
denominator=a.denominator;
}
else
{
numerator=((a.numerator*b.denominator)+(b.numerator*a.denominator));
denominator=(a.denominator*b.denominator);
}
}
/*
*Subtraction
method
*@param
two rational numbers
*@return
difference
*/
public
void sub(rat a,rat b)
{
if(a.denominator==b.denominator)
{
numerator=a.numerator-b.numerator;
denominator=a.denominator;
}
else
{
numerator=((a.numerator*b.denominator)-(b.numerator*a.denominator));
denominator=(a.denominator*b.denominator);
}
}
/*
*Multiplication
method
*@param
two rational numbers
*@return
multiple
*/
public
void mul(rat a,rat b)
{
numerator=a.numerator*b.numerator;
denominator=a.denominator*b.denominator;
}
/*
*Division
method
*@param
two rational numbers
*@return
quotient
*/
public
void div(rat a,rat b)
{
int
temp;
temp=b.denominator;
b.denominator=b.numerator;
b.numerator=temp;
numerator=a.numerator*b.numerator;
denominator=a.denominator*b.denominator;
}
/*
*Simplification
method
*@param
one rational numbers
*@return
simplified sum
*/
public
void simplify()
{
for(int
i=1;i<=10;i++)
if((numerator%i==0)&&(denominator%i==0))
{
numerator/=i;
denominator/=i;
}
}
}
/*
*Main
class
*/
class
rational
{
/*
*Main
function
*@param
nothing
*@return
nothing :P
*/
public
static void main(String args[])
{
Scanner
s=new Scanner(System.in);
System.out.println("enter
the first rational number");
int
n=s.nextInt();
int
d=s.nextInt();
rat
r1=new rat(n,d);
System.out.println("enter
the second rational number");
int
n1=s.nextInt();
int
d1=s.nextInt();
rat
r2=new rat(n1,d1);
rat
r3=new rat(0,0);
int
ch;
do
{
/*
*shows
menu
*/ System.out.println("Enter
the choice \n1.addition \n2.subtraction \n3.Multiplication
\n4.division\n5.exit");
ch=s.nextInt();
switch(ch)
{
case
1:
r3.add(r1,r2);
r3.simplify();
System.out.println("additon
result is"+r3.numerator+"/"+r3.denominator);
break;
case
2:
r3.sub(r1,r2);
r3.simplify();
System.out.println("subtraction
result is"+r3.numerator+"/"+r3.denominator);
break;
case
3:
r3.mul(r1,r2);
r3.simplify();
System.out.println("multiplication
result is"+r3.numerator+"/"+r3.denominator);
break;
case
4:
r3.div(r1,r2);
r3.simplify();
System.out.println("divison
result is"+r3.numerator+"/"+r3.denominator);
break;
case
5:
System.exit(0);
break;
}
}while(ch!=6);
}
}
Input & Output:
Enter
n and d of rational number 1: 2
4
Enter
n and d of rational number 1: 2
4
Enter
choice 1.Add 2.Subtract 3.Multiply 4.Divide 5.Exit: 1
Sum
: 1
Enter
choice 1.Add 2.Subtract 3.Multiply 4.Divide 5.Exit: 2
Diff:
0
Enter
choice 1.Add 2.Subtract 3.Multiply 4.Divide 5.Exit: 3
Prod:
¼
Enter
choice 1.Add 2.Subtract 3.Multiply 4.Divide 5.Exit: 4
Quo:
1
Enter
choice 1.Add 2.Subtract 3.Multiply 4.Divide 5.Exit: 5