求两个数的最小公倍数

时间:2022-02-22作者:klpeng分类:IT综合浏览:273评论:0

 求两个数的最小公倍数可以转换成 求两个数的绝对值乘积/两个数的最大公约数
 设gcd(a,b)表示a,b的最大公约数。lcm(a,b)表示a,b的最小公倍数。
 则存在 : lcm(a,b) * gcd(a,b) = |a*b|
 转换成 : lcm(a,b) = |a*b| / gcd(a,b)
计算模板:

	int gcd(int a, int b) { //求最大公约数
        return b!=0?gcd(b,a%b):a;
    }
	int lcm = Math.abs(a,b) / gcd(a,b) //得出a,b的最小公倍数

代码实例:
 输入两个数a,b。求a,b的最小公倍数

import java.util.*;

public class Main{
    public static int gcd(int a,int b){ //求a,b的最大公约数
        return b!=0?gcd(b,a%b):a;
    }
    public static void main(String[]args){
        Scanner sc = new Scanner(System.in);
        int a = sc.nextInt();
        int b = sc.nextInt();
        int lcm = Math.abs(a*b) / gcd(a,b); //得出a,b的最小公倍数
        System.out.println(lcm);
    }
}
打赏
文章版权声明:除非注明,否则均为彭超的博客原创文章,转载或复制请以超链接形式并注明出处。
相关推荐

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

猜你喜欢