欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

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

程序员文章站 2024-03-06 23:05:50
题目:输入两个正整数m和n,求其最大公约数和最小公倍数。 程序分析:利用辗除法。 最大公约数: public class commondivisor{...

题目:输入两个正整数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);
  }
}

大家可以参考以前发布的文章。