欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

因数与完全数

程序员文章站 2023-12-26 12:53:27
...

一段函数获取完全数

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)!

相关标签: 因数 完全数

上一篇:

下一篇: