363
Cerința
Se dă un vector cu n
elemente, numere naturale. Afișați în ordine crescătoare valorile prime din acest vector.
Date de intrare
Programul citește de la tastatură numărul n
, iar apoi n
numere naturale, reprezentând elementele vectorului.
Date de ieșire
Programul va afișa pe ecran valorile prime din vector, în ordine crescătoare, separate prin exact un spațiu.
Restricții și precizări
1 ≤ n ≤ 1000
- cele
n
numere citite vor fi mai mici decât1.000.000.000
Exemplu
Intrare
7 13 1 10 15 3 7 11
Ieșire
3 7 11 13
#include <bits/stdc++.h> using namespace std; int main() { int n; cin >> n; int a[1001]; for(int i = 1; i <= n; ++i) cin >> a[i]; for(int i = 1; i < n; ++i) for(int j = i + 1; j <= n; ++j) if(a[i] > a[j]) swap(a[i], a[j]); for(int i = 1; i <= n; ++i){ int cnt = 1, d = 2; int ca = a[i]; while(ca > 1){ int p = 0; while(ca % d == 0) ca /= d, p++; cnt *= (p + 1); d++; if(d * d > ca) d = ca; } if(cnt == 2) cout << a[i] << ' '; } return 0; }
Comentarii