JAVA筑基100例第6题求最大公约数和最小公倍数#头条创作挑战赛#❝❤️作者简介:大家好,我是小虚竹Java领域优质创作者,CSDN博客专家,华为云享专家,掘金年度人气作者,阿里云专家博主,51CTO专家博主❤️技术活,该赏❤️点赞收藏⭐再看,养成。

#头条创作挑战赛#
❝
❤️作者简介:大家好,我是小虚竹。Java领域优质创作者,CSDN博客专家,华为云享专家,掘金年度人气作者,阿里云专家博主,51CTO专家博主
❤️技术活,该赏
❤️点赞 收藏 ⭐再看,养成习惯
❞
零、前言今天是学习 「JAVA语言」 打卡的第6天,我的学习策略很简单,题海策略费曼学习法。如果能把这100题都认认真真的自己实现一遍,那意味着 「JAVA语言」 已经筑基成功了。后面的进阶学习,可以继续跟着我,一起走向架构师之路。
一、题目描述题目:输入两个正整数 m 和 n,求其最大公约数和最小公倍数
二、解题思路用辗除法。
循环从n和m中最小的数开始递减,如果m,n都可以整除,则是最大公约数
循环从n和m中最大的数开始递增,如果在小于等于n*m的积时,出现m,n都可以整除,则是最小公倍数
用户在控制台输入,可以用此方法
❝
Scanner input = new Scanner(System.in);
m=input.nextInt();
❞
三、代码详解public class Basics06 {public static void main(String[] args) {int m,n,i;Scanner input= new Scanner(System.in);System.out.print("请输入1个正整数:");m=input.nextInt();System.out.print("请再输入1个正整数:");n=input.nextInt();//循环从n和m中最小的数开始~2,如果m,n都可以整除,则是最大公约数for(i=Math.min(m, n);i>=2;i--) {//判断n和m是否能够整除iif(m%i==0 && n%i==0) {System.out.println(i "是最大公约数");break;}}if(i==1){System.out.println("没有最大公约数");}for(Math.max(m,n);i<=m*n;i) {if(i%m==0 && i%n==0){System.out.println(i "是最小公倍数");break;}}}}
我是虚竹哥,我们下一题见~
