Nie wiem co jest nie tak. Zrobiłem tak jak mówicie, pozamieniałem na scanf i printf, rzeczywiście program działa szybciej, ale dalej wyrzuca mi błędną odpowiedź. Wiem, że jest błędna bo u mnie na kompilatorze widzę, że jest źle ale za nic nie mogę tego naprawić.
Np. dla liczby 15 wyświetla mi :
TAK
NIE
Zamiast samego NIE.
Oto kod :
#include <cstdlib>
#include <math.h>
#include <stdio.h>
#pragma hdrstop
int main()
{
int lTestow ;
scanf("%u" , &lTestow) ;
while (lTestow)
{
int liczba ;
scanf("%u", &liczba) ;
if (liczba == 0 || liczba == 1) printf ("NIE\n" );
else if (liczba == 2) printf ("TAK\n") ;
else
{
for (int i = 2 ; i < sqrt(liczba) ; i++ )
if (liczba % i == 0 )
{
printf("NIE\n");
}
else
{
printf("TAK\n") ;
break ;
}
}
lTestow -- ;
}
system("pause");
return 0 ;
}