用函数判断一个数是否为质数
时间: 2023-09-10 19:15:08 浏览: 90
好的,下面是 Python 代码实现:
```python
def is_prime(num):
# 判断小于 2 的数和等于 2 的数都是质数
if num < 2:
return False
elif num == 2:
return True
# 判断大于 2 的数是否为质数
for i in range(2, int(num**0.5) + 1):
if num % i == 0:
return False
return True
```
函数接受一个数字作为参数,若该数字为质数,则返回 True,否则返回 False。判断质数的方法是:若一个数大于 2,那么它必定是由 1 和它自身两个因数相乘得到的,因此我们只需要判断从 2 到 $\sqrt{n}$ 是否有整除因子即可。
相关问题
输出200-300之间的素数,且用函数判断一个数是否为素数
可以使用如下的 Python 代码来输出200-300之间的素数并使用函数判断一个数是否为素数:
```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
primes = []
for num in range(200, 301):
if is_prime(num):
primes.append(num)
print(primes)
```
运行结果为:
```
[211, 223, 227, 229, 233, 239, 241, 251, 257, 263, 269, 271, 277, 281, 283, 293]
```
C语言,输出200-300之间所有的素数,用函数判断一个数是否为素数
在C语言中,我们可以创建两个函数:一个用于判断一个数是否为素数(prime checker function),另一个用于输出200到300之间的所有素数。以下是实现的示例:
```c
#include <stdio.h>
// 判断一个数是否为素数的函数
int isPrime(int num) {
if (num <= 1) {
return 0; // 小于或等于1的数不是素数
}
for (int i = 2; i * i <= num; i++) {
if (num % i == 0) {
return 0; // 能被整除,不是素数
}
}
return 1; // 无因子,是素数
}
// 输出200-300之间的素数
void printPrimesInRange(int start, int end) {
for (int i = start; i <= end; i++) {
if (isPrime(i)) {
printf("%d ", i); // 打印素数
}
}
printf("\n");
}
int main() {
printPrimesInRange(200, 300);
return 0;
}
```
在这个程序里,`isPrime`函数会检查输入的数字是否只有两个正因数(1和它本身)。如果是,那么这个数就是素数,函数返回1;反之,返回0。`printPrimesInRange`函数则遍历指定范围内的每一个数,调用`isPrime`函数并打印出素数。
阅读全文