2015-10-14 111 views
1

我试图将列表作为参数集传递给报告函数。下面是一个简单的例子。将列表的元素作为参数传递给NetLogo中的报告函数

Globals 
[a 
list_of_list] 

to setup 
ca 
set list_of_list (list (list 1 2) (list 3 4)) 
end 

to go 
set a function list_of_list 
end 

to-report function [arg1] 
report (map add arg1) 
end 

to-report add [arg1 arg2] 
report arg1 + arg2 
end 

但是我收到以下错误。

task expected 2 inputs, but only got 1 error while observer running MAP called by procedure F called by procedure SETUP called by Command Center

我期待通过列表的元素作为函数的参数后,得到的答复是[3 7]。

我正在处理的真正的任务是更深入的嵌套列表更复杂,但这段代码给出了我想要做的事情的想法。我应该考虑使用Matrix扩展来更轻松地处理嵌套列表吗?

回答

0

更改add功能

to-report add [lst] 
report reduce + lst 
end 
+0

我提供的代码只是我正在处理的任务的一个简单示例。所以我实际上并没有使用add函数。我试图传递一个列表元素的函数实际上比这里的'add'函数复杂得多。 – user3887089

相关问题