c++寻找1到100的素数输出
时间: 2024-02-09 12:13:37 浏览: 45
好的,以下是一个简单的 C++ 程序,可以实现您的要求:
```cpp
#include <iostream>
using namespace std;
// 判断一个数是否为素数
bool isPrime(int num) {
if (num < 2) {
return false;
}
for (int i = 2; i * i <= num; i++) {
if (num % i == 0) {
return false;
}
}
return true;
}
int main() {
cout << "1到100的素数有:";
for (int i = 2; i <= 100; i++) {
if (isPrime(i)) {
cout << i << " ";
}
}
cout << endl;
return 0;
}
```
这个程序会输出 1 到 100 中的所有素数。它的基本思路是,从 2 开始遍历每个数,判断其是否为素数,如果是,则输出。判断素数的方法是,从 2 开始到该数的平方根之间遍历每个数,看是否能整除,如果能整除,则不是素数。
相关问题
用c++寻找下一个素数
以下是用 C++ 编写的寻找下一个素数的简单程序:
```c++
#include <iostream>
using namespace std;
bool isPrime(int n) {
if (n <= 1)
return false;
for (int i = 2; i <= sqrt(n); i++) {
if (n % i == 0) {
return false;
}
}
return true;
}
int nextPrime(int n) {
int next = n + 1;
while (!isPrime(next)) {
next++;
}
return next;
}
int main() {
int n;
cout << "请输入一个正整数:";
cin >> n;
int next = nextPrime(n);
cout << "下一个素数是:" << next << endl;
return 0;
}
```
首先定义一个函数 `isPrime`,用于判断一个数是否为素数。如果该数小于等于 1,直接返回 `false`;否则,从 2 开始遍历到其平方根,如果存在一个因子能够整除该数,则返回 `false`,否则返回 `true`。
接着定义一个函数 `nextPrime`,用于找到大于给定数的下一个素数。首先将该数加一,然后不断判断是否为素数,直到找到为止。
最后,在 `main` 函数中输入一个正整数,调用 `nextPrime` 函数,输出下一个素数。
寻找100~200之间的素数C++
以下是寻找100~200之间的素数的C++代码:
```c++
#include <iostream>
using namespace std;
int main() {
int count = 0;
for (int i = 100; i <= 200; i++) {
bool isPrime = true;
for (int j = 2; j < i; j++) {
if (i % j == 0) {
isPrime = false;
break;
}
}
if (isPrime) {
cout << i << " ";
count++;
}
}
cout << endl << "共有" << count << "个素数" << endl;
return 0;
}
```
该程序使用两个for循环,外层循环从100到200遍历每个数字,内层循环从2到该数字-1,判断该数字是否能被其他数字整除,如果能,则该数字不是素数,否则该数字是素数。如果该数字是素数,则输出该数字,并将素数计数器加1。最后输出素数的个数。