mam problem z funkcja sprawdzającą czy dana liczba jest w kolejce w taki sposób by nie stracić danych z oryginalnej kolejki, zależy mi na FIFO więc nie mogę operować na tablicach czy jakiejkolwiek innej strukturze
int czy_w_kolejce( int liczba )
{
queue < int > kolejka_tymczasowa;
kolejka_tymczasowa = kolejka_org; // kolejka_org jest wypełniona wcześniej minimum 5 liczbami
int jest = 0;
do {
if( kolejka_tymczasowa.empty() ) // kolejka nigdy z góry nie będzie pusta - jedynie po serii ściągnięć
// w ostatnim warunku może tak się stać
{
return 0; // zwraca 0 gdy liczby nie było za zadnej pozycji w kolejce
}
else if( !kolejka_tymczasowa.empty() )
{
if( kolejka_tymczasowa.front() == liczba )
{
jest = 1;
}
else if( kolejka_tymczasowa.front() != liczba )
{
kolejka_tymczasowa.pop();
}
}
} while( jest == 1 );
if( jest == 1 ) return 1; // zwraca 1 gdy znalazło wystąpienie liczby w kolejce
}