DAY 002--判断并输出素数
002-- 判断 101-200 之间有多少个素数,并输出所有素数。
定理:一个整数的最大公约数不会超过本身的平方根
素数:一个只能被1和本身整除的整数称之为素数,也就是质数。
分析流程:
1、定义一个空列表放置所有的素数----Primenum_list=[]
2、定义一个判断一个数是否为素数的函数--def is_Primenum(num):
2.1、对于每一个2到√num内的数,判断输入的num是否能整除,---注意:用到根号,需要引入math模块,运用math模块下的 math.sqrt()
2.2、如果能整除,返回结果为False--return False来结束循环,不需要用else语句!!!!!( 我就是在这点栽了= ! =)
2.3、否则返回结果为True
3、对于101到200之内的每个数,调用is_Primenum函数,得到返回值
3.1 、如果返回为True,则将该数字添加到Primenum_list
4、用","拼接打印出Primenum_list的值
代码如下:
import math def is_Primenum(num): for i in range(2,int(math.sqrt(num))+1): if num%i ==0: return False return True result=[] for i in range(101,201): if is_Primenum(i)==True: result.append(str(i)) print(",".join(result))
题目反思:
1、明白了素数的含义,还有判断一个数是否为素数的基本使用方法
2、掌握了算术开平方根的方法---import math,调用math.sqrt()方法
3、掌握了循环列表的值如何在满足某个条件后就停止,如何在不满足某个条件后进行另外操作。---这需要调用函数,然后if + return, 而不是if + else(我之前的思路)
新学知识点:
1、开平方根:
import math math.sqrt(100)
输出:10
Mark on 2018.4.6