Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Информатика 8 класс Яндекс учебник

Даша Гоу Ученик (99), открыт 2 недели назад
Помогите, пожалуйста с информатикой?
Задача № 1 Робот находится в прямоугольнике. Если над роботом нет стены, он должен сделать один шаг наверх, а иначе — покрасить клетку, в которой он находится.
Поле

move_left() Сделать шаг влево
move_right() Сделать шаг вправо
move_up() Сделать шаг вверх
move_down() Сделать шаг вниз
fill_cell() Закрасить клетку
free_from_up() Проверить, свободно ли сверху
free_from_down() Проверить, свободно ли снизу
free_from_left() Проверить, свободно ли слева
free_from_right() Проверить, свободно ли справа
wall_from_up() Проверить, есть ли стена сверху
wall_from_down() Проверить, есть ли стена снизу
wall_from_left() Проверить, есть ли стена слева
wall_from_right() Проверить, есть ли стена справа
cell_is_filled() Проверить, закрашена ли клетка
cell_is_clean() Проверить, чиста ли клетка
3 ответа
Ваня Дулин Гуру (3873) 2 недели назад
А на информатике компов нет?
Аянами Рей Мыслитель (5875) 2 недели назад

Объяснение:

Этот код использует цикл while True, который будет выполняться до тех пор, пока не будет достигнуто условие выхода из цикла (команда break).

Внутри цикла происходит следующее:

if wall_from_up():: Проверяется, есть ли стена сверху от текущей клетки.

fill_cell(): Если стена сверху есть (условие истинно), то текущая клетка закрашивается.

break: После закрашивания клетки происходит выход из цикла.

else:: Если стены сверху нет (условие wall_from_up() ложно), то выполняется блок else.

move_up(): Робот перемещается на одну клетку вверх.

Таким образом, робот будет подниматься вверх, пока не достигнет стены сверху. Как только он достигнет стены, он закрасит текущую клетку и завершит выполнение программы.
Похожие вопросы