mam jeszcze takie pytanie do innego programu :(
Napisz program pobierający od użytkownika 10 liczb całkowitych, po dwie na raz. Wartości te zapisuj do kolejnych elementów tablicy. Po pobraniu tych liczb wyświetl je na ekranie, każdą w osobnym wierszu razem z informacją o jej pierwszości w formie opisu prime, composite lub other (gdy liczba nie jest ani pierwsza, ani złożona). Każdy opis musi być poprzedzony odpowiadającą mu wartością liczbową w danym wierszu. Wszystkie wiersze zakończ znakiem nowej linii.W przypadku podania przez użytkownika błędnych danych program powinien wyświetlić komunikat: Input data type error i zakończyć działanie z kodem błędu 1.
Otóż, ogólnie program czasem działa a czasem nie- np. raz pokazuje że 5 jest złożona a raz że pierwsza
Byłbym bardzo wdzięczny gdybyście zobaczyli gdzie mam ten mały błąd
#include <stdio.h>
int main(void)
{
int tab[10];
int war;
int i=0;
printf("podaj liczby: ");
for(int i=0;i<10;i+=2)
{
int war1,war2;
if(scanf("%d %d",&war1,&war2)!=2)
{
printf("Input data type error\n");return 1;
}
else
{
tab[i]=war1;
tab[i+1]=war2;
}
}
for(i=0;i<10;i++)
{
if(tab[i]>1)
{
for(int k=2;k<tab[i];k++)
{
if(tab[i]%k==0)
{
war++;
}
}
if(war>0)
{
printf("%d composite\n",tab[i]);
}
else
printf("%d prime\n",tab[i]);
}
else
{
printf("%d other\n",tab[i]);
}
}
}