Кумир задания для робота лестница

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

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

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

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

ЗАДАЧА

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

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

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

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

РЕШЕНИЕ

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

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

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

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

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

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

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

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

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

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

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

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

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

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.

Источник

Кумир задания для робота лестница

Исполнитель Робот умеет перемещаться по лабиринту, начерченному на плоскости, разбитой на клетки. Между соседними (по сторонам) клетками может стоять стена, через которую Робот пройти не может.

У Робота есть девять команд. Четыре команды − это команды-приказы:

вверх вниз влево вправо

При выполнении любой из этих команд Робот перемещается на одну клетку соответственно: вверх ↑, вниз ↓, влево ←, вправо →. Если Робот получит команду передвижения сквозь стену, то он разрушится.

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

Ещё четыре команды − это команды проверки условий. Эти команды проверяют, свободен ли путь для Робота в каждом из четырёх возможных направлений:

сверху свободно снизу свободно слева свободно справа свободно

Эти команды можно использовать вместе с условием «eсли», имеющим следующий вид:

Здесь условие − одна из команд проверки условия.

Последовательность команд − это одна или несколько любых команд-приказов.

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

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

В одном условии можно использовать несколько команд проверки условий, применяя логические связки и, или, не, например:

если (справа свободно) и (не снизу свободно) то

Для повторения последовательности команд можно использовать цикл «пока», имеющий следующий вид:

Например, для движения вправо, пока это возможно, можно использовать следующий алгоритм:

нц пока справа свободно

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

Количество ступенек, ведущих вниз, и количество ступенек, ведущих вверх, неизвестно.

На рисунке указан один из возможных способов расположения лестницы и Робота (Робот обозначен буквой «Р»).

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

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

Алгоритм может быть выполнен в среде формального исполнителя или записан в текстовом редакторе.

Сохраните алгоритм в формате программы Кумир или в текстовом файле. Название файла и каталог для сохранения Вам сообщат организаторы экзамена.

Это задание ещё не решено, приводим решение прототипа.

Выберите ОДНО из предложенных ниже заданий: 15.1 или 15.2.

15.1 Исполнитель Робот умеет перемещаться по лабиринту, начерченному на плоскости, разбитой на клетки. Между соседними (по сторонам) клетками может стоять стена, через которую Робот пройти не может. У Робота есть девять команд. Четыре команды — это команды-приказы:

вверх вниз влево вправо

При выполнении любой из этих команд Робот перемещается на одну клетку соответственно: вверх ↑, вниз ↓, влево ←, вправо →. Если Робот получит команду передвижения сквозь стену, то он разрушится. Также у Робота есть команда закрасить, при которой закрашивается клетка, в которой Робот находится в настоящий момент.

Ещё четыре команды — это команды проверки условий. Эти команды проверяют, свободен ли путь для Робота в каждом из четырёх возможных направлений:

сверху свободно снизу свободно слева свободно справа свободно

Эти команды можно использовать вместе с условием «eсли», имеющим следующий вид:

Здесь условие — одна из команд проверки условия. Последовательность команд — это одна или несколько любых команд-приказов.

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

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

В одном условии можно использовать несколько команд проверки условий, применяя логические связки и, или, не, например:

если (справа свободно) и (не снизу свободно) то

Для повторения последовательности команд можно использовать цикл «пока», имеющий следующий вид:

Например, для движения вправо, пока это возможно, можно использовать следующий алгоритм:

нц пока справа свободно

Выполните задание.

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

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

Конечное расположение Робота может быть произвольным. Алгоритм должен решать задачу для произвольного размера поля и любого допустимого расположения стен внутри прямоугольного поля. При исполнении алгоритма Робот не должен разрушиться, выполнение алгоритма должно завершиться. Алгоритм может быть выполнен в среде формального исполнителя или записан в текстовом редакторе. Сохраните алгоритм в формате программы Кумир или в текстовом файле. Название файла и каталог для сохранения Вам сообщат организаторы экзамена.

15.2 Напишите программу для решения следующей задачи. Ученики 4 класса вели дневники наблюдения за погодой и ежедневно записывали дневную температуру. Найдите среднюю температуру за время наблюдения. Если количество дней, когда температура поднималась выше нуля градусов, не менее 5, выведите YES , иначе выведите NO . Программа получает на вход количество дней, в течение которых проводилось наблюдение N (1 ≤ N ≤ 31), затем для каждого дня вводится температура.

Источник

Исполнитель Робот. Решение задач.

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

Просмотр содержимого документа
«Исполнитель Робот. Решение задач.»

использовать Робот
алг
нач
. | Поднимаемся вверх по первой лестнице до верхней площадки и красим клетки
. нц пока справа стена
. . закрасить
. . вверх
. . закрасить
. . вправо
. кц
. | Закрашиваем клетку на верхней площадке
. закрасить
. вправо
. | Проверяем условие, что лестница еще не закончилась, спускаемся по ней
. | и красим клетки
. нц пока снизу свободно
. . закрасить
. . вниз
. . закрасить
. . вправо
. кц
кон

Исходное поле Робота:

Сначала идет горизонтальная стена, ее длина неизвестна. Далее идет лесенка вниз, высота ступеньки – 1 клетка, длина ступеньки – 2 клетки. Количество ступенек неизвестно. Далее идет лесенка вверх, высота ступеньки – 1 клетка, длина ступеньки – 2 клетки. Количество ступенек неизвестно. Необходимо закрасить клетки над ступеньками обоих лесенок. Как показано на 2 рисунке.

использовать Робот
алг
нач
. | Двигаемся вдоль нижней стены до начала лесенки
. нц пока снизу стена
. . вправо
. кц
. вниз
. |Спускаемся вниз по первой лестнице до нижней площадки и красим клетки
. нц пока слева стена
. . закрасить
. . вправо
. . закрасить
. . если справа свободно
. . . то вправо
. . все
. . если снизу свободно
. . . то вниз
. . все
. кц
. | Поднимаемся по второй лесенке и красим клетки
. нц пока справа стена
. . вверх
. . вправо
. . закрасить
. . вправо
. . закрасить
. кц
кон

Источник

Читайте также:  Стремянка свободностоящая 6 ступеней krause monto sepuro 127242
Оцените статью