题解 | #质数因子#

质数因子

http://www.nowcoder.com/practice/196534628ca6490ebce2e336b47b3607

HJ6 质数因子

思路:

对于合数来说:质因数>=2且<=自身的平方根,因此遍历时,只需要遍历到自身平方根即可,之后用该合数除以遍历到的数,得到的数值继续重复操作。其中,每遍历一个数,就打印,并且用空格隔开;
对于质数来说,因子就是1和它本身。因为质数从2开始,所以对于这类数,只要>=2打印即可;
step1:输入一个正整数;
step2:从2到自身平方根开始遍历,当自身可以整除遍历到的数时,打印遍历到的数,并用空格隔开,同时将整除完的数字重复遍历,直至循环结束;
step3:对于质数,只要>=2打印即可;

代码如下:

n = int(input())
for i in range(2,int(n**0.5)+1):
    while n%i == 0:
        print(i,end=' ')
        n = int(n/i)
if n >= 2:
    print(n)
全部评论

相关推荐

04-13 20:21
门头沟学院 Java
点赞 评论 收藏
分享
评论
点赞
2
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务