Răspuns:
Varianta 1: cu functii:
#include <iostream>
using namespace std;
int n,v[100001];
int nrPrime(int n){
if(n==0||n==1)return false;
else if(n!=2 && n%2==0)return false;
for(int d=3;d*d<=n;d+=2)if(n%d==0)return false;
return true;
}
int main(){
cin>>n;
for(int i=1;i<=n;i++)cin>>v[i];
for(int i=1;i<=n;i++)if(nrPrime(v[i])==true)cout<<v[i];
}
Varianta 2: fara functie
#include <iostream>
using namespace std;
int n,v[100001],z=0;
int main(){
cin>>n;
for(int i=1;i<=n;i++)cin>>v[i];
for(int i=1;i<=n;i++){
z=0;
for(int d=2;d<=n/2;d++)if(v[i]%d==0)z++;
if(z==0)cout<<v[i];
}
}
Explicație: