Python实现简单求解给定整数的质因数算法示例
作者:Together_CZ 发布时间:2021-05-27 09:23:08
标签: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程序设计有所帮助。
来源:https://blog.csdn.net/Together_CZ/article/details/75146875


猜你喜欢
- 1、测试识别和运行文件识别:在给定的目录中,搜索所有test_.py或者_test.py文件用例识别:Test*类包含的所有test_*的方
- 本文实例讲述了PHP基于phpqrcode类生成二维码的方法。分享给大家供大家参考,具体如下:使用PHP语言生成二维码,还是挺有难度的,当然
- 概览最近开始在学习mysql相关知识,自己根据学到的知识点,根据自己的理解整理分享出来,本篇文章会分析下一个sql语句在mysql中的执行流
- 先给大家说下我的项目需求:用户扫一扫二维码会产生一个链接,该链接会向后端发送个请求,返回一个 apk 的下载地址,用户点击下载按钮可以下载此
- 微信小程序canvas写字板效果及实例写字板效果:书写文字,画板重置,导出图片,导出图片前判断是否书写内容app.json:添加一个路由:&
- 默认级别:warningimport logginglogging.debug('debug message')loggin
- 创建变量变量是存放数据值的容器。与其他编程语言不同,Python 没有声明变量的命令。首次为其赋值时,才会创建变量。实例x = 10y =
- 前言本文通过示例给大家详细介绍了关于python打印三角形的相关,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧1、直角三角
- 本文实例讲述了Python基于pillow判断图片完整性的方法。分享给大家供大家参考,具体如下:1、安装第三方库。pip install p
- 前言在编程开发中,个人觉得,只要按照规范去做,很少会出问题。刚开始学习一门技术时,的确会遇到很多的坑。踩的坑多了,这是好事,会学到更多东西,
- 场景应用老大我让爬取内部网站获取数据,插入到新建的表中,并每天进行爬取更新数据(后面做了定时任务)。然后根据该表统计每日的新增数量/更新数量
- 索引的目的在于提高查询效率,可以类比字典,如果要查“mysql”这个单词,我们肯定需要定位到m字母,然后从下往下找到y字母,再找到剩下的sq
- 表结构如下面代码创建 CREATE TABLE test_tb ( TestId int not null identity(1,1) pr
- 使用场景一:如果在一张表中ManayTOManay字段关联的是自身,也就是出项这样的代码:ManyToManyField(self)那么,你
- 要编写一个简单的能发布网页的 Python 应用服务器,可以使用 Python 自带的 http.server 模块来实现。http.ser
- 工具/原料win7操作系统MySQLzip格式安装包方法/步骤MySQL安装文件分为两种,一种是msi格式的,一种是zip格式的。如果是ms
- 在公司的工作经常要为客户作产品展示的页面,由于客户上传的图片格式大小不一,缩放后会导致变形,于是在星期天抽了点时间,写了一段JS代码,支持图
- 记得在面试腾讯实习生的时候,面试官问了我这样一道问题。//下述两种声明方式有什么不同 function foo(){};
- 概念简介:朴素贝叶斯基于贝叶斯定理,它假设输入随机变量的特征值是条件独立的,故称之为“朴素”。简单介绍贝叶斯定理:乍看起来似乎是
- 内置数据类型文本类型:str数值类型: int,float,complex序列类型:list,tuple,range映射类型: dict集合