Números Aleatorios
¿Como podemos obtener números aleatorios en Cobol ?. Bien, aunque no exista ninguna orden al respecto, podremos nosotros crearnos un algoritmo partiendo de alguna variable que varie constantemente y nada mejor para ello que la hora del sistema. ¿Como lo haríamos?

En la Working, creariamos una variable de 8 dígitos para guardar la hora y la subdividimos en 4 variables de 2 dígitos, para la hora, minutos, segundos y milisegundos. Y otra para guardar el número aleatorio.

WORKING-STORAGE SECTION.
01  HORARIO PIC 9(8).
01  HORA REDEFINES HORARIO.
     02  HH  PIC 99.
     02  HM  PIC 99.
     02  HS  PIC 99.
     02  HX  PIC 99.
01  NUMERO PIC 9(6).

Ahora en la Procedure aplicamos el algoritmo. 

PROCEDURE DIVISION.
ALEATORIO.
     ACCEPT HORARIO FROM TIME.
     COMPUTE NUMERO = (HH * HX) / HM + HS.

Por supuesto, podremos ampliar la fórmula o incluir mas variables, como la fecha, el dia del año, etc ...

También tenéis en las Rutinas de números, una de nuestro amigo Jose Carlos Florán mucho mejor y que nos permite definir valores máximos y mínimos.



Este artículo proviene de Cobol en español
http://www.escobol.com

La dirección de esta noticia es:
http://www.escobol.com/modules.php?name=Sections&op=viewarticle&artid=79