java:5-1最小公倍数
题目
问题描述
编写一函数lcm,求两个正整数的最小公倍数。
样例输入
一个满足题目要求的输入范例。
例:
3 5
样例输出
与上面的样例输入对应的输出。
数据规模和约定
输入数据中每一个数的范围。
例:两个数都小于65536。
import java.util.Scanner;
public class 求最小公倍数 {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc=new Scanner(System.in);
int n=sc.nextInt();
int m=sc.nextInt();
int d=lcm(n,m);
int min=n*m/d;
System.out.println(min);
}
private static int lcm(int n, int m) {
// TODO Auto-generated method stub
//先求最大公约数,再求最小公倍数
if(n<m){
int temp=n;
n=m;
m=temp;
}
while(m!=0){
if(n==m){//3和3的最大公约数为3
return n;
}else{
int k=n%m;//9,3 k=0
n=m;//9=3;m=0
m=k;
}
}
return n;
}
}