39、将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5python
时间: 2023-07-24 09:07:30 浏览: 101
以下是一个实现正整数分解质因数的 Python 代码:
```python
def prime_factors(n):
"""
输入正整数n,返回它的所有质因数
"""
factors = []
i = 2
while i <= n:
if n % i == 0:
factors.append(i)
n //= i
else:
i += 1
return factors
def print_factors(n):
"""
输入正整数n,打印出它的分解质因数结果
"""
factors = prime_factors(n)
str_factors = [str(factor) for factor in factors] # 转换成字符串
print(f"{n}={'*'.join(str_factors)}")
# 测试
print_factors(90)
```
输出结果为:
```
90=2*3*3*5
```
该代码中,`prime_factors` 函数接收一个正整数,返回它的所有质因数,实现方法为从 2 开始逐个试除,将能整除的因子加入列表中,直到最后剩下的因子为 1。`print_factors` 函数则调用 `prime_factors` 函数来获取质因数列表,然后将其转换成字符串并打印出来。
相关问题
将一个正整数分解质因数。例如:输入90,打印出90=2 * 3 * 3 * 5python
以下是将一个正整数分解质因数的 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
num = int(input("请输入一个正整数:"))
factors = prime_factors(num)
print(f"{num}=", end="")
for i in range(len(factors)):
if i == len(factors) - 1:
print(factors[i])
else:
print(factors[i], "*", end="")
```
例如,输入90,输出结果为:
```
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} = {'*'.join(map(str, factors))}")
```
输出结果为:
```
90 = 2*3*3*5
```
阅读全文