Практическая работа по информатике. Исполнитель Робот

Практическая работа по информатике. Исполнитель Робот

Исполнитель Робот

Среда программирования КуМир

Часто на уроках  и в задании 20.1 ОГЭ по информатике требуется исполнителем «Робот» спускаться или подниматься по лестнице. Надо понимать, что спуск или подъем по лестнице осуществляется одним циклом. Как правило, чтобы проверить работоспособность алгоритма необходимо добавлять ступени на лестнице. Алгоритм должен выполнятся независимо от количества ступеней, например, как для двух ступеней, так и для двадцати.

ЗАДАЧА

На бесконечном поле имеется горизонтальная стена, бесконечно продолжается влево и заканчивается лестницей, которая спускается слева направо. Высота каждой ступени — две клетки, ширина — две клетки. Робот находится на горизонтальной стене для спуска по лестнице. На рисунке указан один из способов расположения лестницы и Робота( Робот обозначен символом ).

Исполнитель Робот лестница

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

Например, для приведенного выше рисунка Робот должен закрасить клетки:

исполнитель робот лестница результат конечный результат

Конечное расположение Робота может быть произвольным. Алгоритм должен решать задачу для произвольного размера поля и любого количества ступеней. При исполнении алгоритма Робот не должен разрушиться.

РЕШЕНИЕ

Данную задачу будем решать в среде программирования КуМир. Откроем программу и перейдем в меню Робот — > Редактировать обстановку

исполнитель робот редактировать обстановку

Строим лестницу. тЛевой кнопкой мыши щелкаем по стенкам клетки. Ромб (робот) перемещаем в нужное место, зажав левую кнопку мыши

Исполнитель Робот лестница

 

Выходим из режима редактирования меню Робот — > Редактировать обстановку. Далее напишем на первой строчке команду «использовать Робот».

исполнитель робот команда использовать робот

Сначала вспомним некоторые команды для исполнителя Робот.

№ п/п Команда Обозначение
1 нц начало цикла
2 кц конец цикла
3 закрасить закрашиваетcя клетка
4 вверх, вниз, влево, вправо движение робота
5 нач, кон начало и конец программы

 

В задании сказано, что

Алгоритм должен решать задачу для произвольного размера поля и любого количества ступеней

Это означает, что Робот должен передвигаться с помощью цикла «Пока». Рассуждаем так: снизу под роботом стена, значит снизу не свободно. На 4 строчке редактора пишем команду

нц пока снизу не свободно.

Внутри цикла необходимо последовательно выполнить команды:

вправо
вниз
закрасить
вправо
закрасить
влево
вниз
закрасить
вправо
закрасить

Пути движения робота

Полностью готовая программа выглядит так:

использовать Робот
алг
нач
нц пока снизу не свободно
вправо
вниз
закрасить
вправо
закрасить
влево
вниз
закрасить
вправо
закрасить
кц
кон

Для проверки алгоритма добавим ещё несколько ступеней и проверим результат

 

 

Исполнитель Робот итоговый результат
Исполнитель Робот итоговый результат

Итак, алгоритм закрашивает клетки при любом количестве ступеней лестницы.

[newsletter_signup_form id=1]

Foxford
Информатика в школе