Autor Tema: mod_rands  (Leído 3831 veces)

DCelso

  • Hero Member
  • *****
  • Mensajes: 3708
  • Karma: 181
Re: mod_rands
« Respuesta #15 en: Octubre 08, 2010, 03:53:56 pm »
Bueno, pues la he programado en bennu y parece que va bien y todo :D.
Código: [Seleccionar]
import "mod_say"
import "mod_time"
global
seed;
end
function srand(value)
begin
seed = value;
end

function rand()
begin
seed = seed * 214013 + 2531011;
return ( (seed >> 16) & 07fffh);
end

function rand_between(vstart, vend)
begin
return (rand() % (vend-vstart+1) +vstart);
end


process main()
private
i;
valor;
float media;
numeros = 1000;
begin

srand(time());
for (i=0;i<numeros;i++)
valor = rand();
say(valor);
media= media +valor;
end
media = media /numeros;
say("media:"+media);

media = 0;
for (i=0;i<1000;i++)
valor = rand_between(10,20);
say(valor);
media= media +valor;
end
media = media /numeros;
say("media:"+media);

end
Monstruos Diabólicos

"A PAck of classic GAMEs For BennuGD" en desarrollo
http://code.google.com/p/apagame4be/

Drumpi

  • Hero Member
  • *****
  • Mensajes: 6329
  • Karma: 162
  • Odio el periodo "entre proyectos"
    • La web de Drumpi
Re: mod_rands
« Respuesta #16 en: Octubre 08, 2010, 07:42:01 pm »
Yo he visto un generador de números aleatorios en hardware, que si está bien hecho es cíclico y se dan todos los números, a base de desplazamientos y puertas XOR, así que... ;D
Hala, como con 1001 procesos sólo va a 9 FPS, vamos a meterle 32 veces más, a ver si revienta.
(Drumpi epic moment)