Программирование для начинающих с блоками
Глава 6
>
Уровень 3
Цель
Узнайте, хранятся ли ингредиенты в контейнерах, и объедините их, чтобы приготовить еду.
Вам нужно несколько ингредиентов, чтобы приготовить салат, но сначала их нужно собрать. Вы найдёте морковь, помидоры, салат и огурцы на поле, однако морковь и огурцы хранятся в хранилище. Соберите доступные предметы в саду справа.
Чтобы найти недостающие предметы, направляйтесь к золотым меткам X перед контейнерами и проверьте условие, чтобы узнать, хранится ли предмет в контейнере. Оказавшись на золотой метке X, поверните налево, чтобы лицом оказаться в коридоре для выполнения цикла. Используйте блок цикла for, чтобы сделать процесс сбора предметов быстрее и эффективнее; активируйте отключённый блок в редакторе блоков.

В ящиках в кладовой находятся предметы, которые представлены константой списка bag; в нём четыре (4) элемента, по одному для каждого ящика. Используйте блок цикла for с переменной x, которая меняется от 0 до 4. Внутри цикла расположены два блока if, проверяющие, содержится ли в константе bag «carrot» или «cucumber».

Перетащите блок in list из меню lists в блок comparison внутри блока if. Вставьте константу списка bag в первую ячейку, чтобы проверить, находятся ли элементы в ящиках; установите первый выпадающий список на get, а второй на #. Наконец, вставьте переменную x из меню Variables в последнюю ячейку. Этот набор блоков осуществляет поиск в списке bag по номеру цикла, заданному переменной x, который соответствует ящику, перед которым вы находитесь.

Эта последовательность блоков in list будет использоваться четыре (4) раза в двух блоках if. В первом блоке if поместите in list внутри блока comparison, установленного на =, и на блоке string напишите слово «cucumber». В блок collect вставьте ещё один in list, чтобы собрать огурец, если он присутствует в ящике.

Во втором блоке if используйте ту же структуру, что и в первом, но на блоке string напишите «carrot». Эти два блока if внутри цикла for заставят вашего персонажа пройти цикл проверки всех четырёх (4) ящиков на наличие «cucumber» или «carrot» и собрать их.

После того как вы соберёте все предметы, сохраните их в списке с именем items с помощью блока create empty list. Для этого используйте блок set variable, добавьте переменную items и вставьте блок create empty list из меню lists.

В редакторе есть неактивные блоки insert list для вставки элементов в список items. Активируйте их и вставьте числовые значения, соответствующие собранным предметам, отредактировав число в пузырьке в конце блока. Порядок элементов следующий: «carrots», «tomato», «lettuce», «cucumber» — вставьте соответствующие значения для каждого из них.

Наконец, пройдите к светлой метке X и объедините все предметы для блюда с помощью блока combine. Вставьте список items в блок combine, чтобы поместить все овощи в контейнер для салата и завершить уровень.