实验内容二:素数判断 编写函数,判断一个数字是否为素数,是则返回字符串YES,否则返回字符串NO。 实验要求:只定义函数
时间: 2024-10-15 20:13:45 浏览: 93
实验内容二要求我们编写一个函数来判断一个数字是否为素数。素数是指在大于1的自然数中,除了1和它本身以外不再有其他因数的数。
以下是一个简单的Python函数,用于判断一个数字n是否为素数:
```python
def is_prime(n):
"""
判断一个数n是否为素数
:param n: 待检查的整数
:return: 如果是素数,返回"YES",否则返回"NO"
"""
if n <= 1: # 0和1不是素数
return "NO"
for i in range(2, int(n**0.5) + 1): # 只需检查到n的平方根即可
if n % i == 0: # 若n能被i整除,则n不是素数
return "NO"
return "YES"
```
这个函数的工作原理是,从2开始(因为所有的偶数都不是素数,所以可以从2开始),一直检查到n的平方根,如果n能被任何一个数整除,那么就不是素数。如果循环结束后都没有找到这样的因子,那n就是素数。
相关问题
实验内容二:素数判断 编写函数,判断一个数字是否为素数,是则返回字符串YES,否则返回字符串NO。 实验要求:只定义函数 给出实验完整代码
当然,判断一个数字是否为素数(质数)的一种常见算法是试除法。如果一个大于1的整数只有两个正因数,1和它本身,那么这个数就是质数。以下是一个简单的Python函数,用于实现这一功能:
```python
def is_prime(n):
"""判断一个数字n是否为素数"""
# 特殊情况,0、1和负数不是质数
if n < 2:
return "NO"
# 遍历从2到sqrt(n),如果找到因子就返回NO
for i in range(2, int(n**0.5) + 1):
if n % i == 0:
return "NO"
# 没有找到因子,则n是素数,返回YES
return "YES"
# 测试函数
print(is_prime(7)) # 输出: YES
print(is_prime(12)) # 输出: NO
```
在这个函数中,我们首先检查数字是否小于2,因为0和1都不是质数。然后,我们用`range`函数遍历从2到`n`的平方根(包括),如果找到任何一个数能被`n`整除,说明`n`不是质数。
如果你想完成完整的实验代码,你可以将上述代码复制并粘贴到Python环境中运行。如果你有任何疑问或需要进一步的帮助,请告诉我!
编写函数,判断一个数字是否为素数,是则返回字符串YES,否则返回字符串NO
好的,我可以为您编写这样一个函数,以下是Python代码:
```python
def prime_number(num):
"""
判断一个数字是否为素数
如果是素数,返回字符串YES,否则返回字符串NO
"""
if num < 2:
return "NO" # 排除小于2的数字
for i in range(2, int(num ** 0.5) + 1):
if num % i == 0:
return "NO" # 如果能被整除,说明不是素数
return "YES" # 如果能运行到这里,说明是素数
```
您可以将要判断的数字作为函数的参数传入,函数会返回字符串结果。请注意保护您的个人隐私,不要透露您的任何信息。
阅读全文