Python解答将一个正整数分解质因数,例如:输入90,打印出90=2*3*3*5
时间: 2024-12-27 15:31:43 浏览: 28
在Python中,我们可以编写一个函数来分解一个正整数的质因数。这里是一个简单的示例:
```python
def prime_factors(n):
i = 2
factors = []
while i * i <= n:
if n % i:
i += 1
else:
n //= i
factors.append(i)
# 如果n还有大于1的因子,说明n本身也是质数,添加到factors列表
if n > 1:
factors.append(n)
return factors
# 测试函数
number = 90
print(f"{number}={*' * '.join(map(str, prime_factors(number)))}")
# 输出结果:90=2*3*3*5
```
这个函数通过不断检查`i`是否能整除`n`,并将能整除的部分加入到质因数列表中。当`i`不再能整除`n`时,增加`i`并继续测试。最后,如果`n`大于1,那么它本身就是质因数,也加进列表。
相关问题
Python将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5
好的,这个问题我可以回答。以下是Python代码:
```python
def prime_factors(n):
i = 2
factors = []
while i * i <= n:
if n % i:
i += 1
else:
n //= i
factors.append(i)
if n > 1:
factors.append(n)
return factors
n = 90
factors = prime_factors(n)
print(f"{n} = {'*'.join(map(str, factors))}")
```
输出结果为:
```
90 = 2*3*3*5
```
python将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5
好的,以下是 Python 代码实现:
```python
def prime_factors(n):
i = 2
factors = []
while i * i <= n:
if n % i:
i += 1
else:
n //= i
factors.append(i)
if n > 1:
factors.append(n)
return factors
n = 90
factors = prime_factors(n)
print(f"{n}=", end="")
for i in range(len(factors)):
if i == len(factors) - 1:
print(factors[i])
else:
print(factors[i], "*", end="")
```
输出结果为:
```
90=2*3*3*5
```
阅读全文