#How to implement Euclid's Algorithm

8 messages · Page 1 of 1 (latest)

mossy snow
#

I am not sure how I would implement the algorithm in fractions. I do not know where to begin.

summer briar
#
 
public class Main {
 
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        Fraction a = new Fraction(in.nextInt(), in.nextInt());
        Fraction b = new Fraction(in.nextInt(),in.nextInt());
        a.print();
        b.print();
        a.plus(b).print();
        a.multiply(b).plus(new Fraction(5,6)).print();
        a.print();
        b.print();
        in.close();
    }
 
}
 
class Fraction{
    int a,b;
    Fraction(int a,int b)
    {
        this.a = a;
        this.b = b;
    }
    
    double toDouble()
    {
        return (double)a/b;
    }
    
    Fraction plus(Fraction r)
    {
        Fraction s = new Fraction(r.a, r.b);
        int h = s.b * a;
        s.a *= b;
        s.b *= b;
        s.a += h;
        return s;
    }
    
    Fraction multiply(Fraction r)
    {
        r.a *= a;
        r.b *= b;
        return r;
    }
    
    void print()
    {
        int h;
        if(a >= b) h = gcd(a,b);
        else h = gcd(b,a);
        a /= h;
        b /= h;
        if(a%b == 0)
            System.out.println(a/b);
        else
            System.out.println(a+"/"+b);    
    }
    
    int gcd(int m,int n)
    {
        if(m%n==0) return n;
        return gcd(n,m%n);
    }
}```
#

remember to space out when typing number

mossy snow
#

what part uses euclids algorithm ?

summer briar
#

member a in class is numerator
member b in class is denominator