首页 > 解决方案 > 迭代布尔值列表

问题描述

**我有一个名为 (a) 的列表,它保存布尔值,因此如果列表 (a) 中的每个项目值为真,我想实现一个 if 语句,如果列表 (a) 中的每个项目值为假,我想实现另一个 if 语句.

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;

我试过这个但它不起作用!1- foreach a [ x -> if ( x = true) [问药剂师 [做第一个 if 语句] 2- foreach a [ x -> if ( x = false) [问药剂师 [做第二个 if 语句]
;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;

我想在列表 (a) 中的每个布尔值处循环,并根据该值是真还是假执行 if 语句。**

标签: netlogo

解决方案


我不确定我是否完全理解您要执行的操作 - 您可能需要查看Asking Help以获得一些指导。注意评论:

请勿张贴代码、数据、错误消息等的图像 - 将文本复制或输入到问题中。请保留将图像用于图表或演示渲染错误,这些无法通过文本准确描述的事情。

另外,请查看有关制作最小、完整和可验证的示例的部分。这将帮助用户为您提供一个绝对适用于您的问题的有用答案。如果我在下面的回答没有帮助,我建议您制作一个玩具模型,作为您遇到的问题的工作示例。


如果您只想遍历true/false值的列表,我认为您走在正确的轨道上 - 请查看下面的非常简单的示例,该示例仅根据当前迭代值是true还是打印一条语句false

to setup
  ca

  let boolean-list [ true true true false true false false false ]

  foreach boolean-list [ 
    i ->
    ifelse i [
      print "Current item is true!"
    ] [
      print "Current item is false!"
    ]
  ]

  reset-ticks
end

推荐阅读