Java最大公約數 最小公倍數


/**
 * CommonDiviser.java
 * @author:王超
 * 2017年3月15日
 * wangChaoPA實習工作練習.com.最大公約數和最小公倍數.CommonDiviser
 * Copyright (c) 2007, 2016 Infopower corporation All Rights Reserved.
 */
package wangChaoPA實習工作練習.com.最大公約數和最小公倍數;

import java.util.Scanner;

/**
 * o
 *
 *
 * <p>
 * 輸入兩個正整數m和n,求其最大的公約數和最小公倍數
 * </p>
 *
 * @author 王超
 * @since 1.0
 * @date 2017年3月16日 下午11:08:18
 * @see 新建|修改|放棄
 * @see wangChaoPA實習工作練習.com.最大公約數和最小公倍數.CommonDiviser 解題思路:輾轉相除法,若n>m 1:若n%m ==
 *      0 則m為最大公約數 否則 n%m=k n=m,m=k 重復步驟1直到余數為0 最大公倍數=n*m/最大公約數
 */
public class CommonDiviser
{
    private static Scanner input = new Scanner(System.in);

    public static void main(String[] args)
    {
        int n = input.nextInt();
        int m = input.nextInt();
        int zdgys = result(n, m);
        System.out.println("最大公約數是:" + zdgys);
        System.out.println("最大公倍數是:" + n * m / zdgys);
        input.close();
    }

    public static int result(int n, int m)
    {
        // 余數
        int k = 0;
        // 使n>m
        if (n < m)
        {
            int t = 0;
            t = n;
            n = m;
            m = t;
        }
        // 直到余數為0
        while (m != 0)
        {
            k = n % m;
            n = m;
            m = k;
        }
        System.out.println(n);
        return n;
    }
}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM