您的位置:首页 > 编程语言 > Java开发

java经典算法6_最大公约数和最小公倍数

2016-11-14 05:50 239 查看
求两个数最大公约数和最小公倍数。 

如果有一个自然数a能被自然数b整除,则称a为b的倍数,b为a的约数。几个自然数公有的约数,叫做这几个自然数的公约数。

公约数中最大的一个公约数,称为这几个自然数的最大公约数。
几个数共有的倍数叫做这几个数的公倍数,其中最小的一个公倍数,叫做这几个数的最小公倍数。
求最大公约数公式:f(x, y)= f(y, x%y)(y > 0)

求最小公倍数公式:最小公倍数=两数的乘积/最大公约(因)数

package com.homework6;

public class Demo6 {

public static void main(String[] args) {
// TODO Auto-generated method stub

Demo6 d6 = new Demo6();
System.out.println(d6.max_Approx(12, 6));
System.out.println(d6.min_Multip(12, 6));
}

public int max_Approx(int a, int b) {
int temp = a % b;
if (temp != 0) {
a = b;
b = temp;
return max_Approx(a, b);
} else {
return b;
}
}

public int min_Multip(int a, int b) {
int temp = max_Approx(a, b);
return a*b/temp;

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: