Cześć, mam problem z zadaniem na spoju dot. liczb pierwszych. Mimo, że w konsoli na pierwszy rzut oka wszystko działa, to SPOJ wywala błąd, może ktoś zerknąć i podpowiedzieć co zrobiłem źle?
#include <iostream>
using namespace std;
int main()
{
int ile;
cin>>ile;
int * liczba = new int[ile];
for(int i=0; i<ile; i++){
cin>> liczba[i];
}
for(int i=0; i<ile; i++){
if(( ( (liczba[i] == 1) || liczba[i] %2 == 0) && (liczba[i] != 2) ) || ((liczba[i] != 3) && (liczba[i] %3 == 0)) || (liczba[i] %4 == 0) || ((liczba[i] != 5) && (liczba[i] %5 == 0)) || (liczba[i] %10 == 0) || ((liczba[i] != 7) && (liczba[i] %7 == 0)) ){
cout<<"Nie "<<endl;
}
else{
cout<<"Tak "<<endl;
}
}
return 0;
}