Witam, mam takie zadanie ze spoja w C. W 10-elementowej tablicy ma symulować kolejkę. Jeśli zostanie dodana liczba wypisuje ":)", jeśli liczba zostaje wyjęta z kolejki wypisuje daną liczbę, w przypadku błędu wypisuje ":(" .
np.:
wejscie:
+
1
+
2
+
3
wyjście:
:)
:)
:)
1
2
3
:(
Spoj zgłasza błędną odpowiedź. NIe mogę dojść co może być błędem. Poniżej zamieszczam kod. Może ktoś zauważy jakiś wyjątek którego nie obsługuje ten program.
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
int kol[15];
char znak;
int i=0,j,k;
while(scanf("%c",&znak)==1)
{
if(znak=='+')
{
if(i>9)
{
printf(":(\n");
continue;
}
scanf("%d",&kol[i]);
i++;
printf(":)\n");
}
if(znak=='-')
{
if(i<=0)
{
printf(":(\n");
continue;
}
printf("%d\n",kol[0]);
k=0;
for(j=1;j<i;j++)
{
kol[k]=kol[j];
k++;
}
i--;
}
}
system("Pause");
return 0;
}