java面试题之最大公约数和最小公倍数

问题:求8和10的最大公约数和最小公倍数

最大公约数:指两个或多个整数共有约数中最大的一个

最小公倍数:两个或多个整数公有的倍数叫做它们的公倍数,其中除0以外最小的一个公倍数就叫做这几个整数的最小公倍数z

最大公约数:

public static void main(String[] args) {
      int a = 8;
      int b = 10;
      //求:最大公约数
      int min = a > b ? b : a;
      int result = 0;
        for (int i = min; i > 1 ; i--) {
            if (a % i == 0 && b % i ==0){
                result = i;
                break;
            }
        }
        System.out.println("最大公约数:"+result);
 }

最小公倍数数:

在这里插入图片描述
观察上图可知:
最大公约数为 = 2;
最小公倍数为 =(8*10)/ 最大公约数

public static void main(String[] args) {
      int a = 8;
      int b = 10;
      //求:最小公倍数和最大公约数
      int min = a > b ? b : a;
      int result = 0;
        for (int i = min; i > 1 ; i--) {
            if (a % i == 0 && b % i ==0){
                result = i;
                break;
            }
        }
        System.out.println("最大公约数:"+result);
        System.out.println("最小公倍数:"+(a*b)/result);
    }
发布了39 篇原创文章 · 获赞 6 · 访问量 1982

猜你喜欢

转载自blog.csdn.net/weixin_45493345/article/details/104327987
今日推荐