Odpowiedź:
void pierwsze_poz(int n, int poz1, int poz2)
{
vector<bool>V(n+1,1);
V[0] = V[1] = 0;
int i,j;
float p = sqrt(n);
for(i = 2;i <= p;i++)
if(V[i])
for(j = i * i;j <=n;j+=i)
V[j] = 0;
if(V[poz1] + V[poz2] > 0)
{
if(V[poz1])
cout<<"Pozycja "<<poz1<<" zawiera liczbę pierwsza: "<<poz1<<endl;
else
cout<<"Pozycja "<<poz1<<" nie zawiera liczby pierwszej"<<endl;
if(V[poz2])
cout<<"Pozycja "<<poz2<<" zawiera liczbe pierwsza: "<<poz2<<endl;
else
cout<<"Pozycja "<<poz2<<" nie zawiera liczby pierwszej"<<endl;
}
else
cout<<"brak liczb pierwszych";
}
Wyjaśnienie: