Warunek kończący pętlę
Ostatnio zmodyfikowano 2013-06-18 23:05
piotreq23 Temat założony przez niniejszego użytkownika |
Warunek kończący pętlę » 2013-06-18 20:12:39 Myślałem że skończę podany przeze mnie program we wcześniejszym temacie bez problemu, lecz nie potrafię wyjść z pętli. Chodzi o pętlę w której warunek jest prawdziwy, lecz nie potrafię stworzyć ostatecznego warunku kończącego pętle. while( true ) { cout << "PESEL: "; cin >> pom; for( int i = 0; i < 11; i++ ) { spr[ i ] = pom[ i ]; } spr[ 12 ] = '\0'; for( int i = 0; i < 11; i++ ) { if( spr[ i ] == '0' || spr[ i ] == '1' || spr[ i ] == '2' || spr[ i ] == '3' || spr[ i ] == '4' || spr[ i ] == '5' || spr[ i ] == '6' || spr[ i ] == '7' || spr[ i ] == '8' || spr[ i ] == '9' ) { } else { cout << endl << "Bledny pesel, sprobuj jeszcze raz" << endl; break; } } }
|
|
pekfos |
» 2013-06-18 22:47:48 bool koniec = false;
while( !koniec ) { for(;; ) { if( blabla ) { koniec = true; break; } } } ale tu się to (ogólnie to o co pytasz) nie sprawdzi, bo w efekcie będziesz sprawdzać tylko pierwszy znak. Najlepiej licz poprawne znaki i na koniec sprawdzaj, czy było ich wystarczająco dużo (tj. wszystkie). PS: do sprawdzania, czy znak jest cyfrą, możesz użyć funkcji isdigit() z <cctype>. |
|
piotreq23 Temat założony przez niniejszego użytkownika |
» 2013-06-18 23:05:08 Wiesz nie próbowałem nic z typem logicznym. Funkcje na pewno się przydadzą. Postanowiłem usiąść jeszcze trochę nad tym programem i go fajnie uporządkować. Generalnie dziękuję za podpowiedź i pozdrawiam. |
|
« 1 » |