Python基础语法——循环(四)
2017-02-21 23:23
197 查看
前言
这是这一阶段对循环语法练习的一个实践练习分享及总结题目
找出一个整数的所有最小因子,即所有因子均为素数因子,例如8的所有因子即为2,2,2。思路解析:在编程前先进行梳理整个解题过程,首先是需要找到整数的因子,同时对因子进行素数的判断并将非素数因子进行分解,同时需要注意因子是成对出现的,而分解之后的素数因子是不变的。
下面是博主编写的源码:
#!/usr/local/bin/python # encoding: utf-8 ''' test -- 软件流程开发学习 -- 显示一个整数的所有因子的素数因子(即将所有因子分解到最小因子) @author: Eric @copyright: 2017 organization_name. All rights reserved. @contact: xj_lin@protonmail.com @note: 关键思想是素因子可以构成所有的因子,所以不用遍历所选整数的所有因子 ''' def Division_factor(num): factor = 2 while factor <= num/2: if num % factor == 0: judge = Prime(factor) if judge == 1: print(factor,"\t",end="") factor = int(num / factor) judge = Prime(factor) if judge == 1: print(factor,"\t",end="") else: Division_factor(factor) break#只要找到一个因子便不用再继续循环factor了 else: factor += 1 def Prime(factor): k = 2 isPrime = True while k <= factor/2: if factor % k == 0: isPrime = False break k += 1 if isPrime: return 1 else: return 0 if __name__ == "__main__": num = eval(input("请输入一个整数:")) Division_factor(num)
小结:
循环部分的学习到此告一个阶段,关键对循环的使用是如何判断合适需要,这样使用循环才能达到最佳的效果,而在今天这篇博文的练习过程中我便陷入了对多对因子的分解,这导致结果会有重复,在重新理清思绪之后才实现最终效果,虽然源码不像之前的练习的代码那样少,但是解题的思路很清晰,可以作为参考。分享本书作者梁勇的源码:
相关文章推荐
- Python基础语法——循环(五)
- Python语法基础(八):while循环
- Poedu_Python_Lesson003_基础语法_列表、元组、判断、循环
- Python语法基础11.for循环
- python基础语法——循环(二)
- Python基础语法学习--条件控制与循环语句
- Python语法基础10.while循环
- Python基础语法——循环(一)
- Python基础语法——循环(三)
- Python 基础语法(四)
- Python 基础语法知识(二)
- Python2 基础语法(四)
- Python基础教程学习笔记----第五章 条件、循环和其他语句
- Python 基础语法知识(三)
- python学习日记1--基础语法篇
- shell编程基础自学知识(截取字符串) shell基础语法判断和循环等
- Python2 基础语法(二)
- Python2 基础语法(一)
- javascript学习系列02(变量,循环,基础语法)
- Python基础06 循环