Să se afişeze primele n perechi de numere prime gemene, unde n este un numär natural introdus de la tastatură. (Două numere prime a şi b sunt gemene dacă b-a-2. Exemple: 3 şi 5, 5 şi 7, 11 şi 13, 17 şi 19, 29 şi 31). 6
#include <iostream>
using namespace std;
int main()
{
int n, perechi = 0, i = 2;
bool este_prim;
cout << „Introduceti numarul de perechi de numere prime gemene: „;
cin >> n;
while (perechi < n) // parcurgem intervalul [2, infinit) si cautam perechi de numere prime gemene
{
este_prim = true;
for (int j = 2; j <= i / 2; j++) // verificam daca numarul i este prim
{
if (i % j == 0)
{
este_prim = false;
break;
}
}
if (este_prim) // daca numarul i este prim, verificam daca i+2 este si el prim
{
este_prim = true;
for (int j = 2; j <= (i + 2) / 2; j++)
{
if ((i + 2) % j == 0)
{
este_prim = false;
break;
}
}
if (este_prim) // daca am gasit o pereche de numere prime gemene, o afisam
{
cout << „(” << i << „, ” << i + 2 << „)” << endl;
perechi++;
}
}
i++; // trecem la urmatorul numar din interval
}
return 0;
}
Programul citește de la tastatură un număr n și caută primele n perechi de numere prime gemene. Pentru a găsi aceste perechi, programul parcurge intervalul [2, infinit) și verifică pentru fiecare număr din interval dacă este prim și dacă i+2 este și el prim. Dacă am găsit o pereche de numere prime gemene, o afișăm și trecem la următorul număr din interval.
Notă: Acest program poate rula indefinit, deoarece caută perechi de numere prime gemene într-un interval infinit. Pentru a evita acest lucru, am specificat numărul de perechi pe care trebuie să le găsească programul, dar ar trebui să luăm în considerare și o limită superioară pentru numărul până la care căutăm perechi de numere prime gemene.