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

Rozdział 1, lekcja 10

Ostatnio zmodyfikowano 2012-04-16 23:30
Autor Wiadomość
Rantraz
Temat założony przez niniejszego użytkownika
Rozdział 1, lekcja 10
» 2012-04-16 23:04:47
Witam,
od niedawna (czytaj dziś) postanowiłem zrozumieć C++. Jakieś pół roku temu liznąłem podstaw loa i postanowiłem wykorzystać możliwość mojego mindstorms'a :)
A wracając do tematu, nie mogę wykonać "zadania domowego". Napisałem coś takiego:

C/C++
#include <iostream>
using namespace std;
int main()
{
    float a;
    float b;
    float c;
    bool check1;
    bool check2;
    bool check3;
    cin >> a;
    cin.good();
    cin.clear();
    cin.sync();
    cin >> b;
    cin.good() >> check2;
    cin.clear();
    cin.sync();
    cin >> c;
    cin.good() >> check3;
    cin.clear();
    cin.sync();
    cout << "Liczba pierwsza to:" << a << ". Wczytano? " << check1 << endl;
    cout << "Liczba druga to: " << b << ". Wczytano? " << check2 << endl;
    cout << "Liczba trzecia to: " << c << ". Wczytano? " << check3 << endl;
    return 0;
}


Zgaduje że większość już się śmieje że ledwie zacząłem a już potrzebuje pomocy, zrobiłem głupi błąd itd. ale osobiście nie rozumiem tego. Z tego co zrozumiałem z tych pierwszych 10 lekcji to każda z moich wartości "check" ustala się losowo na początku. Po uruchomieniu programu zamiast 0 lub 1 w miejscach check'ów wyskakuje mi zawsze 53  w pierwszej linijce 62 w drugiej i w trzeciej 0. Czy wartość Bool nie jest true/false czyli 1/0? Skąd biorą się takie wartości jak napisałem wcześniej i jak zapisać wartość z cin.good() ?
P-54682
DejaVu
» 2012-04-16 23:23:07
» Kurs C++ » Poziom 1Pojęcie zmiennej i podstawowe typy danych lekcja - instrukcja przypisania.
P-54683
Rantraz
Temat założony przez niniejszego użytkownika
» 2012-04-16 23:30:28
no tak, jak próbowałem z = to pisałem w złej kolejności   cin.good() = check1; czyli wartość tak jakbym do wartości cin.good() przypisywał check1 a nie na odwrót. Poprawiłem wszystko wygląda to tak:

C/C++
#include <iostream>
using namespace std;
int main()
{
    float a;
    float b;
    float c;
    bool check1;
    bool check2;
    bool check3;
    cin >> a;
    check1 = cin.good();
    cin.clear();
    cin.sync();
    cin >> b;
    check2 = cin.good();
    cin.clear();
    cin.sync();
    cin >> c;
    check3 = cin.good();
    cin.clear();
    cin.sync();
    cout << "Liczba pierwsza to:" << a << ". Wczytano? " << check1 << endl;
    cout << "Liczba druga to: " << b << ". Wczytano? " << check2 << endl;
    cout << "Liczba trzecia to: " << c << ". Wczytano? " << check3 << endl;
    return 0;
}


Wielkie dzięki za pomoc, wspaniały poradnik :)
P-54684
« 1 »
  Strona 1 z 1