RANDOMIZE initializes the RND function random number generator.
Syntax:RANDOMIZE([Number]) Parameters: |
RND returns, as a single precision float, a random value between 0.0 and 1.0.
Syntax:RetVal = RND Return Value:
Parameters:
|
RangeR.bas will emit a single precision float between the LowValue and HighValue entered on the command line.
' RangeR.bas ' Usage: RangeR LowValue HighValue RandomizerValue DIM RetVal! DIM hi!, lo!, rz! lo! = VAL(COMMAND$(1)) hi! = VAL(COMMAND$(2)) rz! = VAL(COMMAND$(3)) IF rz! = 0.0 THEN RANDOMIZE ELSE RANDOMIZE(rz!) END IF FOR INTEGER i = 1 TO 6 RetVal! = RangeR(lo!, hi!) PRINT RetVal! NEXT i FUNCTION RangeR! (low!, high!) IF (low! > high!) THEN DIM t! t! = low! low! = high! high! = t! END IF FUNCTION = (high! - low! + 1) * RND + low! END FUNCTION
C:\Dev\BCX>RangeR 9 27 13 21.05748 19.64941 9.756275 14.62314 17.23507 22.13492
RND2 returns, as a DOUBLE, a random value in a range between a specified lower and upper value. Lesser precision arguments, INTEGER, LONG, SINGLE are allowed.
Syntax:RetVal = RND2(LowerNumber AS DOUBLE, UpperNumber AS DOUBLE) Return Value:
Parameters: |
$BCXVERSION "8.2.2" DIM RetVal# RANDOMIZE TIMER FOR INTEGER i = 1 TO 6 RetVal# = RND2(10.0, 11.0) PRINT RetVal# NEXT i% PAUSE
10.6598205566406 10.9359741210938 11 10.666015625 10.8933410644531 10.6361999511719 Press any key to continue . . .