基本的な関数


※上記の広告は60日以上更新のないWIKIに表示されています。更新することで広告が下部へ移動します。


ここではよく使う関数、その使い方をアルファベット順に紹介する。
イタリック体の部分は適当に変更可。
関数名の後に ( ) がある場合は、その省略名でプログラミングできる。
なお、使用例は公式サイトのマニュアルから引用している。



フロー管理


ask

 使い方: ask 対象 [ 処理内容 ]
 単一、もしくは複数のエージェントに命令を出す際に使用する。

 使用例:
   ask turtles [ fd 1 ]
    ;; 全てのタートルが1歩進む
   ask patches [ set pcolor red ]
    ;; 全てのパッチの色を赤くする
   ask turtle 4 [ rt 90 ]
    ;; 4番目のタートルだけ向きを90度変える

end

 使い方: to 名前 処理内容 end
 to、to-reportの最後に使用する。toを参照。

if

 使い方: if 条件 [ 処理内容 ]
 条件文が真のときのみ処理内容を実行する。

ifelse

 使い方: if 条件 [ 処理内容1 ] [ 処理内容2 ]
 条件文が真のときに処理内容1、偽のときに処理内容2が実行される。

repeat

 使い方: repeat 回数 [ 処理 ]
 回数分だけ処理を繰り返す。

set

 使い方: set 変数 [ 値 ]
 変数に値を代入する際に使用する。 

to

 使い方: to 名前 処理内容 end
 新しい処理(C言語で言うサブルーチン)を記述する際に使用する。


to-report

 使い方: to-report [引数] 名前
      処理内容 report 返り値 end
 to同様、新しい処理を記述する際に使用する。
 こちらは引数が利用可能、返り値を必要とする。

while

 使い方: while 条件 [ 処理内容 ]
 条件文が真の間、処理内容が実行される。


タートル関連

back (bk)

 使い方: back
 数の分だけタートルを後退させる。数がマイナスの場合は前進する。forwardも参照。

create-turtles (crt)

 使い方: create-turtles
 数の分だけ新しくタートルを作り出す。

distance

 使い方: distance エージェント
 指定したエージェントとの距離を計算する。

 使用例:
   ask turtles [ show max-one-of turtles [distance myself] ]
    ;; 各タートルに、自分から一番遠いタートルを表示させる

forward (fd)

 使い方: back
 数の分だけタートルを前進させる。数がマイナスの場合は後退する。backも参照。

left (lt)

 使い方: left 角度
 角度の分だけ左に回転する。角度がマイナスの場合は右に回転する。rightも参照。

random-xcor / random-ycor

 使い方: random-xcor / random-ycor
 2D画面内の座標をランダムに返す。random-pxcor / random-pycor も参照。

 使用例:
   ask turtles [
    ;; 各タートルをランダムな位置に配置する
    setxy random-xcor random-ycor
    ]

right (rt)

 使い方: right 角度
 角度の分だけ右に回転する。角度がマイナスの場合は左に回転する。leftも参照。


演算関連

random

 使い方: random 数字
 0から数字までの整数をランダムに返す。


2D画面

clear-all (ca)

 画面を全て消去する際に使用する。

clear-patches (cp)

 パッチのみを初期化、画面から消去する。

clear-turtles (ct)

 タートルのみを初期化、画面から消去する。


キーワード

 各処理を書く前、プログラムの冒頭でのみ使用できる。

breed

 使い方: breed 複数形 単数形
 ブリード(タートルを種類別に分けるもの)を定義する際に使用する。
 最初の引数にはブリードの複数形の名前、次は単数形の名前を指定する。

 使用例:
   breed [mice mouse]
   breed [frogs frog]

   to setup
    clear-all
    create-mice 50
    ask mice [ set color white ]
    create-frogs 50
    ask frogs [ set color green ]
    show [breed] of one-of mice ;; prints mice
    show [breed] of one-of frogs ;; prints frogs
   end

extensions

 使い方: extensions [ 拡張機能名 ... ]
 拡張機能を使用する際に使用する。拡張機能参照。

globals

 使い方: globals [ 変数 ... ]
 グローバル変数を定義する際に使用する。

turtles-own / <breeds>-own / patches-own

 使い方: turtles-own [ 変数 ... ]
      <breeds>-own [ 変数 ... ]
      patches-own [ 変数 ... ]
 各タートル、ブリード、パッチにそれぞれ変数を持たせる際に使用する。
 <breeds> 内にはそのプログラム内で定義したブリード名を入れる。


その他

show

 使い方: show 変数
 コマンドセンターに変数の値を出力する。

;

 コメントを挿入する際に使用する。つけた部分から行末までがコメントとなる。

ツールボックス

下から選んでください:

新しいページを作成する
ヘルプ / FAQ もご覧ください。