

??博客首页:
??欢迎关注??点赞 ?? 收藏 留言 ?? 欢迎讨论!
??本文由原创,优快云首发!
??系列专栏: 《Java每日一练》
??首发时间:2022年5月4日
:热爱Java学习,期待一起交流!
???作者水平有限,如果发现错误,求告知,多谢!
??有问题可以私信交流!!!
??导航小助手
目录
☆引言☆
大家好!我是。关注博主不迷路,带你一起共进步。今天是Java语言每日一练第12天,我们大家一起来做今天的Java零基础开始精进的练习题。还是那句话,每日一练,我们共同学习,共同进步。感兴趣的小伙伴可以订阅专栏哦!《Java每日一练》。
该练习题中涉及到了创建匿名对象,链式编程、创建方法,三元运算符,for循环,if语句以及调用方法等知识面,你全部掌握这些知识了吗,是如何运用这些知识做这道题的呢?下面我们就开始做题吧!!!

练习题:

【求指定两个数的最大公约数和最小公倍数】
运行过程和结果
示例1:12和6
开始接受数据

输入两个整数

运行结果

示例2:456和248
开始接受数据

输入两个整数

运行结果

示例3:24和32
开始接受数据

输入两个整数

运行结果

解题思路:
1.提示并接受输入的两个整数用int类型a和b,接受数据使用匿名内部类创建对象使用链式编程接受
2.分别创建两个求最大公约数和最小公倍数的方法
2.1创建最大公约数方法maxDivisor,返回值类型为int,参数传递int类型a和b
2.1.1使用三元运算符判断a和b的大小并将两个数的最小值赋值给int类型变量min
2.1.2使用for循环对该数进行自减循环,并使用if语句进行判断是否能被a和b同时整除
2.1.3循环过程中return并返回符合条件的值
2.2创建最小公倍数方法multiple,返回值类型为long,参数传递int类型的a和b
2.2.1使用三元运算符判断a和b的大小并将两个数额最大值赋值给int类型变量max
2.2.2使用for循环对该数进行自加循环,并使用if语句进行判断是否能同时整除a和b
2.2.3循环过程中return并返回符合条件的值
3.在主方法中调用两个方法
3.1调用求最大公约数的方法,参数中传递接受的两个整数,并将结果赋值给int类型的变量d
3.2调用求最小公倍数的方法,参数中传递接受的两个整数,并将结果赋值给long类型的变量x
4.打印并输出两个数的最大公约数和最小公倍数
注意:
1.最大公约数是两个数能同时整除一个数并且是能整除的数中的最大数,最小公倍数是能把两个数同时整除的最小数,此处不要弄反了
2.最大公约数是自减我们用int类型变量,最小公倍数是自加,数值无法确定,使用long类型变量
完整的源代码
public class Test13 {
public static void main(String[] args) {
//1.提示并接受输入的两个整数用int类型a和b,接受数据使用匿名内部类创建对象使用链式编程接受
System.out.println("请您输入两个整数:");
int a =new Scanner(System.in).nextInt();
int b =new Scanner(System.in).nextInt();
//3.在主方法中调用两个方法
//3.1调用求最大公约数的方法,参数中传递接受的两个整数,并将结果赋值给int类型的变量d
int d=maxDivisor(a, b);
//3.2调用求最小公倍数的方法,参数中传递接受的两个整数,并将结果赋值给long类型的变量x
long x=multiple(a, b);
//4.打印并输出两个数的最大公约数和最小公倍数
System.out.println("这两个整数的最大公约数是:"+d);
System.out.println("这两个整数的最小公倍数:"+x);
}
//2.分别创建两个求最大公约数和最小公倍数的方法
//2.1创建最大公约数方法maxDivisor,返回值类型为int,参数传递int类型a和b
public static int maxDivisor(int a,int b){
//2.1.1使用三元运算符判断a和b的大小并将两个数的最大值赋值给int类型变量min
int min = a<b?a:b;
//2.1.2使用for循环对该数进行自减循环,
for (int i = min; i>=0; i--) {
//并使用if语句进行判断是否能被a和b同时整除
if(a%i==0&&b%i==0){
//2.1.3循环过程中return并返回符合条件的值
return i;
}
}
return 0;//这句代码不会执行,让编译通过
}
//2.2创建最小公倍数方法multiple,返回值类型为long,参数传递int类型的a和b
public static long multiple(int a,int b){
//2.2.1使用三元运算符判断a和b的大小并将两个数额最大值赋值给int类型变量max
int max=a>b?a:b;
//2.2.2使用for循环对该数进行自加循环,
for (int i = max; ;i++) {
//并使用if语句进行判断是否能同时把a和b整除
if(i%a==0&&i%b==0){
//2.2.3循环过程中return并返回符合条件的值
return i;
}
}
}
}
总结:
本题主要重点在于熟练掌握创建匿名对象,链式编程、创建方法,三元运算符,for循环,if语句以及调用方法等知识面,并根据清晰的逻辑思路做出本题。那么你是否做对了呢?你的答案正确吗?
好啦!今天的练习就到这里。看吧这么努力的你又学到了很多,新的一天加油鸭!!!
你的点赞是对我最大的鼓励。
你的收藏是对我文章的认可。
你的关注是对我创作的动力。

本文是Java编程的每日练习,通过匿名对象、链式编程、创建方法、三元运算符、if语句和键盘录入,实现求两个数的最大公约数和最小公倍数。文中详细介绍了解题思路、注意事项以及完整源代码。
750

被折叠的 条评论
为什么被折叠?



