関数は、とても便利な機能です。
命令と同じように使うことができますが、「戻り値」というものがあるので、面白い使い方もできます。
基本的に、関数は、命令と変わりません。
関数を使うと、関数に与えた値が加工されて戻ってきます。これを、「戻り値」といいます。
「関数に与える値」とは、命令のパラメータのことです。
ちなみにこの値のことを「引数」(ひきすう)といいます。
関数は、変数に代入する形で使います。
hensuu = rnd(10) //0〜9までの数
mes hensuu
stop
関数のパラメータは()でくくります。
rnd関数のp1には、ランダムに出す数を指定します。
「0〜p1-1」の数がランダムで返されます。(これを乱数といいます。)
関数を、命令のパラメータとして使うこともできます。
repeat 10
mes rnd(6) + 1 //1〜6までの数
loop
stop
rnd関数は、「0〜p1-1」の数が返されます。
つまりrnd(6)としても0〜5までの範囲しか出てこないのです。
1〜6まで出すようにするには、あとから1を足してやるしかありません。rnd(6) + 1はこのためです。
通常、rnd関数でえられる乱数は、決まったパターンです。
そのパターンを変更するには、randomize命令を使います。
randomize //パターン初期化
repeat 10
mes rnd(6) + 1 //1〜6までの数
loop
stop
これでサイコロプログラムができました。
rnd関数はゲームを作る際必要不可欠です。