Python打印某范围内的素数
来源:互联网 发布:声音编辑软件 编辑:程序博客网 时间:2024/05/22 15:51
继续练手Python基础部分:用Python实现某范围的素数打印
分别用while循环和for循环实现,然后用自定义函数方式,代码如下:
# -*- coding: utf-8 -*-"""Created on Sun Oct 23 20:16:41 2016打印出素数如果某个数x能够整除 2~根号x包含2端,那么这个数就不是素数,只能被1和他本身整除找出2~x之间的素数@author: qq1013985957"""primeMax = int(raw_input("请输入素数的范围:".decode('utf-8')))#raw_input在Pythonx,y2.7中始终是乱码,先转码,然后将输入的字符串转intfrom math import sqrt x = 2while x<=primeMax: start = 2 end = sqrt(x) while start <= end: if x%start==0:#非素数的满足条件 break start+=1#因素自增 #此处解释:如果x能被 2~ 根号x整除 然后跳出循环,那么start一定<=end #否则循环完毕start肯定>end,此时就是素数 if start>end: print x x+=1print("-------------------------")for x in range(2,primeMax+1): flag = True#标记位,默认为素数 for y in range(2,int(sqrt(x))+1): if x%y==0:#非素数的满足条件 flag = False#非素数 break if flag: print x
结果截图:
使用自定义函数:
# -*- coding: utf-8 -*-"""Created on Mon Oct 24 21:48:32 2016@author: qq1013985957"""from math import sqrtdef isprime(num): "number is prime ,is true,else false" start = 2 end = int(sqrt(num)) for i in range(start,end+1): if num%i==0: return False return Truex = int(raw_input("请输入素数范围:".decode("utf-8")))for i in range(2,x): if isprime(i): print i
结果截图:
0 0
- Python打印某范围内的素数
- java小程序之打印一定范围内的素数
- 自定义范围内的素数
- 求范围内的素数
- 初学python:输出指定范围内的素数,范围由键盘输入
- python编程找出对应范围内的所有素数(质数)
- 输出指定范围内的素数
- 求出范围内所有的素数
- 显示一定范围内的素数
- 大范围内素数的求法
- 筛检法求一定范围内的素数
- 一定范围内的素数个数
- 求一定范围内的素数
- 算法15:打印中两个整数范围内的所有素数,例如:(12, 15) ->13
- 2的29次方范围内的素数
- 求指定范围内的所有素数
- 求一定范围内的素数个数
- 求一定范围内素数的个数
- mybatis + spring 的基本配置步骤
- (笔记)位运算
- 《Spring in Action》第四版第一章《将 Spring 付诸实践》读书笔记(一)
- Python+PyQt,GUI操作
- Android ButterKnife框架的使用
- Python打印某范围内的素数
- NOJ 1453 筛法
- 初识Hadoop之HDFS
- 由Docker开始畅想
- easyui-form表单提交combobox
- 7F算工资
- 知乎-如何进入BAT2
- light oj1085All Possible Increasing Subsequences(树状数组+离散化+递推)
- void*的详解