HSPルーム

1-1.関数って便利?

HSP3.0

関数とは

関数は、とても便利な機能です。
命令と同じように使うことができますが、「戻り値」というものがあるので、面白い使い方もできます。
基本的に、関数は、命令と変わりません。

戻り値

関数を使うと、関数に与えた値が加工されて戻ってきます。これを、「戻り値」といいます。
「関数に与える値」とは、命令のパラメータのことです。
ちなみにこの値のことを「引数」(ひきすう)といいます。
関数は、変数に代入する形で使います。

関数
	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関数はゲームを作る際必要不可欠です。