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

辗转相除法求最大公约数 php

2017-09-04 00:07 393 查看
<?php
/*
辗转相除法过程

两数相除取余数,判断余数是否为零,
为零,则除数为当前最大公约数,
不为零,则当前除数变作被除数,余数变作除数,
再相除取余,再判断,直到余数为零。

12 8
12%8 余 4
8%4 余 0
4为最大公约数。

*/
$m = isset($_REQUEST['m']) ? $_REQUEST['m'] : 12;
$n = isset($_REQUEST['n']) ? $_REQUEST['n'] : 4;
$num1 = $m;
$num2 = $n;
do{
$mod = $m % $n;
$m = $n;
$n = $mod;
}while($mod != 0);
echo "$num1, $num2 的最大公约数是:$m";
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  辗转 相除法