1. W warunku pętli porównywane są dwie tablice charów, zwracana jest prawda, jeśli są identyczne ( prawda w c++ odpowiada 1, a fałsz 0), wynik porównania jest następnie porównywany do różny od 0(jeśli różny to cały warunek jest prawdziwy). Czyli jeśli tablice word i matchword przechowują inne słowa to program wchodzi do pętli. W pętli ponownie pobierane jest z klawiatury słowo, oraz zwiększa się zmienną numberworld o 1, po czym znowu sprawdzany jest warunek pętli, gdyż iteracja się skończyła. Jeśli warunek jest prawdziwy (czyli w poprzedniej iteracji podano znajdujące się w matchword słowo), to program nie wchodzi więcej do pętli i wykonuje kolejne instrukcje znajdujące się za nią.
2. Strumień wejścia istnieje przed pętlą, ponieważ warunek pętli porównuje tablice word i matchword, bez niego pierwsza iteracja byłaby zawsze wykonywana(bo nic tam wcześniej nie ma, więc word nie jest taki sam jak matchword, w którym jest słowo kluczowe) nawet jeśli od razu podano by słowo klucz: "gotowe".
3. Jeśli podasz słowo "gotowe", to zostanie ono zapisane w tablicy word, która to porównywana jest z tablicą matchword w warunku pętli.
4. Strumień musi być wewnątrz pętli, ponieważ bez niego program sprawdzałby tylko raz podane słowo, po czym skończyłby się, gdyby podano słowo "gotowe", lub w przeciwnym przypadku wpadł w pętlę nieskończoną.
Pozdrawiam,
Mam nadzieję, że pomogłem.