PHP实现哥德巴赫猜想
<?php
function isPerfectNumber($number) {
$factors = getFactors($number);
return array_sum($factors) - $number === $number;
}
function getFactors($number) {
$factors = [];
for ($i = 1; $i * 2 <= $number; $i++) {
if ($number % $i === 0) {
$factors[] = $i;
if ($i * 2 !== $number) {
$factors[] = $number / $i;
}
}
}
sort($factors);
return $factors;
}
function printPerfectNumbers($limit) {
for ($i = 1; $i <= $limit; $i++) {
if (isPerfectNumber($i)) {
echo $i . "\n";
}
}
}
// 调用函数打印小于或等于1000的完美数字
printPerfectNumbers(1000);
这段代码定义了三个函数:isPerfectNumber
用于检查一个数字是否为完美数字,getFactors
用于获取一个数字的所有因子,printPerfectNumbers
用于打印小于或等于给定限制的所有完美数字。最后,调用printPerfectNumbers(1000)
来执行并打印结果。
评论已关闭