编写一个PHP程序,给定一个正整数n,输出它所有质因子。
时间: 2024-04-12 19:32:11 浏览: 179
当然,我可以为您编写一个PHP程序来输出给定正整数n的所有质因子。请看下面的代码:
```php
<?php
function getPrimeFactors($n) {
$factors = array();
$divisor = 2;
while ($n > 1) {
if ($n % $divisor == 0) {
$factors[] = $divisor;
$n /= $divisor;
} else {
$divisor++;
}
}
return $factors;
}
$n = 36;
$primeFactors = getPrimeFactors($n);
echo "正整数 {$n} 的质因子是:";
foreach ($primeFactors as $factor) {
echo $factor . " ";
}
?>
```
在上述代码中,我们定义了一个函数 `getPrimeFactors($n)` 来获取给定正整数n的所有质因子。该函数使用了一个 `while` 循环,不断将最小的质因子除掉,直到n变为1为止。在每次除法操作时,我们将质因子存储在 `$factors` 数组中。
在主程序中,我们设置了一个正整数 `$n` 的值为36,并调用 `getPrimeFactors($n)` 函数来获取其所有质因子。最后,我们使用 `foreach` 循环遍历 `$primeFactors` 数组,并将结果输出到屏幕上。
如果您运行上述代码,将会得到以下输出:
```
正整数 36 的质因子是:2 2 3 3
```
这样,您就可以输出给定正整数n的所有质因子了。希望对您有所帮助!如果您有任何其他问题,请随时提问。
阅读全文