Java gcd gcd(int m, int n)

Here you can find the source of gcd(int m, int n)

Description

Returns the greatest common divisor (GCD) of two integer numbers.

License

Open Source License

Parameter

Parameter Description
m first of the two integer numbers whose GCD will be returned.
n second of the two integer numbers whose GCD will be returned.

Return

the greatest common divisor of m and n.

Declaration

public static int gcd(int m, int n) 

Method Source Code

//package com.java2s;
/*// w ww  .j  a va 2  s .  co m
 * Copyright 2015, Manuel Menezes de Sequeira.
 * 
 * This code is free software: you can redistribute it and/or modify it under
 * the terms of the GNU General Public License as published by the Free Software
 * Foundation, either version 3 of the License, or (at your option) any later
 * version.
 * 
 * This code is distributed in the hope that it will be useful, but WITHOUT ANY
 * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
 * A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 * 
 * You should have received a copy of the GNU General Public License along with
 * this code. If not, see http://www.gnu.org/licenses.
 */

public class Main {

    public static int gcd(int m, int n) {
        if (m == 0 && n == 0)
            throw new IllegalArgumentException("Illegal call with "
                    + "m = 0 and n = 0.");

        m = Math.abs(m);
        n = Math.abs(n);

        while (m != 0) {
            int temporary = m;
            m = n % m;
            n = temporary;
        }

        return n;
    }
}

Related

  1. gcd(int firstNumber, int secondNumber)
  2. gcd(int k, int m)
  3. gcd(int largerNumber, int smallerNumber)
  4. GCD(int m, int n)
  5. gcd(int m, int n)
  6. gcd(int n, int m)
  7. gcd(int n1, int n2)
  8. gcd(int num1, int num2)
  9. gcd(int p, int q)