import java.util.Scanner;
/**
* 任务二:实现趣味动物问题关键算法并绘制流程图(30 分)
动物园里新来了两只骆驼,那么你能计算出它们年龄的最小公倍数么?
从键盘输入两个整数,输出两个整数的最小公倍数。
要求: 用循环语句实现。
* @author key
*公倍数:是指在两个或两个以上的自然数中,如果它们有相同的倍数,这些倍数就是它们的公倍数。
*公倍数中最小的,就称为这些整数的最小公倍数(lowest common multiple)。
*例子:
* a,b的最小公倍数获取:a乘以b的乘积除以最大公约数即可
* 最大公约数获取:辗转相除法又称为欧几里德算法,如a=60 ,b=40:
* 60%40 = 20
* 40%20 = 0
* 20就是最大公约数
*/
public class week02 {
/**
* 求两个数的最大公约数
* @param a 整数
* @param b 整数
* @return 最大公约数
*/
public static int gys(int a,int b){
//如果a<b,两数交换位置
if(a<b){
int temp = a;
a = b;
b = temp;
}
//使用辗转相除法,只要被除数没有为0,求余数
while(b > 0){
int gyd = a%b;
a = b;
b = gyd;
}
//返回最大公约数
return a;
}
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
System.out.print("输入第一个数:");
int a = in.nextInt();
System.out.print("输入第二个数:");
int b = in.nextInt();
//最小公倍数获取:a乘以b的乘积除以最大公约数即可
int gbs = a*b/gys(a,b);
System.out.println(a+"和"+b+"的最小公倍数为:"+gbs);
}
}
j1_11_02.实现趣味动物问题关键算法。求最小公倍数,求最大公约数。公倍数:是指在两个或两个以上的自然数中,如果它们有相同的倍数,这些倍数就是它们的公倍数。
最新推荐文章于 2022-02-17 21:43:47 发布