质数因子

质数又称素数。一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数叫做质数;否则成为合数。100以内质数表:2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97

题目描述

功能:输入一个正整数,按照从小到大的顺序输出它的所有质数的因子(如180的质数因子为2 2 3 3 5 )最后一个数后面也要有空格

输入描述:输入一个long型整数

输出描述:按照从小到大的顺序输出它的所有质数的因子,以空格隔开。最后一个数后面也要有空格。

示例

1
2
3
4
输入
180
输出
2 2 3 3 5

Python实现

1
2
3
4
5
6
7
8
9
10
11
12
def zhishu(x):
for i in range(2,x):
if x%i == 0:
return i
return x
l = int(input())
num = []
while zhishu(l)!=l:
num.append(str(zhishu(l)))
l = l//zhishu(l)
num.append(str(l))
print(' '.join(num)+' ')