c++ pętla while

0

Mam problem ze zrozumieniem tej pętli:

 while( (!(cin>>tab[i])) || (tab[i]%2==0) )
        {
            cin.ignore();
            cin.sync();
        }

O co dokładnie chodzi w poszczególnych liniach? Za wyjaśnienie bardzo dziękuję!

0

Co oznacza

 cin.ignore(); 

?
Można zamiast pętli while wykorzystać instrukcjie if?

0
  1. Oznacza usuniecie z bufora standardowego wejścia wszystkich znaków które się tam znajdują
  2. Nie.
0

Przecież za usunięcie odpowiedzialne jest cin.sync();

0

cin.ignore() ogólnie służy do usunięcia X znaków z bufora, ale jeśli siedzi w pętli to najpewniej chodzi o usunięcie wszystkich. A kod wyżej jest błędny bo brakuje tam cin.clean()

1 użytkowników online, w tym zalogowanych: 0, gości: 1