两个数最大公约数和最小公倍数

输出两个正整数m和n,求出这两个数最大公约数和最小公倍数
分析:两个必然会有一大一小,比较出来,用for循环来处理小的那个数,找出最大公约数,进而求出最小公倍数


package com.math.forth;

import java.util.Scanner;

/**
 * 输出两个正整数m和n,求出这两个数最大公约数和最小公倍数
 * 
 * @author wql
 *
 */
public class Meth05 {

    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        System.out.println("请输入第一个数:");
        int m=sc.nextInt();
        System.out.println("请输入第二个数:");
        int n=sc.nextInt();
        method(m,n);
    }

    public static void method(int m,int n){
        int max=m>n?m:n;    //两个数分别出最大最小值
        int min=m>n?n:m;
        int k=0;
        int j=0;
        if(max%min==0){
            System.out.println("最大公约数:"+min+",最小公倍数:"+max);
        }else{
            for(int i=min;i>0;i--){
                if(max%i==0&&min%i==0){//得出最大公约数
                    k=i;
                }
            }
            j=max*min/(k*k);    //最小公倍数
            System.out.println("最大公约数:"+k+",最小公倍数:"+j);
        }
    }
}
原文地址:https://www.cnblogs.com/wangqilong/p/8279775.html