Witam.
Na początek chcę zaznaczyć, iż programistą jestem stricte początkującym, więc proszę o wyrozumiałość :)
Tworzę program losujący liczbę, a następnie sprawdzający, czy liczba wytypowana, przez użytkownika jest mniejsza, większa lub równa wylosowanej.
W moim kodzie programu występuje problem, nie wiem dlaczego ten problem występuje, dlatego też prosiłbym o wytłumaczenie, skąd się wziął i dlaczego.
Linijka z błędem:
Kod programu:
#include <cstdlib>
#include <ctime>
#include <iostream>
#include <conio.h>
using namespace std;
int main()
{
srand(time (NULL));
int los = ( rand() % 1000 ) + 1;
int typ;
int proba = 0;
cout << los; // na potrzeby pracy nad programem
cout << "=WITAMY W GRZE!=" << endl;
cout << endl;
cout << "Odgadnij liczbe od 1 do 1000 ";
do
{
proba++;
cout << endl;
cout << "Twoj typ: ";
cin >> typ;
bool ok = cin.good();
if (ok = 1)
{
if ( typ > los && typ >= 1 && typ <= 1000)
cout << "Za duzo" << endl;
if ( typ < los && typ >= 1 && typ <= 1000)
cout << "Za malo" << endl;
if ( typ < 1 || typ > 1000 || ok = 0 )
cout << "Nieprawidlowa wartosc" << endl;
}
cin.clear();
cin.sync();
}while ( typ != los );
cout << "Brawo!" << endl;
cout << "Liczba prob: " << proba;
getch();
return 0;
}