
PHP如何求最大公约数与最小公倍数
1个回答
2017-12-24 · 知道合伙人数码行家

知道合伙人数码行家
采纳数:117533
获赞数:517210
长期从事计算机组装,维护,网络组建及管理。对计算机硬件、操作系统安装、典型网络设备具有详细认知。
向TA提问 私信TA
关注

展开全部
//求最大公约数
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);
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询