📌  相关文章
📜  C++程序使用函数显示两个时间间隔之间的质数

📅  最后修改于: 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() 函数 。此函数检查数字是否为质数。

n1n2之间的所有整数都传递给此函数。

如果传递给一些checkPrimeNumber()是一个素数,该函数返回true,如果不是函数返回false。

如果用户首先输入较大的数字,则此程序将交换数字。没有交换,该程序将无法工作。