首页 > 其他 > 详细

蓝桥杯:最小公倍数

时间:2020-04-10 12:54:47      阅读:70      评论:0      收藏:0      [点我收藏+]
技术分享图片

解析:
两种实现方式

  • 暴力求解,直接用for循环一个一个数增加,符合条件就返回
  • 公式求解法,先求出最大公约数c,再用公式:a*b/c
package _4_9_test;

import java.util.Scanner;

/*最小公倍数
 * 
 * */
public class SeventySix {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner scanner = new Scanner(System.in);
		int a = scanner.nextInt();
		int b = scanner.nextInt();
		
		System.out.println("方法一:" + lcm1(a, b));
		System.out.println("方法二:" + lcm2(a, b));
	}

	// 循环法
	public static int lcm1(int a, int b) {
		for (int i = Math.min(a, b);; i++) {
			if (i % a == 0 && i % b == 0) {
				return i;
			}
		}
	}

	// 利用最大公约数的公式法: a*b/最大公约数
	public static int lcm2(int getA, int getB) {
		int a = getA;
		int b = getB;
		int big;
		
		if (a < b) {
			int temp = b;
			b = a;
			a = temp;
		}

//		求出最大公约数
		while (a % b != 0) {
			int temp = b;
			b = a % b;
			a = temp;
		}
		
//		最大公约数
		big = b;

		return getA * getB / b;
	}

}

技术分享图片

蓝桥杯:最小公倍数

原文:https://www.cnblogs.com/lyd447113735/p/12672316.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!