python-正整数的因子展开式

【题目描述】编写程序,输出一个给定正整数x(x>1)的质因子展开式。

【输入格式】请在一行中输入整数x的值。

【输出格式】对每一组输入的x,按以下格式输出x的质因子展开式(假如x的质因子分别为a、b、c):x=abc

【输入样例】72

【输出样例】72=22233

代码:

num = int(input())
newnum = num
text = ""
counter = 2
while counter * counter <= newnum:
    if newnum % counter == 0:  # 判断是否能够整除2
        text = text + str(counter)  # 将质因子组合起来
        newnum = int(newnum / counter)
    else:
        counter += 1

if newnum != 1:  # 如果结果不为1,就加上目前的newnum质因子
    text = text + str(newnum)
if text == "" + str(newnum):  # 判断质因子就是其本身
    text = str(newnum)
print(str(num) + "=" + text)

 

posted @ 2022-03-18 22:21  睡觉不困  阅读(437)  评论(0编辑  收藏  举报