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

Czy poprawnie zrobiłem zadanie domowe z lekcji 9?

Ostatnio zmodyfikowano 2012-05-13 16:11
Autor Wiadomość
Berux
Temat założony przez niniejszego użytkownika
Czy poprawnie zrobiłem zadanie domowe z lekcji 9?
» 2012-05-13 15:55:05
Proszę was o sprawdzenie zadania domowego z lekcji 9.

Oto kod:

C/C++
#include <iostream>

using namespace std;

int main()
{
    float a;
    float b;
    float c;
    bool sukces = cin.good();
   
    cout << "Podaj pierwsza liczbe rzeczywista: ";
    cin.clear();
    cin.sync();
    cin >> a;
   
    cout << "Podaj druga liczbe rzeczywista: ";
    cin.clear();
    cin.sync();
    cin >> b;
   
    cout << "Podaj trzecia liczbe rzeczywista: ";
    cin.clear();
    cin.sync();
    cin >> c;
   
    cout << "Liczba pierwsza to: " << a << ".";
    cout << "Wczytano?" << sukces << endl;
   
    cout << "Liczba druga to: " << b << ".";
    cout << "Wczytano?" << sukces << endl;
   
    cout << "Liczba trzecia to: " << c << ".";
    cout << "Wczytano?" << sukces << endl;
   
    return 0;
}
P-56641
xevuel
» 2012-05-13 15:56:27
Źle. Sprawdzenie, czy wczytanie się powiodło musisz wykonać po każdym wczytaniu, a nie przed nim.

//Bufor się czyści po wczytaniu, a nie przed nim :)
P-56642
Berux
Temat założony przez niniejszego użytkownika
» 2012-05-13 15:57:49
Aha racja.
P-56643
xevuel
» 2012-05-13 15:59:04
bool sukces = cin.good();
Musisz to wpisać po wczytaniu liczby. I pamiętaj, jedna zmienna dla jednego wczytania, chyba, że użyjesz tablicy albo będziesz wyświetlał na bieżąco.
P-56644
Berux
Temat założony przez niniejszego użytkownika
» 2012-05-13 16:05:44
A teraz:

C/C++
#include <iostream>

using namespace std;

int main()
{
    float a;
    float b;
    float c;
    bool sukces = cin.good();
   
    cout << "Podaj pierwsza liczbe rzeczywista: ";
    cin >> a;
    cin.clear();
    cin.sync();
    cout << "Wczytano?" << sukces << endl;
   
    cout << "Podaj druga liczbe rzeczywista: ";
    cin >> b;
    cin.clear();
    cin.sync();
    cout << "Wczytano?" << sukces << endl;
   
    cout << "Podaj trzecia liczbe rzeczywista: ";
    cin >> c;
    cin.clear();
    cin.sync();
    cout << "Wczytano?" << sukces << endl;
   
    return 0;
}
P-56645
xevuel
» 2012-05-13 16:07:30
Nieco lepiej, ale dalej nie zastosowałeś się całkowicie do mojego drugiego posta. Musisz modyfikować zmienną sukces.
P-56646
Berux
Temat założony przez niniejszego użytkownika
» 2012-05-13 16:08:17
Czyli?
P-56647
xevuel
» 2012-05-13 16:09:09
C/C++
cout << "Podaj pierwsza liczbe rzeczywista: ";
cin >> a;
sukces = cin.good();
cin.clear();
cin.sync();
cout << "Wczytano?" << sukces << endl;
P-56649
« 1 » 2
  Strona 1 z 2 Następna strona