Lekcja 9 i problem laika...
Ostatnio zmodyfikowano 2013-03-28 18:11
Gapek Temat założony przez niniejszego użytkownika |
Lekcja 9 i problem laika... » 2013-03-28 14:54:54 Mam problem z tym zadaniem nie znalazłem odpowiedzi w pierwszych 10 postach założonych do tej lekcji, to mój kod: #include <iostream> using namespace std;
int main() { double a, b, c; bool A, B, C; cout << "Podaj liczbe 1: "; cin >> a; A = cin.good(); cin.clear(); cin.sync(); cout << "Podaj liczbe 2: "; cin >> b; B = cin.good(); cin.clear(); cin.sync(); cout << "Podaj liczbe 3: "; cin >> c; C = cin.good(); cout << "\n\n"; cout << "Pierwsza liczba: " << a << "\t Wczytano? " << A << endl; cout << "Druga liczba: " << b << "\t Wczytano? " << B << endl; cout << "Trzecia liczba:" << c << "\t Wczytano? " << C << endl; }
Chodzi mi o to że przy wprowadzeniu najpierw tekstu w przykładzie wartość liczby zwracało "0" u mnie czyta literkę jako losową liczbę gdzie mam błąd? |
|
Fores |
» 2013-03-28 16:34:03 Zadanie masz poprawnie rozwiazane. Program nie pokaze Ci 0, poniewaz przy tworzeniu zmiennej b nie nadales jej zadnej wartosci, wiec zostaly do niej przypisane jakies smieci. Gdy wczytanie sie nie powiodlo, zadna wartosc nie zostala przypisana do zmiennej, wiec smieci zostaly. Jesli chcesz tak na sile meic tam 0, to przy jej tworzeniu nadaj jej wartosc poczatkowa 0. Ale chyba nie o to chodzi, program jest dobrze napisany i spelnai swoja funkcje. |
|
Gapek Temat założony przez niniejszego użytkownika |
» 2013-03-28 17:16:10 Ok. Dzięki. |
|
Monika90 |
» 2013-03-28 18:11:51 Program nie jest dobrze napisany, bo odczyt niezainicjalizowanej zmiennej to niezdefiniowane zachowanie. Zmienne a, b, c powinny być albo zainicjalizowane (np zerem), albo nie powinieneś wyświetlać ich wartości, gdy odczyt ze strumienia się nie udał i koniec. |
|
« 1 » |