| |

Să se afişeze primele n numere prime, n introducându-se de la tastatură 2

#include <iostream>

using namespace std;

int main()

{

    int n, numar = 2, contor = 0;

    cout << „Introduceti numarul de numere prime dorite: „;

    cin >> n;

    cout << „Primele ” << n << ” numere prime sunt: „;

    while (contor < n)

    {

        bool este_prim = true;

        for (int i = 2; i * i <= numar; i++)

        {

            if (numar % i == 0)

            {

                este_prim = false;

                break;

            }

        }

        if (este_prim)

        {

            cout << numar << ” „;

            contor++;

        }

        numar++;

    }

    cout << endl;

    return 0;

}

Programul foloseste doua variabile, numar si contor, pentru a parcurge numerele naturale si pentru a contoriza cate numere prime s-au gasit pana la momentul respectiv. Se citeste de la tastatura numarul de numere prime dorite, si apoi se parcurge secventa de numere naturale, testandu-se pentru fiecare daca este prim sau nu.

Pentru a determina daca un numar este prim, se parcurge intervalul [2, sqrt(numar)] si se verifica daca numarul este divizibil cu vreun numar din acest interval. Daca se gaseste un astfel de numar, se seteaza variabila este_prim pe false si se iese din bucla, deoarece nu mai este necesar sa se continue verificarea.

Daca este_prim este true, numarul este afisat, se incrementeaza variabila contor si se trece la urmatorul numar. Bucla se executa pana cand s-au gasit primele n numere prime.

Similar Posts

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *