ในบทช่วยสอนนี้ เราจะพูดถึงโปรแกรมเพื่อค้นหาจำนวนเฉพาะที่แตกต่างกันสองตัวกับผลิตภัณฑ์ที่กำหนด
สำหรับสิ่งนี้เราจะได้รับค่าจำนวนเต็ม งานของเราคือการหาค่าจำนวนเต็มเฉพาะสองค่าโดยให้ผลคูณเท่ากับค่าที่กำหนด
ตัวอย่าง
#include <bits/stdc++.h>
using namespace std;
//generating prime numbers less than N.
void findingPrimeNumbers(int n, bool calcPrime[]) {
calcPrime[0] = calcPrime[1] = false;
for (int i = 2; i <= n; i++)
calcPrime[i] = true;
for (int p = 2; p * p <= n; p++) {
if (calcPrime[p] == true) {
for (int i = p * 2; i <= n; i += p)
calcPrime[i] = false;
}
}
}
//printing the valid prime pair
void calcPairPrime(int n) {
int flag = 0;
bool calcPrime[n + 1];
findingPrimeNumbers(n, calcPrime);
for (int i = 2; i < n; i++) {
int x = n / i;
if (calcPrime[i] && calcPrime[x] and x != i and x * i == n) {
cout << i << " " << x;
flag = 1;
return;
}
}
if (!flag)
cout << "No prime pair exist";
}
int main() {
int n = 24;
calcPairPrime(n);
return 0;
} ผลลัพธ์
No prime pair exist