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

[Lekcja} pętla do... while

Ostatnio zmodyfikowano 2014-10-29 22:08
Autor Wiadomość
legionista
Temat założony przez niniejszego użytkownika
[Lekcja} pętla do... while
» 2014-10-29 21:00:08
Mam problem z pierwszym zadaniem pracy domowej
Napisz program, który wczyta liczbę, a następnie wypisze ją na ekranie. Zabezpiecz przed wczytaniem nieprawidłowej liczby. Wykorzystaj do tego celu wiedzę z jednego z poprzednich rozdziałów. Sposób działania programu:
1. Podaj liczbę
2. Jeżeli błąd, wróć do kroku 1.
3. Wypisz liczbę, która została podana. 

Toretycznie stworzyłem kod który działa

#include<iostream>
int main()
{

    int liczba ;
  std::cout<<"Podaj liczbe " ;
    std::cin >> liczba;

    if (std::cin.good() == true)
    do {
     std::cout << liczba ;
    }while (std::cin.good() == false);
else

std::cout<< "Podaj liczbe ";
std::cin >> liczba;

    }


Jednak, w przypadku liczby niepoprawnej, pętla nie jest używana, nie za bardzo wiem jak mogę jej użyć, aby zawsze po podaniu liczby nie będącej intem , wyskakiwało mi polecenia Podaj liczbę z możliwości jej wypisania. Nie udało mi się to z pętlą. Bardzo proszę o jakieś rady.
P-119652
Rashmistrz
» 2014-10-29 22:08:54
Ta pętla jest bezużyteczna...
C/C++
if( std::cin.good() == true )
do {
    std::cout << liczba;
} while( std::cin.good() == false );

To oczywiste jest, że jeśli IF będzie spełniony
to warunek pętli nie będzie. Gdyż jakim cudem się
zmieni się flaga bez użycia cina?
A w ogóle po co ta pętla?
P-119657
« 1 »
  Strona 1 z 1