编写程序,输入一个大于0的正整数,分解质因数并输出。例如,当输入90后,输出为1*2*3*3*5.
时间: 2023-05-31 15:02:33 浏览: 252
```python
n = int(input("请输入一个大于0的正整数:"))
factors = [] # 存储质因数的列表
# 从2开始循环,尝试将n分解为若干个质因数的乘积
while n > 1:
for i in range(2, n + 1):
if n % i == 0: # i是n的一个因数
factors.append(i) # 将i加入质因数列表
n //= i # n除以i,更新n的值,继续分解
break
# 将质因数列表转化为字符串输出
result = '*'.join(str(i) for i in factors)
print(result)
```
输出示例:
```
请输入一个大于0的正整数:90
2*3*3*5
```
相关问题
用Python语言编写程序,输入一个大于0的正整数,分解质因数并输出。例如,当输入90后,输出为1*2*3*3*5
以下是Python程序实现:
```python
n = int(input("请输入一个大于0的正整数:"))
factors = []
i = 2
while i <= n:
if n % i == 0:
factors.append(i)
n //= i
else:
i += 1
print("*".join(str(x) for x in factors))
```
程序首先读入一个大于0的正整数n。然后,我们使用一个while循环来分解n的质因数。循环内部,我们检查n是否可以被i整除,如果可以,就将i添加到因数列表中,并将n除以i,以便继续找到下一个质因数。如果n不能被i整除,则增加i的值,以便找到下一个可能的质因数。
最后,我们将因数列表中的元素转换为字符串,并使用"*"字符连接它们,以便输出结果。
编写程序,输入一个大于0的正整数,分解质因数并输出。例如,当输入90后,输出为1*2*3*3*5. 输入输出样例: 90 (注:运行时的输入) 90=1*2*3*3*5 (注:运行时的输出)
num = int(input()) # 输入正整数
# 定义一个列表,用来存储分解出来的质因数
factors = []
# 分解质因数
for i in range(2, num + 1):
while num % i == 0:
factors.append(i)
num //= i
# 输出结果
print("{}=".format(num) + "*".join(str(x) for x in factors))
阅读全文