加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

Java求两个正整数的最大公约数和最小公倍数

发布时间:2020-12-14 14:30:52 所属栏目:Java 来源:网络整理
导读:题目:输入两个正整数m和n,求其最大公约数和最小公倍数。 程序分析:利用辗除法。 最大公约数: public class CommonDivisor{ public static void main(String args[]) { commonDivisor(24,32); } static int commonDivisor(int M,int N) { if(N0||M0) { Sy

题目:输入两个正整数m和n,求其最大公约数和最小公倍数。

程序分析:利用辗除法。

最大公约数:

public class CommonDivisor{
  public static void main(String args[])
  {
    commonDivisor(24,32);
  }
  static int commonDivisor(int M,int N)
  {
    if(N<0||M<0)
    {
      System.out.println("ERROR!");
      return -1;
    }
    if(N==0)
    {
      System.out.println("the biggest common divisor is :"+M);
      return M;
    }
    return commonDivisor(N,M%N);
  }
}

最小公倍数和最大公约数:

import java.util.Scanner;
public class CandC
{
  //下面的方法是求出最大公约数
  public static int gcd(int m,int n)
  {
    while (true)
    {
      if ((m = m % n) == 0)
        return n;
      if ((n = n % m) == 0)
        return m;
    }
  }
  public static void main(String args[]) throws Exception
  {
    //取得输入值
    //Scanner chin = new Scanner(System.in);
    //int a = chin.nextInt(),b = chin.nextInt();
    int a=23; int b=32;
    int c = gcd(a,b);
    System.out.println("最小公倍数:" + a * b / c + "n最大公约数:" + c);
  }
}

大家可以参考编程小技巧以前发布的文章。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读