最大公约数和最小公倍数

package java算法;
/*
 * 输入两个数,求其最大公约数和最小公倍数
 * 
 */
import java.util.Scanner;

public class comonDivisor {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Scanner sc=new Scanner(System.in);
        int a=sc.nextInt();
        int b=sc.nextInt();
        int first=a;
        int second=b;
        System.out.println("a="+a+" "+"b="+b);
        int temp;
        if(a<b){
            temp=a;
            a=b;
            b=temp;
        }
        
        while(b!=0){               //用辗转相除法求两个数的最大公约数
            temp=a%b;
            a=b;
            b=temp;
        }
        System.out.println("最大公约数为:"+a);
        System.out.println("最小公倍数:"+first*second/a);

    }

}

.辗转相除法 

。求两个正数82516105的最大公因数。 

(分析:辗转相除→余数为零→得到结果) 

解:82516105×12146 

显然82516105的最大公因数也必是2146的因数,同样61052146的公因数也必是8251的因数,所以82516105的最大公因数也是61052146的最大公因数。 

61052146×21813 

21461813×1333 

1813333×5148 

333148×237 

14837×4

3782516105的最大公因数。 

原文地址:https://www.cnblogs.com/watchfree/p/5301641.html