def is_prime(n): """判断素数的函数,接收一个正整数为参数,参数是素数时返回True,否则返回False"""
时间: 2023-07-05 13:24:44 浏览: 53
这是一个判断素数的函数,代码如下:
```python
from math import sqrt
def is_prime(n):
"""
判断素数的函数,接收一个正整数为参数
参数:
n:正整数
返回值:
如果 n 是素数,返回 True,否则返回 False
"""
if n < 2:
return False
for i in range(2, int(sqrt(n))+1):
if n % i == 0:
return False
return True
```
该函数使用了 `math` 模块中的 `sqrt` 函数来计算一个数的平方根,从而提高了效率。函数接收一个正整数 `n` 作为参数,如果 `n` 是素数,则返回 `True`,否则返回 `False`。函数的实现逻辑是,如果 `n` 小于 2,直接返回 `False`;否则,从 2 到 `n` 的平方根遍历每个数,如果 `n` 能被当前遍历到的数整除,说明 `n` 不是素数,返回 `False`;如果遍历结束后仍未找到 `n` 的因子,说明 `n` 是素数,返回 `True`。
相关问题
def is_prime(n): """判断素数的函数,接收一个正整数为参数,参数是素数时返回True,否则返回False""" 根据要求给出代码,需要有输入
下面是根据要求编写的判断素数的函数代码,同时添加了输入、输出:
```python
from math import sqrt
def is_prime(n):
"""
判断素数的函数,接收一个正整数为参数
参数:
n:正整数
返回值:
如果 n 是素数,返回 True,否则返回 False
"""
if n < 2:
return False
for i in range(2, int(sqrt(n))+1):
if n % i == 0:
return False
return True
# 测试代码
while True:
n = input("请输入一个正整数:")
if not n.isdigit():
print("输入不合法,请重新输入!")
continue
n = int(n)
if is_prime(n):
print("{}是素数".format(n))
else:
print("{}不是素数".format(n))
```
在这个版本的代码中,使用 `input` 函数获取用户输入的正整数,并使用 `isdigit` 方法判断输入是否合法。如果输入不合法,会提示用户重新输入。如果输入合法,会将字符串转换为整数,并调用 `is_prime` 函数判断该数是否为素数,最后输出判断结果。
Python 判断素数的函数,接收一个正整数为参数,参数是素数时返回True,否则返回False
可以使用以下代码实现:
```python
def is_prime(n):
"""
判断一个数是否为素数
"""
if n <= 1:
return False
for i in range(2, int(n**0.5)+1):
if n % i == 0:
return False
return True
```
代码中首先判断输入的数是否小于等于1,因为小于等于1的数都不是素数。然后从2开始遍历到n的平方根,如果n能够被任何一个数整除,说明n不是素数,返回False。如果遍历完所有可能的因数都没有找到能整除n的因数,那么n就是素数,返回True。