Czyszczenie strumienia.
Ostatnio zmodyfikowano 2012-12-04 18:45
Forczek Temat założony przez niniejszego użytkownika |
Czyszczenie strumienia. » 2012-12-04 17:24:55 Piszę bardzo prosty program, ale mam jeden błąd. Oto kod: do { std::cin >> ilosc_skladnikow; if( std::cin.fail() == 0 ) { if( ilosc_skladnikow >= 1 && ilosc_skladnikow <= 10000000 ) { koniec = true; } else { std::cout << "Cos nie tak, sprobuj ponownie..." << std::endl; } } else { std::cout << "Popelniono blad podczas wpisywania liczby." << std::endl; ilosc_skladnikow = 0; } } while( koniec == false );
W tej części mam błąd, wie ktoś może jak zrobić aby napis się nie wyświetlał w nieskończoność, tylko raz? Bo niestety nie mam pomysłu. |
|
SeaMonster131 |
» 2012-12-04 17:34:30 Czyść strumień. cin.clear(); cin.sync(); // I nadaj tytuł. |
|
Forczek Temat założony przez niniejszego użytkownika |
» 2012-12-04 17:49:52 Sory jakoś tak wyszło. Zapomniałem o tej funkcji, dzięki. |
|
Forczek Temat założony przez niniejszego użytkownika |
» 2012-12-04 17:58:13 do { std::cin >> ilosc_skladnikow; if( std::cin.fail() == 0 ) { if( ilosc_skladnikow >= 1 && ilosc_skladnikow <= 10000000 ) { koniec = true; } else { std::cout << "Cos nie tak, sprobuj ponownie..." << std::endl; } } else { std::cout << "Popelniono blad podczas wpisywania liczby." << std::endl; ilosc_skladnikow = 0; std::cin.clear(); } } while( koniec == false );
Nadal nie działa, jakieś sugestie? |
|
CodeMeister |
» 2012-12-04 18:27:42 Wykorzystaj obie funkcje
|
|
SeaMonster131 |
» 2012-12-04 18:45:39 |
|
« 1 » |