[C] Generator liczb pseudolosowych


(McDracullo) #1

Natrafiłem na pewien problem podczas ćwiczeń z C. Otóż chodzi o prosty generator liczb. W zaprezentowanym niżej przykładzie program zawsze losuje tę samą liczbę. Chodzi mi jednak o to aby każda liczba była w miarę możliwości inna (oczywiście podczas losowania mogą zdarzyć się dwie te same liczby, ale nie wciąż te same :slight_smile: ). Co muszę zmienić??

#include 

#include 

#include 


int main(void)

{

    int i,j,tab[1000]={0},ile[20]={0};


    for (i=0;i<1000;i++) {

        tab[i]=(rand() % 20)+1;

        ile[tab[i]-1]++;

        }


    for (j=0;j<20;j++)

        printf("%d\t%d\n",j+1,ile[j]);


    system("pause");

return o;

}

(Krzkaczor) #2

Tutaj coś znajdziesz :slight_smile:

http://www.google.com/search?client=ope ... 8&oe=utf-8


(McDracullo) #3

W międzyczasie wykminiłem czemu ciągle w googlach wyskakiwały mi podobne instlukcje. Wystarczyło nie wpisywać pseudlosowych a wpisać losowych.

Dla potomnych:

#include 

#include 

#include 

#include 


int main(void)

{

    int i,j,tab[1000]={0},ile[20]={0};

srand(time(NULL));

    for (i=0;i<1000;i++) {

        tab[i]=(rand()%20)+1;

        ile[tab[i]-1]++;

        }


    for (j=0;j<20;j++)

        printf("%d\t%d\n",j+1,ile[j]);


    system("pause");

return 0;

}