编写一个素数判断函数,函数参数为要判断的数,若该数是素数函数返回值为1,否则返回值为0。利用它求2-100间的所有素数。
时间: 2024-05-03 17:17:54 浏览: 138
以下是素数判断函数的代码:
```python
def is_prime(n):
if n <= 1:
return 0
for i in range(2, int(n ** 0.5) + 1):
if n % i == 0:
return 0
return 1
```
这个函数的思路是:先判断输入的数是否小于等于1(因为1不是素数),如果是则直接返回0;否则从2到该数的平方根进行循环,如果该数能够被其中的任意一个数整除,则返回0,否则返回1。
利用以上函数,可以求出2-100间的所有素数:
```python
for i in range(2, 101):
if is_prime(i):
print(i)
```
以上代码会输出2-100之间的所有素数。
相关问题
5、编写一个素数判断函数,函数参数为要判断的数,若该数是素数函数返回值为1,否则返回值为0。利用它求2-100间的所有素数。
下面是一个可以实现素数判断的函数:
```python
def is_prime(num):
"""
判断一个数是否是素数
"""
if num < 2:
return False
for i in range(2, int(num ** 0.5) + 1):
if num % i == 0:
return False
return True
```
然后可以利用这个函数,求出2-100间的所有素数:
```python
for i in range(2, 101):
if is_prime(i):
print(i)
```
输出结果为:
```
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
```
编写一个判断m是否为素数的函数,如m是素数,函数返回值是1,否则函数返回值为0,函数形式为:
为了编写一个判断整数m是否为素数的函数,我们可以使用经典的算法,即检查m是否有除了1和其本身以外的正因子。如果找到这样的因子,则m不是素数,否则它是素数。以下是用C语言实现的一个函数:
```c
#include <stdbool.h>
// 定义函数is_prime
bool is_prime(int m) {
if (m <= 1) { // 如果m小于等于1,不是素数
return false;
}
for (int i = 2; i * i <= m; i++) { // 只需检查到i*i不大于m即可
if (m % i == 0) { // 如果m能被i整除,说明不是素数
return false;
}
}
return true; // 没有找到因子,所以m是素数
}
```
这个`is_prime`函数会接收一个整数m作为参数,返回布尔值,如果m是素数则返回`true`,否则返回`false`。
你可以像下面这样在主函数中调用这个函数:
```c
int main() {
int m;
printf("请输入一个整数:");
scanf("%d", &m);
bool result = is_prime(m);
if (result) {
printf("%d是素数。\n", m);
} else {
printf("%d不是素数。\n", m);
}
return 0;
}
```
阅读全文