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

Problem z pseudolosowymi liczbami

Ostatnio zmodyfikowano 2016-10-05 01:49
Autor Wiadomość
Balto11181
Temat założony przez niniejszego użytkownika
Problem z pseudolosowymi liczbami
» 2016-10-05 01:06:29
Witam, mam taki problem. Stworzyłem program(zadanie domowe), dzięki, któremu ktoś ma zgadywać liczbę, jeżeli poda za małą to go o tym poinformuje i analogicznie za dużą. Otóż, program nie daje mi wpisać liczby, po prostu kręci się bez przerwy nie dając mi nic wpisać widzę tylko odpalający się 100 razy na sekunde program, jakgdyby sama liczba była przeze mnie wpisana.

C/C++
#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;
        cin >> traf;
        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( traf != los ); }


return 0;
}
P-152259
mateczek
» 2016-10-05 01:18:55
używaj znaczników
[cpp] //tutaj kod[/cpp]

Ogólnie średniki w głupich miejscach i dziwne nawiasy :P
C/C++
if( traf == los );( cout << "Gratulacje! trafiles liczbe :" << los << " Za " << ktory << " razem!" ) << endl;

Poniżej masz połatany kod.
C/C++
#include <iostream>
#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;
        cin >> traf;
        trafg = cin.good();
        cin.clear();
        cin.sync();
        ktory++;
       
        if( trafg == false || trafg < 0 )
             cout << "Bledne dane, uzywaj tylko liczb" << endl;
        else if( traf > los )
             cout << "Za duzo!" << endl;
        else if( traf < los )
             cout << "Za malo" << endl;
        else if( traf == los )
             cout << "Gratulacje! trafiles liczbe :" << los << " Za " << ktory << " razem!" << endl;
       
    } while( traf != los );
   
    return 0;
}
P-152260
Balto11181
Temat założony przez niniejszego użytkownika
Thx
» 2016-10-05 01:32:21
Dzięki wielkie.  Dopiero zaczynam, z ciekawości nie mogłem użyć przykładowo if zamiast else if i czym to się różni od samego if. Chcę poszerzyć wiedzę stąd takie pytanie, w poradnikach nie widziałem użycia else if
P-152261
mateczek
» 2016-10-05 01:49:03

z ciekawości nie mogłem użyć przykładowo if zamiast else if i czym to się różni od samego if
else if - pierwszy napotkany warunek się wypełnia i nie sprawdza następnych !!! W tym wypadku bez sensu jest sprawdzać dalej skoro liczba nie wczytana
P-152262
« 1 »
  Strona 1 z 1