python实现求解给定整数的质因数

    接着做题遇到求解质因数分解的问题,思想很简单,就是需要遍历从1到该整数本身,并且判断当数字为质数时加入列表最后输出即可,求解这样的一个正整数的质因数分解,关键在于理解,每次得到一个质因数之后需要更新整数为:原始整数除以这个质因数的值,循环直至原始整数的值小于2终止,输出结果即可,实现如下:

#!usr/bin/env python
#encoding:utf-8

'''
__Author__:沂水寒城
功能:求解整数的质因数分解
'''


num=int(raw_input())
def get_num_factors(num):
    list0=[]
    tmp=2
    if num==tmp:
        print num
    else:
        while (num>=tmp):
            k=num%tmp
            if( k == 0):
                list0.append(str(tmp))
                num=num/tmp  #更新
            else:
                tmp=tmp+1  #同时更新除数值,不必每次都从头开始
    print ' '.join(list0)+' '
结果如下:

90
2 3 3 5 

180
2 2 3 3 5 



你可能感兴趣的:(编程技术,面试工作,面试准备,python实践)