php给定一个正整数n,输出它所有质因子。
时间: 2024-04-29 21:21:18 浏览: 90
以下是使用 PHP 编写的代码,用于输出正整数 n 的所有质因子:
```php
<?php
function primeFactors($n) {
$factors = array();
for ($i = 2; $i <= sqrt($n); $i++) {
while ($n % $i == 0) {
$factors[] = $i;
$n /= $i;
}
}
if ($n > 1) {
$factors[] = $n;
}
return $factors;
}
$n = 120;
echo "Prime factors of $n: ";
print_r(primeFactors($n));
?>
```
输出:
```
Prime factors of 120: Array
(
[0] => 2
[1] => 2
[2] => 2
[3] => 3
[4] => 5
)
```
在上面的代码中,我们定义了一个名为 `primeFactors()` 的函数,它接受一个正整数参数 $n,并返回一个包含所有质因子的数组。该函数使用了一个循环来查找 $n$ 的所有质因子。在循环中,我们使用了一个 while 循环,将 $n$ 除以 $i$ 直到 $n$ 不能再被 $i$ 整除。如果 $n$ 最终大于 1,那么它本身也是一个质因子,将其添加到数组中。
在主程序中,我们定义了一个变量 $n 并将其赋值为 120。然后我们调用 `primeFactors()` 函数,并输出结果。