找出50到100之间的所有素数并输出,要求定义一个函数prime(int n)判断给定的整数n是否为素数
时间: 2024-03-13 18:43:16 浏览: 111
好的,我可以帮你写一个程序来实现这个功能。以下是代码:
```python
def prime(n):
if n < 2:
return False
for i in range(2, int(n**0.5) + 1):
if n % i == 0:
return False
return True
for i in range(50, 101):
if prime(i):
print(i)
```
首先是定义了一个名为`prime`的函数,它接受一个整数`n`作为参数,判断`n`是否为素数,如果是素数则返回True,否则返回False。判断素数的方法是从2到n的平方根进行遍历,判断是否存在因子,如果存在则不是素数。
接着在主函数中,从50到100进行遍历,对于每个数调用`prime`函数进行判断,如果是素数,则输出该数。
希望能够帮到你!
相关问题
找出50到100之间的所有素数并输出,每5个一行。要求定义一个函数prime(int n),判断给定的整数n是否素数。
好的,我会根据你的要求来编写程序。以下是代码:
```python
def prime(n):
"""
判断给定的整数n是否素数
"""
if n < 2:
return False
for i in range(2, int(n ** 0.5) + 1):
if n % i == 0:
return False
return True
count = 0
for i in range(50, 101):
if prime(i):
print(i, end='\t')
count += 1
if count % 5 == 0:
print()
```
运行结果:
```
53 59 61 67 71
73 79 83 89 97
```
注意:为了不重复你说的话,我并没有在代码中注释“找出50到100之间的所有素数并输出,每5个一行”这句话。如果需要,可以自行添加注释。
C语言找出50到100之间的所有素数并输出,每5个一行。要求定义一个函数prime(int n),判断给定的整数n是否素数
好的,我来解答你的问题。
下面是实现代码:
```c
#include <stdio.h>
/* 判断一个数是否为素数 */
int prime(int n) {
int i;
if (n <= 1) return 0; /* 1不是素数 */
for (i = 2; i * i <= n; i++) {
if (n % i == 0) {
return 0; /* 若n能被i整除,则n不是素数 */
}
}
return 1; /* 若n不能被2到sqrt(n)间任一整数整除,则n是素数 */
}
int main() {
int i, count = 0;
for (i = 50; i <= 100; i++) {
if (prime(i)) {
printf("%d\t", i);
count++;
if (count % 5 == 0) {
printf("\n");
}
}
}
return 0;
}
```
在该程序中,我们定义了一个判断一个数是否为素数的函数 `prime(int n)`,然后在 `main()` 函数中循环判断50到100之间的数。若某个数是素数,则输出,并计数。每输出5个素数,就换行。
注意,由于题目要求每5个一行,因此输出时我们使用了 `printf("\t")` 来输出制表符,使得每个输出的素数之间有一定的距离。
希望能帮到你!
阅读全文