一段函数获取完全数header("Content-type:text/html;charset=utf-8");
/*
* 因数概念:假如整数n除以m,结果是无余数的整数,那么我们称m就是n的因数。
* 完全数概念:如果一个数恰好等于它的因子之和,则称该数为“完全数”。
*/
function get_mul($num) {
for($i = 1; $i <= $num; $i ++) {
for($j = 1; $j < $i; $j ++) { // 内层for循环求一个数的除自身外的所有因数
if ($i % $j == 0) {
$arr [] = $j;
}
}
if (isset ( $arr )) {
if (array_sum ( $arr ) == $i) { // 如果因数的和刚好等于这个数,说明它是完全数
$res [$i] ['full'] = $i; // 将这个数存进数组
$res [$i] ['mul'] = $arr; // 将这个数的因数也存进数组
}
$arr = array (); // 每求得一个完全数,存放因数的数组要清空,不然多个数的因数会存在在一起,结果错误
}
}
if (isset ( $res )) {
return $res;
} else {
return false;
}
}
$arr = get_mul ( 1000 );
if ($arr) {
echo '100以内的完全数有:
';
foreach ( $arr as $key => $value ) {
echo $value ['full'] . '--它的因数有:' . implode ( ',', $value ['mul'] ) . '(不包括本身)
';
}
} else {
echo '无任何完全数';
}
以上就是因数与完全数的内容,更多相关内容请关注PHP中文网(www.php.cn)!
相关标签:因数 完全数
本文原创发布php中文网,转载请注明出处,感谢您的尊重!