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

Problem z wczytywaniem liczby

Ostatnio zmodyfikowano 2013-06-17 22:14
Autor Wiadomość
narutoza
Temat założony przez niniejszego użytkownika
Problem z wczytywaniem liczby
» 2013-06-17 22:14:59
Witam. Kolejny raz postanowiłem zaśmiecić to forum banalnym problemem z kursu. chodzi mi mianowicie o program, którego polecenie brzmi:
"Napisz funkcję, która będzie wczytywała liczby ze standardowego wejścia i zwracała wczytaną wartość. Funkcja ma zagwarantować, że zwracana liczba zawsze jest poprawna. Oznacza to, że funkcja będzie musiała pytać użytkownika o wprowadzenie liczby dopóki nie poda poprawnej."
 
Spróbowałem coś takiego sklecić. Niestety, gdy wpisuję liczbę, która naturalną nie jes, to po prostu odcina on kropkę oraz część dziesiętną. Wiem, ze program zwykł ignorować coś co nie jest intem w ciągu liczby int, ale jak temu zapobiec?

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

int wczytaj_liczbe()
{
    int liczba = 0;
    bool sukces = 0;
    do
    {
        cin >> liczba;
        bool sukces = cin.good();
    } while( sukces == 1 );
   
    return liczba;
}

int main()
{
    cout << "Podaj liczbe: \n";
    int liczba = wczytaj_liczbe();
    cout << "Twa liczba to " << liczba << endl;
    return 0;
}
P-85759
« 1 »
  Strona 1 z 1