一、题目描述
正整数A和正整数B 的最小公倍数是指 能被A和B整除的最小的正整数值,设计一个算法,求输入A和B的最小公倍数。
数据范围:1≤a,b≤100000 。
二、输入描述
输入两个正整数A和B。
三、输出描述
输出A和B的最小公倍数。
四、解题思路
- 从输入中读取两个正整数A和B;
- 初始化一个变量C为A;
- 调用函数gcb,传入A、B和C作为参数;
- 在gcb函数中,首先判断A是否能被B整除,如果可以,则A即为最小公倍数,返回A;
- 如果A不能被B整除,则递归调用gcb函数,传入A+C、B和C作为新的参数,继续求解;
- 继续递归,直到找到A能被B整除的情况,返回A作为最小公倍数;
- 在主函数中,输出最小公倍数;
五、Java算法源码
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int a = sc.nextInt();
int b = sc.nextInt();
int c = a;
System.out.println(gcb(a, b, c));
}
public static int gcb(int a, int b, int c) {
if (a % b == 0) {
return a;
}
return gcb(a + c, b, c);
}
六、效果展示
🏆本文收录于,华为OD机试(JAVA)(2022&2023)
本专栏包含了最新最全的2023年华为OD机试真题,有详细的分析和Java解答。已帮助1000+同学顺利通过OD机考。专栏会持续更新,每天在线答疑。