👤
Catagog25
a fost răspuns

CerinţaSe dă un şir cu n elemente, numere naturale. Să se verifice dacă în şir există elemente prime.
Date de intrare
Programul citește de la tastatură numărul n, iar apoi cele n elemente ale şirului.
Date de ieşire
Programul afișează pe ecran mesajul DA, dacă şirul conţine elemente prime, respectiv NU în caz contrar.
Restricţii şi precizări
1 ≤ n ≤ 200
elementele şirului vor fi mai mici decât 1.000.0000.000
Exemplu
Date de intrare
5
21 8 6 10 8
Date de ieșire
NU


Răspuns :

Razzvy
#include <iostream>
#include <cmath>
using namespace std;
int main(){   
int n, v[200], i;   
cin>>n;   
for(int i = 0; i < n; ++i)       
     cin>>v[i];
     for(i = 0; i < n; ++i){           
          int x = v[i];           
          bool prim = true;
          if(x % 2 == 0 && x != 2 || x < 2) prim = false;           
          else {                   
               int sq = sqrt(x);                   
               for(int j = 3; j <= sq; ++j)                       
                    if(x % j == 0) prim = false;               
          }           
          if(prim) break;       
}   
if(i == n) cout<<"NU";     //Daca a ajuns la n, inseamna ca nu a gasit nici un numar prim    else cout<<"DA";
}