aşağıdaki şekilde a=1 yazılmış fakat ilk seferin a bir arttırılmış ve 2 olmuş. O yüzden döngü aslında 1 den değil 2 den başlamış. ama a++ döngünün içine aldığınızda hangi sayıyı girerseniz girin, 1 e tam bölünür.
for (a = 1; a < num - 1;)
{
a++;
if (num % a == 0) {
flag = 1;
break;
}
}
aşağıdaki şekilde olması gerekiyor.
for (a = 2; a < num - 1; a++)
{
if (num % a == 0) {
flag = 1;
break;
}
}