Juan:
No es en Cobol400…  alguien me lo envió, no sé de donde salió, pero sirve.
Saludos
Ignacio T

0001.00      C           *ENTRY    PLIST
0002.00      C                     PARM           RANNBR  90
0003.00      C                     PARM           LOVAL   90
0004.00      C                     PARM           HIVAL   90
0005.00      C                     PARM           PGMEND  4
0006.00      C                     PARM           STRVAL  90
0007.00      C           LOVAL     IFLT 0
0008.00      C                     SETON                     H1
0009.00      C                     GOTO BADEND
0010.00      C                     END
0011.00      C           HIVAL     IFLE LOVAL
0012.00      C                     SETON                     H2
0013.00      C                     END
0014.00      C           PGMEND    IFNE '*YES'
0015.00      C           PGMEND    ANDNE'*NO '
0016.00      C                     SETON                     H3
0017.00      C                     GOTO BADEND
0018.00      C                     END
0019.00      C           FSTTIM    IFEQ ' '
0020.00      C                     TIME           TIME    60
0021.00      C                     Z-ADDTIME      BGNVAL  90
0022.00      C           PGMEND    IFEQ '*YES'
0023.00      C           HIVAL     SUB  LOVAL     NBR1
0024.00      C           NBR1      IFLE 1
0025.00      C                     MOVE TIME      DEC1    10
0026.00      C           1         ADD  NBR1      RANGE   30
0027.00      C                     Z-ADDDEC1      RANNBR
0028.00      C           NBR1LP    TAG
0029.00      C           RANNBR    IFGE RANGE
0030.00      C                     SUB  RANGE     RANNBR
0031.00      C                     GOTO NBR1LP
0032.00      C                     END
0033.00      C                     ADD  LOVAL     RANNBR
0034.00      C                     GOTO ENDPGM
0035.00      C                     END
0036.00      C                     END
0037.00      C           STRVAL    IFEQ 0
0038.00      C                     ELSE
0039.00      C                     Z-ADDSTRVAL    BGNVAL
0040.00      C                     END
0041.00      C                     MOVE 31415     PI      54
0042.00      C           BGNVAL    MULT PI        NBR1    90
0043.00      C                     MOVE 'X'       FSTTIM  1
0044.00      C                     END
0045.00      C           HIVAL     SUB  LOVAL     MAX    134
0046.00      C                     ADD  1         MAX
0047.00      C                     SUB  DECVAL    MAX
0048.00      C                     MOVE 314159265 PI2     98
0049.00      C           NBR1      MULT PI2       NBR2   157
0050.00      C           NBR2      DIV  17        NBR3   154
0051.00      C                     Z-ADDNBR3      NBR4   153
0052.00      C                     MOVE NBR4      DEC4    44
0053.00      C           PGMEND    IFEQ '*YES'
0054.00      C                     MOVE NBR3      DEC5    53
0055.00      C                     ADD  DEC5      NBR4
0056.00      C                     END
0057.00      C                     MOVE DEC4      DECVAL  66
0058.00      C                     MOVE NBR4      NBR5    90
0059.00      C           NBR5      DIV  MAX       NBR6   150
0060.00      C                     MVR            RANNBR  90
0061.00      C                     ADD  LOVAL     RANNBR
0062.00      C           ENDPGM    TAG
0063.00      C           PGMEND    IFEQ '*NO '
0064.00      C                     MOVE NBR2      WRK1   101
0065.00      C                     ADD  WRK1      NBR1
0066.00      C                     MOVE NBR3      WRK2   112
0067.00      C                     ADD  WRK2      NBR1
0068.00      C                     ELSE
0050.00      C           NBR2      DIV  17        NBR3   154
0051.00      C                     Z-ADDNBR3      NBR4   153
0052.00      C                     MOVE NBR4      DEC4    44
0053.00      C           PGMEND    IFEQ '*YES'
0054.00      C                     MOVE NBR3      DEC5    53
0055.00      C                     ADD  DEC5      NBR4
0056.00      C                     END
0057.00      C                     MOVE DEC4      DECVAL  66
0058.00      C                     MOVE NBR4      NBR5    90
0059.00      C           NBR5      DIV  MAX       NBR6   150
0060.00      C                     MVR            RANNBR  90
0061.00      C                     ADD  LOVAL     RANNBR
0062.00      C           ENDPGM    TAG
0063.00      C           PGMEND    IFEQ '*NO '
0064.00      C                     MOVE NBR2      WRK1   101
0065.00      C                     ADD  WRK1      NBR1
0066.00      C                     MOVE NBR3      WRK2   112
0067.00      C                     ADD  WRK2      NBR1
0068.00      C                     ELSE
0069.00      C                     SETON                     LR
0070.00      C                     END
0071.00      C                     RETRN
0072.00      C           BADEND    TAG

De: [email protected] 
[mailto:[email protected]] En nombre de Juan Ramón Garcia
Enviado el: miércoles, 17 de septiembre de 2014 9:25
Para: [email protected]; forum.help400
Asunto: Re: Números aleatorios en COBOL400

Muchas gracias Marcelo pero busco algo un poco más elaborado.

El 17 de septiembre de 2014, 14:14, Marcelo Diaz 
<[email protected]<mailto:[email protected]>> escribió:
Hice una rutina que tomaba la datetime y agarraba los ultimos 6 digitos ...

El 17 de septiembre de 2014, 9:01, Juan Ramón Garcia 
<[email protected]<mailto:[email protected]>> escribió:
Hola a tod@s:
Tengo un pequeño problemilla, necesito generar un nº aleatorio en COBOL400 (NO 
ILE) y no puedo utilizar CEERAN0.
He encontrado varios ejemplos en San Google pero ninguno me funciona, o son 
para COBOL-II o para ILE o simplemente no funcionan.
¿Alguien tiene una rutinilla en COBOL400 que calcule números aleatorios?
Muchas gracias.
Un saludo.

Juanra
El iSaurio RpgEro que se convirtió en CobolEro ;-)

____________________________________________________
Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd )
Forum.Help400 © Publicaciones Help400, S.L.


____________________________________________________
Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd )
Forum.Help400 © Publicaciones Help400, S.L.


-----------------------------------------------------------------
Notice of Confidentiality: The information transmitted is intended only for the 
sender and person or entity to which it is addressed and may contain 
confidential and/or privileged material. Any review, e-transmission, 
dissemination or other use of, or taking of any action in reliance upon, this 
information by persons or entities other than the intended recipient is 
prohibited.
If you received this in error, please contact the sender immediately by return 
electronic transmission and then immediately delete this transmission, 
including all attachments, without copying, distributing or disclosing same.
------------------------------------------------------------------
Aviso de Confidencialidad: Este correo electrónico y/o el material adjunto es 
para uso exclusivo del emisor y la persona o entidad a la que expresamente se 
le ha enviado, y puede contener información confidencial o material 
privilegiado. Si usted no es el destinatario legítimo del mismo, por favor 
repórtelo inmediatamente al remitente del correo y bórrelo.
Cualquier revisión, retransmisión, difusión o cualquier otro uso de este 
correo, por personas o entidades distintas a las del destinatario legítimo, 
queda expresamente prohibido. Este correo electrónico no pretende ni debe ser 
considerado como constitutivo de ninguna relación legal, contractual o de otra 
índole similar.
____________________________________________________
Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd )
Forum.Help400 © Publicaciones Help400, S.L.

Responder a