展轉相除法:展轉相除法是求兩個天然數的最大公約數的一種方法,也叫歐幾里德算法。 過程: java
用展轉相除法求幾個數的最大公約數,能夠先求出其中任意兩個數的最大公約數,再求這個最大公約數與第三個數的最大公約數,依次求下去,直到最後一個數爲止。最後所得的那個最大公約數,就是全部這些數的最大公約數。算法
程序實現:spa
/** * Created by hongcaixia on 2019/10/6. */
public class GreatestCommonDivisor {
public static void main(String[] args) {
int maxComm = getMaxComm(319, 377);
//29
System.out.println("最大公約數是:"+maxComm);
}
public static int getMaxComm(int m,int n){
if(m<=0 || n<=0){
System.out.println("輸入數據錯誤!");
}
if(m<n){
int temp = 0;
//m,n交換
temp = m;
m = n;
n = temp;
}
int r = m%n;
while (r!=0){
m = n;
n = r;
r = m%n;
}
return n;
}
}
複製代碼