📅  最后修改于: 2020-09-25 06:26:01             🧑  作者: Mango
#include
using namespace std;
int checkPrimeNumber(int);
int main() {
int n1, n2;
bool flag;
cout << "Enter two positive integers: ";
cin >> n1 >> n2;
// swapping n1 and n2 if n1 is greater than n2
if (n1 > n2) {
n2 = n1 + n2;
n1 = n2 - n1;
n2 = n2 - n1;
}
cout << "Prime numbers between " << n1 << " and " << n2 << " are: ";
for(int i = n1+1; i < n2; ++i) {
// If i is a prime number, flag will be equal to 1
flag = checkPrimeNumber(i);
if(flag)
cout << i << " ";
}
return 0;
}
// user-defined function to check prime number
int checkPrimeNumber(int n) {
bool isPrime = true;
// 0 and 1 are not prime numbers
if (n == 0 || n == 1) {
isPrime = false;
}
else {
for(int j = 2; j <= n/2; ++j) {
if (n%j == 0) {
isPrime = false;
break;
}
}
}
return isPrime;
}
输出
Enter two positive integers: 12
55
Prime numbers between 12 and 55 are: 13 17 19 23 29 31 37 41 43 47 53
要打印两个整数之间的所有素数,将创建checkPrimeNumber()
函数 。此函数检查数字是否为质数。
n1
和n2
之间的所有整数都传递给此函数。
如果传递给一些checkPrimeNumber()
是一个素数,该函数返回true,如果不是函数返回false。
如果用户首先输入较大的数字,则此程序将交换数字。没有交换,该程序将无法工作。