积木编程入门
第 6 章
>
第 3 级
目标
查找是否有食材存储在容器中并将它们组合以制作食物。
你需要若干种食材才能制作沙拉,但首先需要将它们收集起来。你会在田野中发现胡萝卜、西红柿、生菜和黄瓜,但是胡萝卜和黄瓜被存放在储藏室里。先收集花园右侧能抓到的物品。
为了找到缺少的食材,前往黄金 X 标记处,这些标记在容器前,检测条件以检查物品是否存储在容器中。到达黄金 X 标记后向左转面向走廊以执行循环。使用一个 for 循环块来加快并提高收集物品的效率,在积木编辑器中启用被禁用的积木块。

储藏室里的箱子里有物品,这些物品由名为 bag 的列表常量表示,它包含四(4)个项目,每个箱子对应一个项目。使用带有变量 x 的 for 循环块,让 x 从 0 到 4。在循环内部,你需要两个 if 块来检查 bag 常量中是否包含 "carrot" 或 "cucumber"。

将 lists 菜单中的 in list 块拖放到 if 块内部的 comparison 块中。在第一个插槽中插入 bag 列表常量,以检查物品是否在箱子里,将第一个下拉菜单设置为 get,第二个下拉菜单设置为 #。最后从 Variables 菜单中插入 x 变量并放入最后一个插槽。这样一串积木的作用是根据循环中 x 变量所指示的周期数来搜索 bag 列表,从而对应当前面向的箱子。

这段 in list 积木序列将在两个 if 块中各使用两次。在第一个 if 块中,将 in list 放到设置为 = 的 comparison 块内部,并在 string 块中输入 "cucumber"。在 collect 块中再插入一个 in list 以便在箱子中存在黄瓜时收集它。

在第二个 if 块中,使用与第一个相同的结构,但在 string 块中输入 "carrot"。这两个 if 块位于 for 循环内部,可使角色循环检查所有四(4)个箱子,搜索是否含有 "cucumber" 或 "carrot" 并收集它们。

收集完所有物品后,使用 create empty list 块将它们存储在名为 items 的列表中。使用 set variable 块,将 items 变量设置为来自 lists 菜单的 create empty list。

在编辑器中,有未启用的 insert list 块可用于将物品插入 items 列表。激活它们,并通过编辑块末尾的数字气泡,将所收集物品对应的数值插入。物品的顺序如下:“carrots”、“tomato”、“lettuce”、“cucumber”,依次插入对应的数值。

最后,走到浅色 X 标记处,使用 combine 块将所有物品组合成一顿饭。将 items 列表插入 combine 块,以便将所有蔬菜放入沙拉容器并完成关卡。