Pętla nie chce się zamknąć.
Ostatnio zmodyfikowano 2015-05-07 20:23
czesyk Temat założony przez niniejszego użytkownika |
Pętla nie chce się zamknąć. » 2015-05-07 18:18:54 Witam! Jestem nowy na forum, więc "piątka" ode mnie dla wszystkich :) Zmagam się z pewnym problemem. #include <iostream> using namespace std; int main() { int liczba; bool sukces; do { cout << "Podaj liczbe: "; cin >> liczba; bool sukces = cin.good(); cin.clear(); cin.sync(); cout << "Czy udalo sie wczytac: " << sukces << endl; cout << "Wpisana liczba to: " << liczba << endl; } while( sukces == 1 ); return 0; }
Chcę, żeby pętla zamknęła się, kiedy wartość zmiennej sukces będzie wynosiła 1, czyli kiedy wczytanie będzie się uda. Niestety, tak się nie dzieje. Próbowałem na kilka sposobów, lecz to nie przynosiło skutków. Jest to kod do zadania w 1 lekcji - 2 poziomu kursu. Pozdrawiam! Liczę na pomoc! \\Przepraszam za zły dział :( |
|
kubawal |
» 2015-05-07 19:40:26 Nie inicjujesz zmiennej. Ale to tylko taka styliczna uwaga. while znaczy 'dopóki' a nie 'aż do' (przynajmniej w C++). Więc powinno być while( sukces == false ) abo lepiej while( !sukces ) |
|
pekfos |
» 2015-05-07 19:41:08 while(!sukces)? |
|
czesyk Temat założony przez niniejszego użytkownika |
» 2015-05-07 20:01:48 Pętla wciąż się nie zamyka. Próbowałem obydwoma sposobami. :/ |
|
pekfos |
» 2015-05-07 20:18:48 Usuń drugie słowo bool z kodu. |
|
czesyk Temat założony przez niniejszego użytkownika |
» 2015-05-07 20:20:30 Niby taka drobnostka, a wszystko rujnuje. Działa. Dziękuję :) |
|
Piastlis |
» 2015-05-07 20:23:56 Jeżeli skasujesz drugie bool w pętli to się zamknie.Oczywiście jak wpiszesz zamiast zamiast liczby jakiś tekst. |
|
« 1 » |