|
本文实例讲述了PHP编程求最大公约数与最小公倍数的方法。分享给大家供大家参考,具体如下:
//求最大公约数
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);
}
|
|