最大公约数和最小公倍数

来源:互联网 发布:阿里百川是不是马云的 编辑:程序博客网 时间:2024/06/06 16:30

输入2个正整数m,n,求其最大公约数和最小公倍数。

:利用辗转相除法。

package repeat_job1;public class Gcd_Lcm {public Gcd_Lcm(){}public static int gcd(int m,int n){while(m%n!=0){int a=n;n=m%n;m=a;}return n;}public static int lcm(int m,int n){return m*n/gcd(m,n);}}

  欧几里得算法:
public static long gcd(long m,long n)
{
while(n!=0)
{
int rem=m%n;
m=n;
n=rem;
}
return m;
}
最小公倍数=(m*n)/gcd(m,n)

import repeat_job1.Gcd_Lcm;import java.util.Scanner;public class Test1 {public static void main(String[] args){Scanner reader=new Scanner(System.in);System.out.println("请输入m,n:");int m=reader.nextInt();int n=reader.nextInt();reader.close();System.out.println("最大公约数:"+Gcd_Lcm.gcd(m,n)+" "+"最小公倍数:"+Gcd_Lcm.lcm(m,n));}}

  

0 0
原创粉丝点击