代码:
import java.util.ArrayList; import java.util.Scanner; public class test3 {
public static void main(String arg[]) { //从键盘输入两个数num1,num2
System.out.println("请开始输入数:"); Scanner test = new Scanner(System.in); int num1
= test.nextInt(); int num2 = test.nextInt(); //定义这两个数作为求公因数公倍数循环的别量
//求num1和num2最小值,为了针对没有公因数的情况,减少运算量(不知道1是不是) int min = (num1 > num2) ? num2 :
num1; int max = (num1 > num2) ? num1 : num2; //求公因数 for(int i = min;(i >= 1
);i--) { if( num1 % i ==0 && num2 % i==0) {
System.out.println("这两个数的最大公因数为:"+i); break; } } //求公倍数 while(max % num1 != 0||
max % num2 !=0) {max++;} System.out.println("这两个数的最小公倍数为:"+max); } }
好像 最小公倍数=num1*num2/最大公因数,这样应该更好一点。

技术
今日推荐
下载桌面版
GitHub
百度网盘(提取码:draw)
Gitee
云服务器优惠
阿里云优惠券
腾讯云优惠券
华为云优惠券
站点信息
问题反馈
邮箱:[email protected]
QQ群:766591547
关注微信