Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Czyszczenie strumienia.

Ostatnio zmodyfikowano 2012-12-04 18:45
Autor Wiadomość
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:
C/C++
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.
P-70333
SeaMonster131
» 2012-12-04 17:34:30
Czyść strumień.
cin.clear(); cin.sync();

// I nadaj tytuł.
P-70334
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.
P-70335
Forczek
Temat założony przez niniejszego użytkownika
» 2012-12-04 17:58:13
C/C++
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?
P-70336
CodeMeister
» 2012-12-04 18:27:42
Wykorzystaj obie funkcje
P-70337
SeaMonster131
» 2012-12-04 18:45:39
» Kurs C++ » Poziom 1Obsługa strumienia wejściowego lekcja. Tam wszystko masz.
P-70338
« 1 »
  Strona 1 z 1