编写函数,判断一个正整数是否为素数
时间: 2024-05-07 09:01:42 浏览: 15
以下是 Python 语言的代码实现:
```python
def is_prime(n):
if n <= 1: # 排除小于等于1的情况
return False
for i in range(2, int(n**0.5)+1):
if n % i == 0: # 如果 n 能被 i 整除,则 n 不是素数
return False
return True # 如果 n 不能被 2~sqrt(n) 之间的任何一个数整除,则 n 是素数
```
该函数接收一个正整数 `n`,如果 `n` 是素数,则返回 `True`,否则返回 `False`。其中,判断一个数是否为素数,只需要从 2 开始,一直枚举到 sqrt(n) 即可。如果 n 能被 2~sqrt(n) 之间的任何一个数整除,则 n 不是素数;否则,n 是素数。
相关问题
编写函数判断一个正整数是否为素数 并调用该函数输出100以内的素数
好的,我可以帮你编写这段程序。以下是实现代码:
```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
# 输出100以内的素数
for i in range(2, 101):
if is_prime(i):
print(i, end=' ')
```
程序中,我们定义了一个`is_prime()`函数,判断一个正整数是否为素数。接着,我们使用一个循环,输出100以内的素数。程序运行结果如下:
```
2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97
```
其中,这些数字都是100以内的素数。
编写一个函数判断一个正整数是否为素数
以下是Python语言的实现:
```python
def is_prime(n):
"""
判断一个正整数是否为素数
"""
if n <= 1:
return False
# 从2到n-1遍历,判断能否整除n
for i in range(2, n):
if n % i == 0:
return False
return True
```
解释一下实现思路:
- 如果n小于等于1,则不是素数,返回False。
- 从2到n-1遍历(不包括n),如果n能被任意一个数整除,则不是素数,返回False。
- 如果n不能被任何一个数整除,则是素数,返回True。
测试一下:
```python
print(is_prime(2)) # True
print(is_prime(3)) # True
print(is_prime(4)) # False
print(is_prime(13)) # True
print(is_prime(15)) # False
```