0
aNum
はパッチ固有の属性で、コードには ask patch 0 -5 [set aNum (aNum - 1)]
がありますが、パッチのaNumは-1に変更されています。属性の変更にコードが応答しません
これまでに割り当てられていたものがないことを確認し、代わりに1を減算する方法を教えてください。
ありがとうございました!
aNum
はパッチ固有の属性で、コードには ask patch 0 -5 [set aNum (aNum - 1)]
がありますが、パッチのaNumは-1に変更されています。属性の変更にコードが応答しません
これまでに割り当てられていたものがないことを確認し、代わりに1を減算する方法を教えてください。
ありがとうございました!
あなたの期待通りです。だから、なぜあなたはあなたが何を期待しているのか見ていないのです。その答えを見つけることを「デバッグ」といいます。デバッグを行う簡単な方法の1つは、print
ステートメントを使用して、プログラムのロジックを確認することです。例えば、
globals [testPatch]
patches-own [aNum]
to decrementANum [#patch]
ask #patch [set aNum (aNum - 1)]
end
to test
set testPatch patch 0 -5
repeat 5 [
let _before [aNum] of testPatch
decrementANum testPatch
print (word "before: " _before "; after: " [aNum] of testPatch)
]
end
は、一般的に、このような最小限の自己完結型の例を書き、話す(フラグ予期しないプログラム状態にerror
を使用することです。もう一つの方法は)より良い質問を行います。ほとんどの場合、例を作成しようとしている間にエラーが発生します。