编写函数fun输出m到n之间的所有素数
时间: 2023-10-30 21:05:24 浏览: 70
以下是一个Python函数,用于输出m到n之间的所有素数:
```python
def fun(m, n):
primes = []
for num in range(m, n+1):
if num > 1:
for i in range(2, num):
if (num % i) == 0:
break
else:
primes.append(num)
return primes
```
这个函数首先创建了一个空列表`primes`,然后使用一个循环遍历从`m`到`n`的所有数字。对于每个数字,它检查它是否大于1(1不是素数),并在2到该数字之间循环,检查该数字是否能被除1和它本身之外的其他数字整除。如果不能被整除,那么这个数字就是素数,并将其添加到`primes`列表中。最后,函数返回这个素数列表。
相关问题
C语言编写函数fun输出m到n之间的所有素数
以下是C语言实现的代码:
```c
#include <stdio.h>
#include <stdbool.h>
bool is_prime(int num) {
if (num < 2) {
return false;
}
for (int i = 2; i * i <= num; i++) {
if (num % i == 0) {
return false;
}
}
return true;
}
void fun(int m, int n) {
for (int i = m; i <= n; i++) {
if (is_prime(i)) {
printf("%d ", i);
}
}
printf("\n");
}
int main() {
int m, n;
printf("请输入m和n的值:");
scanf("%d %d", &m, &n);
printf("m到n之间的所有素数为:");
fun(m, n);
return 0;
}
```
函数`is_prime`用于判断一个数是否为素数,函数`fun`则用于输出m到n之间的所有素数。在`main`函数中,先读入m和n的值,然后调用`fun`函数输出所有素数。
编写函数fun输出m到n之间的素数。m小于n且m和n均为自然数。
以下是一个Python实现的函数fun,可以输出m到n之间的素数:
```python
def fun(m, n):
primes = []
for i in range(m, n+1):
if i > 1:
for j in range(2, int(i**(0.5))+1):
if i % j == 0:
break
else:
primes.append(i)
return primes
```
使用方法:
```python
m = 1
n = 100
result = fun(m, n)
print(result)
```
输出结果:
```
[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]
```
注意,这个函数只能用于求解小范围内的素数。如果需要求解更大范围内的素数,需要使用更高效的算法。