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

[Kurs C++, Lekcja 9] Prośba o sprawdzenie zadania domowego

Ostatnio zmodyfikowano 2011-07-23 17:31
Autor Wiadomość
Nervous
Temat założony przez niniejszego użytkownika
[Kurs C++, Lekcja 9] Prośba o sprawdzenie zadania domowego
» 2011-07-22 18:08:16
» Kurs C++ » Poziom 1Obsługa strumienia wejściowego lekcja

C/C++
#include <iostream>
using namespace std;

int main()
{
    float a;
    float b;
    float c;
   
    cout << "Podaj liczbe rzeczywista: ";
    cin >> a;
    cout << "Czy udalo sie wczytac? " << cin.good() << endl;
    cin.clear();
    cin.sync();
   
    cout << "Podaj druga liczbe rzeczywista: ";
    cin >> b;
    cout << "Czy udalo sie wczytac? " << cin.good() << endl;
    cin.clear();
    cin.sync();
   
    cout << "Podaj trzecia liczbe rzeczywista: ";
    cin >> c;
    cout << "Czy udalo sie wczytac? " << cin.good() << endl;
    cin.clear();
    cin.sync();
   
    cout << "Informacje:" << endl;
    cout << "Liczba pierwsza to: " << a << "  Wczytano? " << cin.good() << endl;
    cout << "Liczba druga to: " << b << "  Wczytano? " << cin.good() << endl;
    cout << "Liczba trzecoa to: " << c << "  Wczytano? " << cin.good() << endl;
   
    return 0;
}

Od moderatora:
Pozwoliłem sobie przenieść nowy (tj. poprawiony) kod do ostatniego postu.
P-36599
m4tx
» 2011-07-22 18:10:56
Ano po to, aby np. jak by jakiś inny program uruchamiał Twój, to żeby wiedział, czy została ta Twoja aplikacja wykonana poprawnie, czy nie.

Kod mi wygląda na poprawny, ale niech się może ktoś inny wypowie.
P-36600
Thud
» 2011-07-22 18:55:38
Podaj liczbe rzeczywista: t2
Czy udalo sie wczytac? 0
Podaj druga liczbe rzeczywista: t.0
Czy udalo sie wczytac? 0
Podaj trzecia liczbe rzeczywista: 20
Czy udalo sie wczytac? 1
Informacje:
Liczba pierwsza to: 0  Wczytano? 1
Liczba druga to: 0  Wczytano? 1
Liczba trzecoa to: 20  Wczytano? 1
??
Patrz na 3 ostatnie linijki logu.
P-36608
Nervous
Temat założony przez niniejszego użytkownika
» 2011-07-23 00:07:38
Edit:
Jednak coś mi nie wychodzi.Dodałem drugi kod po kilku próbach.Mógł by ktoś rzucić pomocną wskazówką?
P-36626
jankowalski25
» 2011-07-23 16:59:04
Spróbuj zamiast
cin.good() >> a
 wpisać
a = cin.good()
P-36739
Nervous
Temat założony przez niniejszego użytkownika
» 2011-07-23 17:06:27
o.o dziala, lecz nie rozumiem na jakiej zasadzie to dziala np a = cin.good() Jezeli to dam to sprawdzi czy "a" jest poprawna liczba rzeczywista?
P-36741
Thud
» 2011-07-23 17:15:32
Funkcja cin.good() ZWRACA wartość typu boolean. Zwraca true jeżeli zawartość została dobrze zapisana, false w przeciwnym wypadku.
The function returns true if none of the stream's error flags (eofbit, failbit and badbit) are set.
Czyli true kiedy nie została ustawiona ŻADNA flaga błędu strumienia.

Źródło:
http://www.cplusplus.com/reference/iostream/ios/good/.
P-36742
Nervous
Temat założony przez niniejszego użytkownika
» 2011-07-23 17:31:43
Yhm wielkie dzieki

/edit (by malan):
Poprawiony kod:
C/C++
#include <iostream>
using namespace std;

int main()
{
    float liczba1;
    float liczba2;
    float liczba3;
    bool a;
    bool b;
    bool c;
   
    cout << "Podaj liczbe rzeczywista: ";
    cin >> liczba1;
    a = cin.good();
    cin.sync();
   
    cout << "Podaj druga liczbe rzeczywista: ";
    cin >> liczba2;
    b = cin.good();
    cin.sync();
   
    cout << "Podaj trzecia liczbe rzeczywista: ";
    cin >> liczba3;
    c = cin.good();
    cin.sync();
   
    cout << "Informacje:" << endl;
    cout << "Liczba pierwsza to: " << liczba1;
    cout << "  Wczytano? " << a << endl;
    cout << "Liczba druga to: " << liczba2;
    cout << "  Wczytano? " << b << endl;
    cout << "Liczba trzecia to: " << liczba3;
    cout << "  Wczytano? " << c << endl;
   
    return 0;
}
P-36745
« 1 »
  Strona 1 z 1