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

Problem z pseudolosowymi liczbami (zad.dom)

Ostatnio zmodyfikowano 2016-10-05 00:44
Autor Wiadomość
Balto11181
Temat założony przez niniejszego użytkownika
Problem z pseudolosowymi liczbami (zad.dom)
» 2016-10-05 00:44:41
Witam otóż zacznę od zadania domowego, które brzmiało:
Twoim zadaniem domowym jest napisanie prostej gry, która ma działać następująco:
1. Program losuje liczbę z przedziału od 1 do 1000.
2. Użytkownik zgaduje liczbę, która została wylosowana.
3. Jeżeli podana liczba jest za duża (za mała) gra wypisuje stosowny komunikat i powraca do kroku 2.
4. Jeżeli gracz trafi liczbę wylosowaną to progam kończy działanie, wypisując na ekran wylosowaną liczbę oraz liczbę 'strzałów', które oddał gracz.
Gra ma być zabezpieczona przed możliwością wprowadzenia błędnych wartości liczbowych.

Otóż mój kod to :

#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
int main()
{
    srand( time( NULL ) );
    int los = (rand() % 1000) + 1;
    int traf;
    int ktory = 1;
    cout << "Zgadnij liczbe od 1-1000" ;
    cout << "\nMasz nieskonczona liczbe szans";
    cout << "\nLiczbe strzalow podamy na koncu, Powodzenia!"<<endl;

   do {
    bool trafg;
    cout << "Wybierasz liczbe: " <<endl;
    trafg = cin.good();
    cin.clear();
    cin.sync();

    ktory++;

    if(trafg == false || trafg < 0); {
    cout << "Bledne dane, uzywaj tylko liczb" << endl;
    }
    if(traf > los); {
            cout << "Za duzo!"<<endl;
        }
    else {
            cout << "Za malo!"<<endl;
        }

    if(traf == los);(cout << "Gratulacje! trafiles liczbe :"<< los <<" Za "<< ktory <<" razem!")<<endl;

    } while(los!=traf);}

    return 0;
}


Problem jest gdzieś przy else, nie jestem wstanie powiedzieć dlaczego, siedzę nad tym i siedzę, a zapewne błąd tkwi w prostocie. Dodam, ze programowania uczę się od 3 dni po 1-3 h dziennie, nie mogłem wcześniej się do tego zabrać. Dzięki za pomoc :)
P-152258
« 1 »
  Strona 1 z 1