Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class Fraction {
- private int numerator; //Numerator of 1st fraction
- private int denominator;
- static int count =0;
- public Fraction(int numerator, int denominator){
- if (denominator == 0)
- {
- numerator = 0;
- denominator = 1;
- }
- else if (numerator < 0 && denominator <0)
- {
- numerator = -numerator;
- denominator = -denominator;
- }
- this.numerator = numerator;
- this.denominator = denominator;
- ++count;
- }
- public int getNumerator() { return numerator; }
- public void setNumerator(int numerator) { this.numerator = numerator; }
- public int getDenominator() { return denominator; }
- public void setDenominator(int denominator)
- {
- if (denominator == 0)
- {
- numerator = 0;
- denominator = 1;
- }
- this.denominator = denominator;
- }
- public void addFraction(Fraction other)
- {
- this.numerator = this.numerator * other.denominator + other.numerator * this.denominator;
- this.denominator = this.denominator * other.denominator;
- reduceFraction();
- }
- public static Fraction sum(Fraction a, Fraction b)
- {
- Fraction temp = new Fraction(a.numerator*b.denominator + a.denominator*b.numerator,
- a.denominator*b.denominator);
- temp.reduceFraction();
- return temp;
- }
- @Override
- public String toString(){
- return (this.numerator + "/" + this.denominator);
- }
- private void reduceFraction()
- {
- int x = nod(numerator, denominator);
- numerator /= x;
- denominator /=x;
- }
- private static int nod(int a, int b)
- {
- while (a!=0 && b!=0)
- {
- if (a > b)
- a = a%b;
- else
- b = b%a;
- }
- return a+b;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement