python判断是否为素数方法(用python代码实现判断素数)
前言
今天一个当老师的同学问我判断一个数是不是素数?用代码怎么实现?突然懵了,素数是什么?
质数
质数(prime number)又称素数,有无限个。质数定义为在大于1的自然数中,除了1和它本身以外不再有其他因数。那要怎么判断呢?是不是一个个除判断是否有余数?是不是还有更简单的方法?
假设n不是素数,那应该有n=a*b(a、b、n都是正整数,且n>a>1和n>b>1),那么根号n和a、b有什么关系呢?
由不是素数的等式n=a*b,可以出现两种情况:
1、如果a=b=根号n,那么我只要判断n除以根号n,余数为0,就可以认为它不是素数。
2、如果a>根号n且b>根号n,那么a*b > 根号n × 根号n =n,这种情况是一定不存在的,因为我们的前提是n不是素数n=a*b。
因此可以判断a和b中,至少要有一个小于根号n。
总结
因此判断一个正整数n是不是素数,只要n跟2到根号n取余,如果出现0,说明可以除尽,存在因数,就可以证明它不是素数。
代码实现
除注明外的文章,均为来源:老汤博客,转载请保留本文地址!
原文地址:https://tangjiusheng.cn/it/1168.html
原文地址:https://tangjiusheng.cn/it/1168.html
大家都在看
- randint函数python的用法(随机模块22个函数详解)
- def在python中的意思(def在python中的用法)
- 学会python能干嘛可以从事什么工作(python编程是干什么的)
- 在Python中//是什么意思(一文搞懂Python中的运算符)
- python中index是什么意思(index方法详解)
- 怎样用python编程画爱心(用python画爱心的代码)
- python数据类型有哪些(数据类型分别有哪些用途)
- str()在python中是什么意思(字符串str详解)
- python数据类型有哪些(python六种数据结构介绍)
- python输出语句print用法(基本输入输出语句print简介)