RND - [数値] |
||||||
… 乱数値の取得
RND
A=RND%10+1
0から65535までの整数の乱数を発生します。
通常は、書式に示した例のように使用します。この例では、1〜10の乱数が発生します。
乱数の発生順は固定されています。
乱数の発生順を予測できないようにするには、実行時の時間を加算する、ループを使用して不定回数RNDを実行する、などの方法があります (サンプル参照)。
REM 944BASIC 'RND サンプル'
COLORBG 0,0,0:COLORFG 0,255,0
FONT 48:CLS
REM 入れ子(ネスト)も可能
FOR I=0 TO 31
A=''
FOR J=0 TO 59
REM RNDだけでは、乱数の順番が固定されるので、TIMEを足して、より不規則化する
R=RND+TIME%10:R=STR(R)
A=STRCAT(A,R)
NEXT J
PRINT A
NEXT I
KEYWAIT
(サンプル 2)
REM 944BASIC 'RND サンプル2'
REM ランダムシード - RNDを不定回数繰り返して、より不規則化する
FOR I=(TIME%60)
R=RND
NEXT I
R=RND+TIME%20 :REM TIMEを加算して、より乱数度を高める
FOR I=1 TO 20
PRINT 'FOR 〜 NEXT ';
PRINT I;
PRINT ' 回目'
REM 変数 I を強制的に終了値にして、ループを抜ける
IF I=R THEN PRINT 'STOP': I=20
NEXT I
KEYWAIT
END
RND - [数値] |