👤

Cerinţa
Se dă un număr natural n. Afișați primele n perechi de numere naturale impare consecutive prime.

Date de intrare
Programul citește de la tastatură numărul n.

Date de ieşire
Programul afișează pe ecran n primele perechi de numere naturale impare consecutive prime, câte o pereche pe linie, numerele dintr-o pereche fiind separate printr-un spațiu.

Restricţii şi precizări
1 ≤ n ≤ 100
pentru fiecare pereche p q afișată, p < q

Exemplu
Intrare

5
Ieșire

3 5
5 7
11 13
17 19
29 31

C++
fara vectori va rog


Răspuns :

#include <iostream>
#include <cmath>
using namespace std;

int main()
{
    int n, x, y;

    cin>>n;

    cout<<3<<' '<<5<<'\n';
    n--;
    x = 5;
    y = x;
    while(n)
        {
            int sq = sqrt(x);
            bool prim = true;
            for(int d = 3; d <= sq; d += 2)
                if(x % d == 0)
                    {
                        prim = false;
                        break;
                    }
            if(prim)
                {
                    if(y == x - 2)
                        {
                            cout<<y<<' '<<x<<'\n';
                            y = x;
                            x += 2;
                            n--;
                        }
                    else
                        y = x;
                }
            x += 2;
        }
}

Vezi imaginea RAZZVY