関数定義
Last-modified: 2019-01-27 (日) 03:36:55 (1518d)
StarLogoでも呼び出し元へ値を返す手続きを定義する事ができます。 この様な手続きを「関数:Function」と呼びます。 値を返す方法 †StarLogoの手続きが手続きの呼び出し元に対してなんらかの値を返す ためには、 output 命令を利用します。つまり、 to 手続きF ・・・ output 値 end の様に書くことで、手続きFを利用している呼び出し元の手続きに値が 返り、その値を表示したり、変数に代入したりできます。 簡単な関数定義 †2つの引数を足し算した結果を返す plus 関数 †StarLogoにはもともと足し算を行う演算子 + が存在しますからわざわざ 定義する必要もないものですが、もっとも単純な例としてあげておきます。 to plus :x :y output (:x + :y) end これを確かめるためには、Control CenterウィンドウののObserver Command Center のエリア内で、showコマンドを利用します。 累乗(MのN乗)を計算した結果を返す power 関数 †再帰的に定義された関数も問題なく定義し、実行できます。 to power :m :n ifelse :n < 1 [ output 1 ][ output (:m * (power :m (:n - 1))) ] end plus関数と同じように確認してみます。
Counter: 385,
today: 1,
yesterday: 0
|