实现isPrime()函数,参数为整数,要有异常处理。如果整数是质数,返回True,否则返回
时间: 2024-11-25 11:12:59 浏览: 12
实现一个名为`isPrime`的函数,它接受一个整数作为参数,并包含异常处理部分。这个函数用于检查输入的整数是否为质数。质数是指大于1的自然数,除了1和本身以外,没有其他正因数。以下是该函数的一个Python示例:
```python
def isPrime(num):
try:
# 验证输入是否为整数
if not isinstance(num, int) or num <= 1:
raise ValueError("输入必须是一个大于1的整数")
# 质数检查
for i in range(2, int(num**0.5) + 1): # 只需检查到平方根即可
if num % i == 0:
return False
# 如果没有找到因子,说明是质数
return True
except ValueError as ve:
print(f"错误: {ve}")
return None
except Exception as e:
print(f"未知错误: {e}")
return None
# 示例使用
try:
print(isPrime(7)) # 输出: True
print(isPrime(4)) # 输出: False (异常处理)
except ValueError as ve:
print(ve)
```
在这个函数中,我们首先检查输入是否为整数并大于1。然后通过循环遍历从2到其平方根之间的数字,看是否存在除1以外能整除它的数。如果没有,那么这个数就是质数。如果有,则不是。同时,我们也添加了异常处理,捕获可能出现的`ValueError`和其他未知异常,并适当地给出错误信息。
阅读全文