Python实现简单求解给定整数的质因数算法示例

yipeiwu_com6年前Python基础

本文实例讲述了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

PS:这里提供一款功能相似的在线工具供大家参考:

在线分解质因数计算器工具: http://tools.jb51.net/jisuanqi/factor_calc

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总

希望本文所述对大家Python程序设计有所帮助。

相关文章

Django框架的中的setting.py文件说明详解

Django框架的中的setting.py文件说明详解

1.加载数据库,数据库的配置不能写死在seting.py文件中,下面的方式是读取另外一个文件,配置数据库: config = '' with open(os.path.join(BA...

在Python中调用Ping命令,批量IP的方法

如下所示: #!/usr/bin/env python #coding:UTF-8 ''''''' Author: jefferchen@163.com 可在命令行直接带目的IP...

python 实现tar文件压缩解压的实例详解

python 实现tar文件压缩解压的实例详解 压缩文件: import tarfile import os def tar(fname): t = tarfile.op...

python实现将英文单词表示的数字转换成阿拉伯数字的方法

本文实例讲述了python实现将英文单词表示的数字转换成阿拉伯数字的方法。分享给大家供大家参考。具体实现方法如下: import re _known = { 'zero': 0,...

使用NumPy和pandas对CSV文件进行写操作的实例

数组存储成CSV之类的区隔型文件: 下面代码给随机数生成器指定种子,并生成一个3*4的NumPy数组 将一个数组元素的值设为NaN: In [26]: import numpy a...