Witam!
Piszę Sapera w C++ i program nie działa tak jak powinien. Po wpisaniu współrzędnych i trafieniu na bombę poprawnie wypisuje komunikat o przegranej, ale w przeciwnym wypadku wypisuje "Wygrana" chociaż powinien to zrobić dopiero gdy na planszy zostaną same bomby.
enum stan_gry{WYGRANA,PRZEGRANA,DALEJ};
void wybor()
{
int x = 0;
cout << "Proszę wybrać współrzędną pionową: ";
cin >> x;
cout << endl;
int y = 0;
cout << "Proszę wybrać współrzędną poziomą: ";
cin >> y;
cout << endl;
int licznik = 0;
stan_gry stan = DALEJ;
while (stan == DALEJ)
{
if (plansza[x][y] == 9)
{
maska[x][y] = 'X';
stan = PRZEGRANA;
break;
}
if (licznik == 71)
{
stan = WYGRANA;
break;
}
else
{
licznik++;
maska[x][y] = plansza[x][y];
stan = DALEJ;
break;
}
rysuj(maska);
}
if (stan == PRZEGRANA)
{
cout << "Przegrana";
}
if (stan == WYGRANA)
{
cout << "Wygrana";
}
Pętla
while (stan == DALEJ)
wykonuje się tylko raz, ale nie wiem dlaczego. Proszę o pomoc ...