Netlogo 如何创建和打印数组
我想创建一个数组调用Jobarray的列表,但是,当我尝试这样做时,netlogo返回以下错误:Netlogo 如何创建和打印数组,netlogo,Netlogo,我想创建一个数组调用Jobarray的列表,但是,当我尝试这样做时,netlogo返回以下错误: Extension exception: not an array: 0 error while job 470 running ARRAY:ITEM called by procedure JOBLIST called by procedure PLACE-JOBS called by procedure SETUP called by Button 'Setup' 这是
Extension exception: not an array: 0
error while job 470 running ARRAY:ITEM
called by procedure JOBLIST
called by procedure PLACE-JOBS
called by procedure SETUP
called by Button 'Setup'
这是我的密码
to setup
ca
place-jobs
print Jobarray
reset-ticks
end
to set-job-index
let columns 3
let rows-job Number-Of-Jobs set
Jobarray array:from-list n-values rows-job [array:from-list n-values columns [0]]
end
to Joblist [#col #row #val]
array:set (array:item Jobarray #row) #col #val
end
to draw-pods
;draw pods area
ask patches with [(pxcor mod 4 = 2 or pxcor mod 4 = 3) and (pycor mod (Pod-size + 2) > 1 and pycor < (max-pycor - 4))]
[
sprout 1
[
set shape "square"
set color blue
stamp
die
]
set meaning "pods"
]
end
to place-jobs
let Job-index 0 ;; row of list; 0 == 1
ask n-of (Number-Of-Jobs) patches with [meaning = "pods"]
[
sprout-jobs 1
[
Joblist 0 Job-index who
Joblist 1 Job-index pxcor
Joblist 2 Job-index pycor
set Job-index (Job-index + 1)
set shape "square"
set color pink
set job-value 1
stamp
; die
]
set meaning "jobs"
set Jobnum (count jobs-on patches with [meaning = "jobs"])
]
end
设置
ca
安排工作
打印作业数组
重置滴答声
结束
设置作业索引的步骤
让我们看第3列
设置作业的行数
Jobarray数组:来自列表n值行job[数组:来自列表n值列[0]]
结束
到工作列表
数组:集合(数组:项目作业数组#行)#列#值
结束
画豆荚
;绘制吊舱区域
使用[(pxcor mod 4=2或pxcor mod 4=3)和(pycor mod(Pod size+2)>1和pycor<(max pycor-4))]询问补丁程序
[
萌芽1
[
设置形状为“方形”
设置颜色为蓝色
邮票
死亡
]
集意为“豆荚”
]
结束
安排工作
让作业索引为0;;列表行;0 == 1
使用[means=“pods”]询问n个(作业数量)修补程序
[
萌芽工作1
[
工作列表0工作索引谁
作业列表1作业索引pxcor
作业列表2作业索引pycor
设置作业索引(作业索引+1)
设置形状为“方形”
设置颜色为粉红色
将作业值设置为1
邮票
死亡
]
设置“工作”的含义
设置Jobnum(使用[means=“jobs”]统计修补程序上的作业)
]
结束
有人能帮我解释一下为什么以及如何修复它吗?我在谷歌和字典上都试过了,但还是不明白为什么。
真诚地
Minh看起来好像未初始化
Jobarray
。我想您在创建代理时忘记调用set job index
。看起来Jobarray
没有初始化。我想你在创建代理时忘了调用set job index
。没问题!确保答案正确,让其他人知道这个问题已经回答了。没问题!确保将答案标记为正确,以便其他人知道此问题已得到回答。