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

lekcja 9 zadanie problem

Ostatnio zmodyfikowano 2012-02-12 22:45
Autor Wiadomość
zoranka
Temat założony przez niniejszego użytkownika
lekcja 9 zadanie problem
» 2012-02-12 22:09:09
kiedy wpisuje się 3 liczby wszystko chodzi tak jak powinno, ale kiedy wpisuję zamiast pierwszej albo drugiej liczby literę nie pyta już o następne liczby i od razu wyświetla wyniki a w miejsce nie wpisanych liczb wyswietlają sie wartości losowe. Co jest nie tak?

C/C++
#include <iostream>
int main()
{
    int a;
    int b;
    int c;
    bool spra;
    bool sprb;
    bool sprc;
    std::cout << "Podaj pierwszą liczbę " << std::endl;
    std::cin >> a;
    spra = std::cin.good();
    std::cout << "Wczytano ?" << spra << std::endl;
    std::cout << "Podaj druga liczbę " << std::endl;
    std::cin >> b;
    sprb = std::cin.good();
    std::cout << "Wczytano ?" << sprb << std::endl;
    std::cout << "Podaj trzecią liczbę" << std::endl;
    std::cin >> c;
    sprc = std::cin.good();
    std::cout << "Wczytano ?" << sprc << std::endl;
    std::cout << "Pierwsza liczba to " << a << std::endl;
    std::cin.clear();
    std::cin.sync();
    std::cout << "Druga liczba to " << b << std::endl;
    std::cin.clear();
    std::cin.sync();
    std::cout << "Trzecia liczba to " << c << std::endl;
    std::cin.clear();
    std::cin.sync();
    return 0;
}
P-50616
SeaMonster131
» 2012-02-12 22:24:12
Czyść strumień po każdym wczytaniu, a nie przy wyświetlaniu. ;)
P-50619
zoranka
Temat założony przez niniejszego użytkownika
dzięki.ale kiedy to jest?
» 2012-02-12 22:27:57
To znaczy mam rozumieć że w złym miejscu dałam czyszczenie?ok. ale gdzie ono powinno być? w których liniach albo po których instrukcjach?
P-50620
SeaMonster131
» 2012-02-12 22:45:43
Ja bym dał te czyszczenie przez każdym:
std::cout << "Wczytano ?" <<...
, ponieważ po wpisaniu liczby/liter nadajesz odpowiednią wartość zmiennej bool, a następnie musisz właśnie wyczyścić strumień :)
P-50621
« 1 »
  Strona 1 z 1