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

[Rozdział 24] problem z programem przykładowym

Ostatnio zmodyfikowano 2012-05-15 09:47
Autor Wiadomość
Szybkie_pytanie
» 2012-05-14 17:19:22
Oj przepraszam najmocniej... ale ze mnie głąb obsrany.... już zabieram się do lekcji dziękuję.
P-56693
pekfos
» 2012-05-14 17:45:29
while( wczytaj_liczbe( x ) == false );
Zmień false na true.
P-56695
willhelm
Temat założony przez niniejszego użytkownika
» 2012-05-14 20:06:31
Zadziałało poprawnie, ale zamiast czekać na poprawną liczbę, to czeka na literę (odwrotnie niż powinno być). Kiedy zmieniam znaki "==" na "!=" znowu wszystko się pieprzy.
P-56711
pekfos
» 2012-05-14 20:19:00
Hmm,
podaj aktualny kod :p
P-56713
willhelm
Temat założony przez niniejszego użytkownika
» 2012-05-14 20:44:15
Oto i on:

C/C++
#include <iostream>

using namespace std;

bool wczytaj_liczbe( int & liczba )
{
    cin.clear();
    cin.sync();
    cin >> liczba;
    return cin.good();
    /*    cin.clear();
        cin.sync();
   
        if (cin.good() == 0)
            {
                return 0;
            }
        else
            {
                cin.clear();
    cin.sync();
                return 1;
            }
   
        bool bResult = cin.good();
    cin.clear();
    cin.sync();
    return bResult;*/
}

int main()
{
    int x;
    do
    {
        cout << "Podaj liczbe: ";
    } while( wczytaj_liczbe( x ) != true );
   
    cout << "Liczba podana to: " << x << endl;
    return 0;
}

Dużo komentarzy, bo mam zwyczaj wyrzucać kod dopiero gdy już działa tak, jak powinien.
P-56715
pekfos
» 2012-05-14 20:59:18
U mnie działa prawidłowo
Podaj liczbe: qwerty
Podaj liczbe: a
Podaj liczbe: *-+
Podaj liczbe: 42
Liczba podana to: 42
P-56718
flex55
» 2012-05-15 09:47:29
działa pod Visualem, nie muszę dodawać tego nagłówka co mówisz - bo ja utworzyłem sobie Empty Project a nie Console Aaplication, a w pustym projekcie nie musi być stdafx.h :)
P-56729
1 « 2 »
Poprzednia strona Strona 2 z 2