

public class RationalClass{
private int nr;
private int dr;
public RationalClass(int numerator, int denominator) {
if(denominator == 0){
throw new RuntimeException("Denominator is zero");
}
int no = rationalNumber(numerator, denominator);
nr = numerator / no;
dr = denominator / no;
}
public RationalClass add(RationalClass number) {
int numerator = (this.nr * number.dr) + (this.dr * number.nr);
int denominator = this.dr * number.dr;
return new RationalClass(numerator, denominator);
}
public RationalClass multiply(RationalClass number) {
return new RationalClass(this.nr * number.nr, this.dr * number.dr);
}
private static int rationalNumber(int p, int q) {
if(q==0){
return p;
}
else{
return rationalNumber(q, p % q);
}
}
public String toString() {
if (dr == 1){
return nr + "";
}
else{
return nr + "/" + dr;
}
}
public static void main(String[] args) {
RationalClass a, b, c;
a = new RationalClass(1, 2);
b = new RationalClass(1, 2);
c = a.add(b);
System.out.println("Addition= "+c);
a = new RationalClass(1, 2);
b = new RationalClass(1, 2);
c = a.multiply(b);
System.out.println("Multiplication= "+c);
}
}
If you are facing any programming issue, such as compilation errors or not able to find the code you are looking for.
Ask your questions, our development team will try to give answers to your questions.