online: 4; azi: 579; total: 52585 Manual clasa a ix a - Algoritmi - Algoritmi de testare daca un numar natural este prim

Manual clasa a IX a

Algoritmi

Algoritmi de testare daca un numar natural este prim

Să se afişeze primele n numere prime, n introducându -se de la tastatură
# 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.