is_prime(n)-判断给定数字是否是一个质数
is_prime(n)函数是用来判断给定数字n是否是一个质数的函数。在数学中,质数也被称为素数,是指除了1和自身外没有其他除数的正整数。所以判断一个数字是否是质数,就是要判断它是否只能被1和自身整除。
该函数的实现思路有多种,以下是一种常用的算法:
1. 若n小于等于1,则直接返回False,因为1和负数都不是质数。
2. 若n等于2或3,则直接返回True,因为2和3都是质数。
3. 若n能被2整除,则返回False,因为质数不能被偶数整除,除了2本身。
4. 计算从3到n的平方根之间的所有奇数i,判断n是否能被i整除。若能整除,则返回False,因为n是合数。
5. 若在上述步骤中没有找到能整除n的数,则返回True,说明n是质数。
下面是该函数的Python代码实现:
import math
def is_prime(n):
if n <= 1:
return False
if n == 2 or n == 3:
return True
if n % 2 == 0:
return False
for i in range(3, int(math.sqrt(n)) + 1, 2):
if n % i == 0:
return False
return True
这个函数通过循环来逐个判断从3到n的平方根之间的奇数是否能整除n,如果找到了能整除n的数,则返回False,说明n是合数;否则,返回True,说明n是质数。
这样,我们就可以使用is_prime(n)函数来判断一个给定的数字n是否是一个质数。例如,is_prime(5)的返回值是True,is_prime(10)的返回值是False。
