Praca domowa 15 zad. 1
Ostatnio zmodyfikowano 2016-07-14 16:16
mich2803 Temat założony przez niniejszego użytkownika |
» 2016-07-13 18:18:12 Przy takim kodzie: #include <iostream>
using namespace std;
int main() { int liczba; cout << "Program prosi uzytkownika o podanie liczby calkowitej." << endl; cout << "Jesli uzytkownik wprowadzi niepoprawne dane, program poprosi jeszcze raz o liczbe" << endl; do { cout << "Podaj liczbe: "; cin >> liczba; cin.clear(); cin.sync(); if( cin.fail() == true ) { cout << "Nieprawidlowe dane. Sprobuj jeszcze raz." << endl; } } while( cin.fail() == true ); cout << "Podales liczbe: " << liczba << endl; cout << "Koniec programu"; return 0; } [ / cpp ] Program dzia ł a tak samo, tzn nie ma mo ż liwo ś ci korekcji danych wczytywanych do zmiennej liczba.Poni ż ej zamieszczam link do zrzutu ekranu przedstawiaj ą cy przyk ł adowe wykonanie programu dla wprowadzenia przez u ż ytkownika litery d z klawiatury. [ a href = "http://iv.pl/images/75454423824205476149.jpg" ] |
|
marcolo2307 |
» 2016-07-13 18:45:54 Przeczytaj jeszcze raz mój poprzedni post... |
|
carlosmay |
» 2016-07-14 05:53:42 cin >> liczba; cin.clear(); cin.sync(); if( cin.fail() == true )
To nie ma sensu. Użyci std::cin.clear(); przed sprawdzaniem stanu strumienia powoduje, że strumień zawsze będzie std::cin.fail() == false; Używaj std::cin.ignore(); |
|
mich2803 Temat założony przez niniejszego użytkownika |
» 2016-07-14 16:16:34 Dzięki. Temat do zamknięcia. |
|
1 « 2 » |