[Batch] Sabeis en que se basa el numero aleatorio de la variable %random%?

Iniciado por moikano→@, 14 Diciembre 2010, 12:51 PM

0 Miembros y 1 Visitante están viendo este tema.

Germaniac

Parece ser que la semilla random si se basa el hora y fecha porque probando con este batch:

@echo off
for /l %%i in (1,1,100) do cmd /c echo.%%random%% %%time%%
pause


La salida que produce es algo similar a esto:

27481  5:38:52,89
27481  5:38:52,95
27484  5:38:53,01
27484  5:38:53,09
27484  5:38:53,15
27484  5:38:53,23
27484  5:38:53,29
27484  5:38:53,82
27484  5:38:53,90
27484  5:38:53,96
27487  5:38:54,03
27487  5:38:54,09
27487  5:38:54,15
27487  5:38:54,23
Presione una tecla para continuar . . .


Donde se puede ver que el valor del random va cambiando conforme los segundos.

Ó tambien pueden probar ejecutando el siguiente batch:

@echo off
for /l %%i in (0) do cmd /c echo.%%random%% %%time%%


E ir cambiando la hora y la fecha del sistema y veran que existe algo de relación con el valor que da el random.

Referencia: http://blogs.msdn.com/b/oldnewthing/archive/2010/06/17/10026183.aspx