34 lines
603 B
Text
34 lines
603 B
Text
PROGRAM RNG
|
|
|
|
!$DOUBLE
|
|
|
|
DIM CARDS%[52]
|
|
|
|
PROCEDURE XRANDOM(SEED->XRND)
|
|
POW31=2^31
|
|
POW16=2^16
|
|
SEED=SEED*214013+2531011
|
|
SEED=SEED-POW31*INT(SEED/POW31)
|
|
XRND=INT(SEED/POW16)
|
|
END PROCEDURE
|
|
|
|
PROCEDURE YRANDOM(SEED->YRND)
|
|
POW31=2^31
|
|
SEED=SEED*1103515245+12345
|
|
SEED=SEED-POW31*INT(SEED/POW31)
|
|
YRND=SEED
|
|
END PROCEDURE
|
|
|
|
BEGIN
|
|
PRINT(CHR$(12);)
|
|
SEED=0 PRINT("BSD:")
|
|
FOR I%=1 TO 10 DO
|
|
YRANDOM(SEED->YRND)
|
|
PRINT(TAB(10);YRND)
|
|
END FOR
|
|
SEED=0 PRINT("MSD:")
|
|
FOR I%=1 TO 10 DO
|
|
XRANDOM(SEED->XRND)
|
|
PRINT(TAB(10);XRND)
|
|
END FOR
|
|
END PROGRAM
|