RE:generar números aleatorios en C
Hola... aqui te mando un generador de numeros aleatorios que utiliza el metodo multiplicativo congruencial para generar tanto numeros enteros como en el intervalo [0,1), espero que te sirva, es una opcion mas ya que toma los parametros que utiliza IBM para sus generadores y la semilla la toma del reloj del sistema lo cual hace el proceso mas azaroso... si quieres investigar mas sobre este tema lo encuentras bajo el tema generador de numeros aleatorios por el metodo multiplicativo congruencial.... generalmente en libros de simulacion o investigacion de operaciones, creo que viene en el de probabilidad y estadistica de Jay, L. Devore.... saludos y a para bien sirva...
#include <time.h>
#include <stdio.h>
#include <dos.h>
#include <conio.h>
#include <math.h>
void main(void)
{
time_t t;
double m, a, x, u, y;
int i, n;
t = time(NULL); // Mas parametros
a = 16807; // Parametros del generador...
m = 2147483647; //Otro parametro, no se cansan?
clrscr();
printf("La semilla del proceso es %ld\n", t);
printf ("Cuantos n£meros quieres generar?: ");
scanf ("%d", &n);
x = 1.0 * t;
i = 1;
while(i <= n)
{
x = a * x + m;
x = fmod(x, m);
u = x / m;
printf("%d El entero aleatorio es %.0f y el fracionario %.4f\n", i, x, u);
i++;
}
}