2017-06-01 192 views
1

我有一个包含能与两个条目本身列表元素的列表:的NetLogo:总结列表的第一个元素在一个列表

list1的[[15,W1] [20,W2] [30, W3号] ...]

现在,在不同的功能,我想包括第一元素的总和在每个名单列表1中(即15 + 20 +30 ...)

什么我试过是

let weigh_dem (t_d_f * price_w) - (sum (foreach list1 [[a b] -> a])) 

但我得到错误信息“预计记者。

由于我是netlogo的新手,我很乐意就此获得建议,如果以前有关于此的帖子我没有看到,我很乐意获得提示!谢谢!

回答

3

您正在寻找map而不是foreach。它的工作原理与foreach几乎相同,只是它将结果返回列表中(而foreach只是执行列表中每个项目的命令)。此外,在list1上使用foreachmap时,匿名程序的参数将成为包含这两项的列表。所以你需要使用first来获得第一个项目:

let weigh_dem t_d_f * price_w - sum map [ pair -> first pair ] list1 
+0

非常感谢,这工作! – derheine

+2

没问题!确保标记答案正确,以便其他人知道这个问题已被回答。 –

相关问题