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

[Lekcja 17] zadanie 3 - pytanie

Ostatnio zmodyfikowano 2013-05-13 14:15
Autor Wiadomość
Beton
Temat założony przez niniejszego użytkownika
[Lekcja 17] zadanie 3 - pytanie
» 2013-05-13 13:51:37
Otoz mam pytanie, napisalem program do owego zadania, komputer wypisuje mi wylosowane liczby jezeli wcisne T, a jak N to konczy, wiec jest OK. Kod do programu:

C/C++
#include <iostream>
#include <cstdlib>
#include <ctime>

int losowanie()
{
    srand( time( NULL ) );
    int liczba =(( rand() % 11 ) + 50 );
    std::cout << "twoaj wylsoowana liczba to: " << liczba << std::endl;
   
}

int main()
{
   
    char wybor;
    int los;
    do
    {
        std::cout << "Czy chcesz losowac liczbe ? " << std::endl;
        std::cin >> wybor;
        if( wybor == 'T' )
        {
            los = losowanie();
            std::cin.sync();
            std::cin.clear();
           
        }
        if( wybor == 'N' )
        {
            std::cout << "Koniec programu";
        }
       
       
    }
    while( wybor == 'T' );
   
}

co mnie zastanawia, jezeli ustawie przedzial losowania np: na 1000 liczb od 1, wywolam program i zgodze sie na losowanie wyswietlona zostanie liczba, np: 326, w nastepnym obiegu losowania wyswietli mi sie 329, w kolejnym 333 i bedzie caly czas wzrastac o zblizonym trendzie (co 3,4 lub 5), nigdy tez nie zostanie wylosowana nizsza liczba. Czy w kodzie mam jakis blad? czy mozna temu jakos zaradzic?
P-82849
Berux
» 2013-05-13 13:54:26
srand( time( NULL ) );
 usuń z funkcji losowanie, a wrzuć na początek main.
/edit:
i nie potrzebna jest zmienna "los", bo nic ona nie robi :)

oraz zmień typ funkcji losowanie na void, bo nic nie zwracasz.
P-82850
Beton
Temat założony przez niniejszego użytkownika
» 2013-05-13 14:02:19
dzieki wielkie teraz dziala, wiec srand(time(NULL)); powinno sie tylko raz wpisac bez umieszczania tego w petli?
P-82851
Bajt
» 2013-05-13 14:15:59
srand( time( NULL ) )
 umieszczasz raz, na początku w funkcji main. W kursie na tym serwisie jest stosowna lekcja na ten temat, więc polecam.
P-82853
« 1 »
  Strona 1 z 1