输入一个正整数,判断并输出其是否为素数
时间: 2024-05-01 22:23:39 浏览: 9
好的,以下是 Python 代码实现:
```python
num = int(input("请输入一个正整数: "))
# 素数大于 1
if num > 1:
# 查找因子
for i in range(2, int(num/2)+1):
if (num % i) == 0:
print(num, "不是素数")
break
else:
print(num, "是素数")
# 如果输入的数字小于或等于 1,不是素数
else:
print(num, "不是素数")
```
代码逻辑是先判断输入的数是否大于 1,如果是则查找这个数是否有除了 1 和本身以外的因子,如果有则不是素数,否则是素数。如果输入的数小于等于 1 则不是素数。
相关问题
用c语言输入一个正整数,判断并输出其是否为素数。
以下是一个判断正整数是否为素数的C语言程序:
```c
#include <stdio.h>
int main() {
int n, i, is_prime = 1;
printf("请输入一个正整数:");
scanf("%d", &n);
if (n <= 1) {
is_prime = 0;
} else {
for (i = 2; i * i <= n; i++) {
if (n % i == 0) {
is_prime = 0;
break;
}
}
}
if (is_prime) {
printf("%d是素数\n", n);
} else {
printf("%d不是素数\n", n);
}
return 0;
}
```
程序首先读取用户输入的正整数n,然后判断它是否小于等于1,如果是,则直接判断为非素数。如果n大于1,则从2开始循环到n的平方根,如果在这个范围内找到了n的因子,则n不是素数,否则n是素数。
输入一个正整数,判断其是否为素数。C语言
可以使用以下代码判断一个正整数是否为素数:
```c
#include <stdio.h>
#include <stdbool.h>
bool is_prime(int num) {
if (num <= 1) {
return false;
}
for (int i = 2; i <= num / 2; i++) {
if (num % i == 0) {
return false;
}
}
return true;
}
int main() {
int num;
printf("请输入一个正整数:");
scanf("%d", &num);
if (is_prime(num)) {
printf("%d 是素数\n", num);
} else {
printf("%d 不是素数\n", num);
}
return 0;
}
```
其中,is_prime函数用于判断一个正整数是否为素数,如果是返回true,否则返回false。在main函数中,我们通过scanf函数获取用户输入的正整数,然后调用is_prime函数判断是否为素数,最后输出结果。