PHP 求最大公约数与最小公倍数
2011-09-20 09:05
357 查看
//求最大公约数
function max_divisor($a,$b)
{
$n = min($a, $b);
for($i=$n; $i>1; $i--)
{
if (is_int($a/$i)&&is_int($b/$i))
{
return $i; //此处如果用echo $i;则输出结果为432;故应区分echo、return的区别
}
}
return 1;
}
//求最小公倍数
function min_multiple($a, $b)
{
if($b==0) //一定要考虑除数不能为零
{
return $b;
}else{
$m = max($a, $b);
$n = min($a, $b);
for($i=2; ; $i++)
{
if (is_int($m*$i/$n))
{
return $i;
}
}
}
return $a*$b;
}
//辗转相除法求最大公约数
function max_divisor2($a, $b)
{
if($b==0)
{
return $a;
}
else
{
return max_divisor2($b,($a%$b));
}
}
//加减法求最大公约数
function max_divisor3($a, $b)
{
if ($a == $b)
{
return $a;
}
elseif($a > $b)
{
$a = $a-$b;
}
else
{
$b = $b-$a;
}
return max_divisor3($a, $b);
}
function max_divisor($a,$b)
{
$n = min($a, $b);
for($i=$n; $i>1; $i--)
{
if (is_int($a/$i)&&is_int($b/$i))
{
return $i; //此处如果用echo $i;则输出结果为432;故应区分echo、return的区别
}
}
return 1;
}
//求最小公倍数
function min_multiple($a, $b)
{
if($b==0) //一定要考虑除数不能为零
{
return $b;
}else{
$m = max($a, $b);
$n = min($a, $b);
for($i=2; ; $i++)
{
if (is_int($m*$i/$n))
{
return $i;
}
}
}
return $a*$b;
}
//辗转相除法求最大公约数
function max_divisor2($a, $b)
{
if($b==0)
{
return $a;
}
else
{
return max_divisor2($b,($a%$b));
}
}
//加减法求最大公约数
function max_divisor3($a, $b)
{
if ($a == $b)
{
return $a;
}
elseif($a > $b)
{
$a = $a-$b;
}
else
{
$b = $b-$a;
}
return max_divisor3($a, $b);
}
相关文章推荐
- PHP编程求最大公约数与最小公倍数的方法示例
- 求最大公约数和最小公倍数的C语言…
- 关于C/C++中求最大公约数和最小公倍数的算法
- java写的辗转相除法求两个数的最大公约数和最小公倍数
- 求最大公约数与最小公倍数
- 第二十一周【项目: 最小公倍数,最大公约数(算法改进)】
- 求两个数的最大公约数和最小公倍数
- 求最大公约数与最小公倍数
- 第十二周-求两个整数的最大公约数和最小公倍数
- JAVA算法---最大公约数和最小公倍数
- (算法)辗转相除法求最大公约数和最小公倍数
- C#趣味程序---求两个数的最大公约数和最小公倍数
- 求两个整数的最大公约数和最小公倍数
- 求两个数的最大公约数和最小公倍数
- C语言-求最大公约数和最小公倍数
- c++穷举法求最大公约数和最小公倍数的实例中如何调用max和min函数
- 求最大公约数和最小公倍数的方法
- 求两数的最大公约数和最小公倍数
- 辗转相除法求两个正整数的最大公约数和最小公倍数,要求键盘输入正整数。
- 求多个数的最大公约数和最小公倍数