Вопрос:

Дан алгоритм для исполнителя Робот и исходная обстановка. Укажите количество клеток, которые будут закрашены и в какой клетке окажется Робот в результате работы алгоритма.

Ответ:

Решение:

Робот начинает в клетке B2. Алгоритм закрашивает текущую клетку, затем выполняет цикл, двигаясь вправо, пока есть свободное место. После этого он поднимается на клетку вверх и снова пытается двигаться вправо.

Шаг 1: Робот в B2. Закрашивает B2. Снизу свободно, справа свободно. Движется вправо в C2. Закрашивает C2. Снизу свободно, справа свободно. Движется вправо в D2. Закрашивает D2. Снизу свободно, справа свободно. Движется вправо в E2. Закрашивает E2. Снизу свободно, справа свободно. Движется вправо в F2. Закрашивает F2. Снизу свободно, справа свободно. Движется вправо в G2. Закрашивает G2. Снизу свободно, справа свободно. Движется вправо в H2. Закрашивает H2. Снизу свободно, справа свободно. Движется вправо в I2. Закрашивает I2. Снизу свободно, справа занято. Иначе: вверх. Робот в I3. Слева свободно. Движется влево в H3. Закрашивает H3. Снизу свободно, справа свободно. Движется вправо в I3. Закрашивает I3. Снизу свободно, справа занято. Иначе: вверх. Робот в I4. Слева свободно. Движется влево в H4. Закрашивает H4. Снизу свободно, справа свободно. Движется вправо в I4. Закрашивает I4. Снизу свободно, справа занято. Иначе: вверх. Робот в I5. Слева свободно. Движется влево в H5. Закрашивает H5. Снизу свободно, справа свободно. Движется вправо в I5. Закрашивает I5. Снизу свободно, справа занято. Иначе: вверх. Робот в I6. Слева свободно. Движется влево в H6. Закрашивает H6. Снизу свободно, справа свободно. Движется вправо в I6. Закрашивает I6. Снизу свободно, справа занято. Иначе: вверх. Робот в I7. Слева свободно. Движется влево в H7. Закрашивает H7. Снизу свободно, справа свободно. Движется вправо в I7. Закрашивает I7. Снизу свободно, справа занято. Иначе: вверх. Робот в I8. Слева свободно. Движется влево в H8. Закрашивает H8. Снизу свободно, справа свободно. Движется вправо в I8. Закрашивает I8. Снизу свободно, справа занято. Иначе: вверх. Робот в I9. Слева свободно. Движется влево в H9. Закрашивает H9. Снизу свободно, справа свободно. Движется вправо в I9. Закрашивает I9. Снизу занято, справа занято. Вверх. Робот выходит за пределы поля.

Робот закрасил все клетки от B2 до I2, затем от H3 до I3, от H4 до I4, от H5 до I5, от H6 до I6, от H7 до I7, от H8 до I8, от H9 до I9. Всего 8 + 2*7 = 22 клетки.

Ответ: Робот окажется вне поля, будет закрашено 22 клетки.