2

3 つの手順のいずれかをランダムに選択するにはどうすればよいですか?

下記を参照してください:

to move
   ifelse random-float 100 < 70 
   [move-forward]
   [move-left move-right move-back] ;; To randomly select one of these 3 procedures to execute.
end

ありがとうございました。私は構文にかなり慣れていません。

4

2 に答える 2

8

ネットロゴ 6:

run one-of (list [-> move-left]
                 [-> move-right]
                 [-> move-back])

ネットロゴ 5:

run one-of (list task move-left
                 task move-right
                 task move-back)
于 2012-03-12T16:29:59.107 に答える
3

あまりエレガントではないかもしれませんが、うまくいくかもしれません:

to move
  ifelse random-float 100 < 70 
  [move-forward]
  [let n random 3
    ifelse n = 0
    [move-left]
    [ifelse n = 1
      [move-right]
      [move-back]]]
end
于 2012-03-11T22:05:24.203 に答える