Błąd w programie "zgadnij jaka to liczba"
Ostatnio zmodyfikowano 2011-07-09 14:10
Artuross Temat założony przez niniejszego użytkownika |
Błąd w programie "zgadnij jaka to liczba" » 2011-07-09 14:02:46 #include <iostream> #include <cstdlib> #include <ctime>
using namespace std;
int main() { srand( time( NULL ) ); int liczba =( rand() % 1000 ) + 1; int wpisana; int strzal = 1; cout << "Podaj liczbe: "; cin >> wpisana; do { if( wpisana < 1 || wpisana > 1000 ) { cout << "Wpisana liczba nie miesci sie w zakresie." << "Prosze podac liczbe z przedzialu: 1 - 1000: "; cin >> wpisana; } else { do { if( wpisana < liczba ) { cout << "Podana przez Ciebie liczba jest mniejsza niz wylosowana." << endl; cout << "Sprobuj ponownie: "; cin >> wpisana; strzal++; } else if( wpisana > liczba ) { cout << "Podana przez Ciebie liczba jest wieksza niz wylosowana." << endl; cout << "Sprobuj ponownie: "; cin >> wpisana; strzal++; } } while( wpisana == liczba ); } } while( wpisana == liczba ); cout << "Brawo, trafiles wylosowana liczbe!!!" << endl; cout << "Trafiona liczba to: " << wpisana << endl; cout << "Oddanych strzalow: " << strzal << endl; return 0; }
Problem jest taki, że program losuje liczbę, wpisuję... nie trafiam, ale za drugim razem zawsze trafiam, nawet jeśli za pierwszym razem wpiszę 10, wyświetla się komunikat, że liczba jest mniejsza, a później wpiszę 13 to i tak trafiam... I naprawdę nie chce mi się ciągle pytać Was o pomoc, dlatego ostatecznie, definitywnie i nieodwołalnie chciałbym się dowiedzieć dlaczego tak jest jak jest. Tylko nie dawajcie mi gotowców, poproszę tylko informację, w którym miejscu jest błąd... Serio, już wymiękam. |
|
Savail |
» 2011-07-09 14:06:59 Sprawdz jakie warunki dajesz w pętlach while |
|
Artuross Temat założony przez niniejszego użytkownika |
» 2011-07-09 14:10:22 Już znalazłem zanim odpowiedziałeś, ale dziękuję :) Jeja, ja to jednak jestem tępy :D
|
|
« 1 » |