liczby losowe

0

Hey!
Mam generator liczb losowych.
Ktory dziala, za kazdym razem gdy go uruchomie daje mi liczby losowe z zadanego przedzialu
Jednak kiedy chce wykorzystac ta funkcje w innym programie, definiujac ja jako funkcje skladowa i kiedy zapuszczam ja w petli ona zawsze daje taka sama liczbe losowa
Czyli chodzi mi o kod generatora ktory jako funkcja skladowa zapuszczony w petli w funkcji main() daje zawsze inne liczby losowe.
Pozdrawiam.

0

Problem leży w funkcji srand. Poczytaj dokladnie o sposobie dzialania srand

Oto przykładowe rozwiązanie problemu:

#include <stdlib.h>
#include <time.h>

int i;

void losuj()
{
	
	for(i=1;i<6;i++)
		{
		srand;		
		printf("%d\n",(rand()%49)+1);
		}
}


int main()
{
	srand((unsigned int)time((time_t *)NULL));
	int j;
	for(j=0;j<3;j++)
		{ 
		losuj();
		printf("\n");;	
		}
	return 0;
}
0

chyba funkcja randomize();
włacza generator liczb losowych

randomize();
random(x);

chyba

0

chyba funkcja randomize();
włacza generator liczb losowych

randomize();
random(x);

To jest wlasne rozszerzenie Borlanda i poza Borlandem nie dziala. A srand() dziala prawie wszedzie (SVID 3, BSD 4.3, ISO 9899).

Sc0rpi0n: NULL jest "deprecated". Jesli piszesz w C++ to:

srand(time(0));

a nie:

srand((unsigned int)time((time_t *)NULL));

O polowe krocej i nikt sie nie przestraszy. :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1