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

rozdział 15 zadanie domowe

Ostatnio zmodyfikowano 2013-07-05 12:14
Autor Wiadomość
daniel.koder
Temat założony przez niniejszego użytkownika
rozdział 15 zadanie domowe
» 2013-07-05 11:39:48
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.


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

int main() {
   
    int a;
    int licznik = 1;
    int numb;
    do {
       
        cout << "Podaj liczbę" << endl;
        cin >> a;
       
        if( a ==!numb ) { licznik--; };
        cout << a << endl;
        licznik++;
       
    } while( 0 );
   
    return 0;
}

Proszę o naprawę mojego toku rozumowania i jakąś wskazówkę, nie wiem gdzie jest błąd.


@edit: nie wiem w jaki sposób wstawić kod tak aby był bardziej czytelny, z góry przepraszam.
P-87039
jsc
» 2013-07-05 11:41:53
Gdzie sprawdzasz poprawność wczytania danych?
P-87041
daniel.koder
Temat założony przez niniejszego użytkownika
» 2013-07-05 11:44:20
miałem nadzieje że w tej formie też sie to uda

if ( a==!numb )
P-87042
pekfos
» 2013-07-05 11:46:45
To nie ma sensu (poza tym, że to błąd).
» Kurs C++ » Poziom 1Obsługa strumienia wejściowego lekcja

@edit: nie wiem w jaki sposób wstawić kod tak aby był bardziej czytelny
» KursyKurs STC kurs, » Porady dla użytkowników cpp0x.plZakładanie tematów na forum zalecenie
P-87043
daniel.koder
Temat założony przez niniejszego użytkownika
» 2013-07-05 11:54:57
C/C++
using namespace std;
int main() {
   
   
    int a;
    bool test;
   
    cout << "Podaj liczbę " << endl;
    cin >> a;
    cout << cin.good() << endl;
    cout << cin.fail() << endl;
    cout << a;
   
    return 0;
}


nie wiem w jaki sposób zrobić powrót "na górę" w razie błędne wprowadzonych danych, w jaki sposób należy skonstruować pętle?
P-87044
jsc
» 2013-07-05 12:02:12
Tam, gdzie miałeś
while( 0 );
 wpisz
while( cin.fail() );
P-87045
daniel.koder
Temat założony przez niniejszego użytkownika
» 2013-07-05 12:07:38
C/C++
using namespace std;

int main() {
   
    do {
        int a;
        bool test;
       
        cout << "Podaj liczbę " << endl;
        cin >> a;
        cout << cin.good() << endl;
        cout << cin.fail() << endl;
        cout << a;
       
       
       
       
    } while( cin.fail() );
   
    return 0;
}

podczas gdy wpisuje cyfrę program się konczy natomiast gdy testuję z literką pętla trwa i trwa
P-87046
jsc
» 2013-07-05 12:10:59
Masz  cout << a; w złym miejscu. Przyjrzyj się oczekiwanemu sposobowi działania programu.
P-87047
« 1 » 2
  Strona 1 z 2 Następna strona