python语言中关于素数的问题
来源:互联网 发布:软件开发与软件研发 编辑:程序博客网 时间:2024/06/05 00:52
质数(prime number)又称素数,有无限个。质数定义为在大于1的自然数中,除了1和它本身以外不再有其他因数的数称为质数
基本判断思路:
在一般领域,对正整数n,如果用2到 之间的所有整数去除,均无法整除,则n为质数。
质数大于等于2 不能被它本身和1以外的数整除
方法1
#求100一下的素数import datetimestart=datetime.datetime.now()#记录开始时间sum=0for i in range(2,101): for j in range(2,i): if i%j==0: sum+=1 if (sum==0): print(i) sum=0end=datetime.datetime.now()#结束时间print(end-start)#方法2import datetimestart = datetime.datetime.now()#记录开始时间 # do somethingsum=0for i in range(2,101): for j in range(2,i): if i%j==0: sum=1 break #采用了break的作用使得代码时间短 if (sum==0): print(i,end=' ') sum=0end = datetime.datetime.now()#记录结束时间print (end-start)#方法三#利用函数from math import sqrtdef is_prime(n): if n == 1: return False for i in range(2, int(sqrt(n))+1): if n % i == 0: return False return True
有关问题:#2百万一下的素数之和from math import sqrtdef is_prime(n): if n == 1: return False for i in range(2, int(sqrt(n))+1): if n % i == 0: return False return Truesum1=0for i in range(1,2000001): if(is_prime(i)): sum1+=iprint(sum1)
关于求一个正整数的质因数:
#求一个整数的质因数def factor(n): m=n a=[] i=1#从1开始 while(i<m+1): if(m%i==0): m//=i a.append(i)#加入列表里 i=2#从2循环开始 else: i+=1 return aprint(factor(600851475143))'''#方法二,递归方法def factor(n): m=n global a for i in range(2,m+1): if(m%i==0): a.append(i) return factor(m//i)a=[]factor(5)print(a)
在学习中最大的收获,不仅仅是学到了编程的思想,还是有数学的知识。
0 0
- python语言中关于素数的问题
- 关于素数的问题
- 关于素数的问题
- 一道关于素数的问题
- python语言中f.seek()的问题
- C语言中关于IF的问题..
- python中关于字符串修改的问题
- 关于Python中输入的问题
- [i] 关于求素数的问题
- java 中关于求素数的方法
- 关于素数问题总结
- Python中关于字符串问题
- 关于linux中c语言的编译问题的总结
- Python语言中 import 与 reload 的使用问题
- 关于c语言中容易忽略的问题
- 关于C语言中printf函数的一个问题
- C语言:关于计算字符串中空格数的问题
- 关于C语言,字符数组中越界的两个问题
- 在kail下使用driftnet同时使用arpspoof伪装出现无法获取,被攻击主机图片
- As中如何为适配屏幕旋转
- Python(11):多线程(Multi-Thread)
- Linux Kernl添加spidev的设备节点
- django搭建个人博客01,mysql连接配置
- python语言中关于素数的问题
- 北大 AI 公开课第6讲:王俊——DNA是生命数字化的过程,AI改变生命科学
- 深入解析MySQL分区(Partition)功能
- plus-one
- Cocos2d-x v3.X的颜色混合BlendFunc使用详解
- Android getLocationInWindow()返回空值
- 编写 shell脚本
- 修改maven的镜像仓库,提高下载jar包的速度
- GDOI2017模拟Round4总结