2024.5.17

8-9 【Python0010】正整数的因子展开式
分数 10
作者 doublebest
单位 石家庄铁道大学

【题目描述】编写程序,输出一个给定正整数x(x>1)的质因子展开式。
【输入格式】请在一行中输入整数x的值。
【输出格式】对每一组输入的x,按以下格式输出x的质因子展开式(假如x的质因子分别为a、b、c):x=abc
【输入样例】72
【输出样例】72=22233

def prime_factors_expansion(x):

factors = [] # 存储质因子

# 循环找出质因子

divisor = 2

while x > 1:

# 如果当前数能被质因子整除,则添加该质因子到列表中

if x % divisor == 0:

factors.append(divisor)

x //= divisor

else:

# 否则,尝试下一个数作为因子

divisor += 1

# 将质因子列表转换为字符串,组成质因子展开式

factors_expansion = ''.join(map(str, factors))

return factors_expansion

# 输入正整数x

x = int(input())

# 输出x的质因子展开式

factors_expansion = prime_factors_expansion(x)

print(f"{x}={factors_expansion}")

posted @ 2024-06-13 15:40  liuxuechao  阅读(2)  评论(0编辑  收藏  举报