输入描述
输入两个正整数A和B
输出描述
输出A和B的最小公倍数
思路
两个数的最小公倍数=这两个数的乘积/这两个数的最大公约数
我们假设有两个正整数A和B
A = a * x
B = b * x
AB两个数的最小公倍数是a * b * x
AB两个数的最大公约数是x
最小公倍数与最大公约数相乘,结果为a * x * b * x,也就是A * B
所以可以得出最小公倍数的计算方法
代码实现
import java.util.*;
public class CommonMultiple {
public static int Max(int A,int B){
if(A<B){//如果A比B小,将他们互换数值,确保A所表示的数值是比较大的那一个
int temp = A;
A = B;
B = temp;
}
if(A%B == 0){//判断大的的数是否可以整除小的数
return B;
}
for(int i = B;i>0;i--){
if(B%i == 0){//先保证A和B中小的那个数可以除尽i之后再去看大的那个数
if(A%i == 0){
return i;
}
}
}
return 0;
}
public static void main(String[] args){
Scanner scan = new Scanner(System.in);
int A = scan.nextInt();
int B = scan.nextInt();
int max = Max(A,B);
if(max!=0){
System.out.println((A*B)/max);
}else{
System.out.println("输入异常");
}
}
}
测试用例