Исполнитель Робот существует в некоторой обстановке — прямоугольном поле, разбитом на клетки, между которыми могут стоять стены. Робот может передвигаться по полю, закрашивать клетки.
Робот-> Сменить стартовую обстановку • Файл со стандартной обстановкой входит в поставку Кумира (10×16.fil). Стандартной обстановкой является пустая обстановка максимально допустимого размера 10*16 с Роботом в левом верхнем углу.
Инструменты->Редактировать стартовую обстановку Поставить/убрать стену — щелкнуть по границе между клетками. • Закрасить/сделать чистой клетку — щелкнуть по клетке. • Переместить Робота — тащить мышью. • Изменить размеры обстановки — команда «Новая обстановка» меню «Обстановка»
Описание алгоритма
Алгоритм на языке КуМир записывается так: алг тип_алгоритма имя_алгоритма (описание_параметров) · дано условие_применимости_алгоритма · надо цель_выполнения_алгоритма нач · последовательность команд кон Описание алгоритма состоит из: • заголовка (часть до служебного слова нач) • тела алгоритма (часть между словами нач и кон)
КуМир. Робот. Знакомство
Система команд исполнителя «Робот» включает:
Кумир-программа, управляющая Роботом, должна начинаться со строки использовать Робот • 5 команд, вызывающих действия Робота (влево, вправо, вверх, вниз, закрасить) • 10 команд проверки условий: – 8 команд вида [слева/справа/снизу/сверху] [стена/свободно] – 2 команды вида клетка [закрашена/чистая]
Источник: studfile.net
Презентация, доклад на тему Система программирования Кумир. Исполнитель Робот
Исполнитель Робот действует на прямоугольном клетчатом поле. Между некоторыми клетками поля могут быть расположены стены. Некоторые клетки могут быть закрашены.Робот занимает ровно одну клетку поля. По командам вверх, вниз, влево и вправо Робот перемещается в соседнюю
- Главная
- Информатика
- Система программирования Кумир. Исполнитель Робот
Слайд 1РОБОТ
Система программирования
«Кумир»
Слайд 2Исполнитель Робот действует на прямоугольном клетчатом поле. Между некоторыми клетками поля
могут быть расположены стены. Некоторые клетки могут быть закрашены.
Робот занимает ровно одну клетку поля. По командам вверх, вниз, влево и вправо Робот перемещается в соседнюю клетку в указанном направлении. Если на пути оказывается стена, то происходит отказ – выдается сообщение о невозможности выполнить очередную команду.
Слайд 3Поле программных кодов Робота имеет вид Рис.1.
1 урок. КуМир. Первая программа для исполнителя Робот
В этом поле
будем писать программу робота. Робот понимает 5 команд: вправо, влево, вверх, вниз, закрасить.
Слайд 4Составим программу «Ход конем», для того, что бы попасть из точки
А в точку Б
Слайд 5Составим программу, состоящую из нескольких строк, для прохождения обстановки ( робота
из точки А в точку Б)
В одной строке команда от команды отделяется знаком «;»
Слайд 6Обстановка, в которой Робот находится в настоящий момент, называется текущей (временная).
Программа, управляющая
Роботом, должна начинаться со строки использовать Робот.
При выполнении этой строки КуМир помещает исполнителя Робот в заранее определенную обстановку, которая называется стартовой.
По умолчанию стартовая обстановка такова: Робот в левом верхнем углу, стен и закрашенных клеток на поле нет.
Стартовую обстановку можно задать. Для этого используется пункт меню Робот — Редактировать стартовую обстановку. Стартовая обстановка может быть сохранена в файле с расширением .fil.
Слайд 7Для редактирования стартовой обстановки используется мышь:
Робот (ромбик) перемещается на нужную клетку
перетаскиванием мышкой,
щелчок по клетке закрашивает ее,
щелчок по закрашенной клетке очищает ее,
щелчок по границе клетки ставит стену,
щелчок по стене клетки убирает ее,
щелчок по клетке с удержанием нажатой клавиши CTRL ставит метку,
щелчок по клетке с меткой с удержанием клавиши CTRL убирает метку,
щелчок правой кнопкой мыши вызывает меню для установки/удаления уровня температуры и радиации.
Робот (ромбик) перемещается на нужную клетку перетаскиванием мышкой,
щелчок по клетке закрашивает ее,
щелчок по закрашенной клетке очищает ее,
щелчок по границе клетки ставит стену,
щелчок по стене клетки убирает ее,
щелчок по клетке с удержанием нажатой клавиши CTRL ставит метку,
щелчок по клетке с меткой с удержанием клавиши CTRL убирает метку,
щелчок правой кнопкой мыши вызывает меню для установки/удаления уровня температуры и радиации.
Слайд 8Линейная программа
Задача: Закрасить квадрат 2х2 клетки.
Зададим стартовую обстановку, выполнив Робот — Редактировать
стартовую обстановку. Сохранять обстановку в файл не обязательно.
Составим программу, после чего выполним ее. На рисунке представлена система КуМир после выполнения программы.
Источник: shareslide.ru
Знакомимся с Роботом
Исполнитель Робот существует в на прямоугольном поле, разбитом на клетки, между которыми могут стоять стены и умещается целиком в одной клетке. Робот может передвигаться по полю, закрашивать клетки, измерять температуру и радиацию. Робот не может проходить сквозь стены, но может проверять, есть ли рядом с ним стена.
Система команд исполнителя «Робот» включает:
- 5 команд, вызывающих действия Робота (влево, вправо, вверх, вниз, закрасить)
- 10 команд проверки условий:
- 8 команд вида [слева/справа/снизу/сверху] [стена/свободно]
- 2 команды вида клетка [закрашена/чистая]
- 2 команды измерения (температура, радиация)
Команда | Описание |
влево | Перемещает робота на одну клетку влево. Если слева стена, выдает отказ. |
вправо | Перемещает робота на одну клетку вправо. Если справа стена, выдает отказ. |
вверх | Перемещает робота на одну клетку вверх. Если сверху стена, выдает отказ. |
вниз | Перемещает робота на одну клетку вниз. Если снизу стена, выдает отказ. |
закрасить | Делает клетку, в которой находится робот, закрашенной. |
Команда | Описание |
лог слева свободно | Возвращает да, если робот может перейти влево, иначе — нет. |
лог справа свободно | Возвращает да, если робот может перейти вправо, иначе —нет. |
лог сверху свободно | Возвращает да, если робот может перейти вверх, иначе — нет. |
лог снизу свободно | Возвращает да, если робот может перейти вниз, иначе — нет. |
лог слева стена | Возвращает да, если слева от робота находится стена, иначе— нет. |
лог справа стена | Возвращает да, если справа от робота находится стена, иначе— нет. |
лог сверху стена | Возвращает да, если сверху от робота находится стена, иначе— нет. |
лог снизу стена | Возвращает да, если снизу от робота находится стена, иначе— нет. |
лог клетка закрашена | Возвращает да, если клетка закрашена, и нет, если клетка незакрашена. |
лог клетка чистая | Возвращает нет, если клетка закрашена, и да, если клетка незакрашена. |
Команда | Описание |
вещ радиация | Возвращает значение радиации в клетке, где находится робот. |
вещ температура | Возвращает значение температуры в клетке, где находится робот. |
Пусть требуется перевести из клетки слева от стены в клетку справа от стены:
Стартовая обстановка | После выполнения алгоритма |
![]() |
![]() |
Алгоритм может выглядеть так:
использовать Робот
алг пример 1
нач
. вниз
. вправо
. вверх
кон
Если же попытать провести Робота через стену, то возникнет отказ. Робот врежется в стену и больше не сможет выполнять команды дальше.
Напишем алгоритм прохождения роботом лабиринта из точки А в Б:
![]() |
![]() |
использовать Робот
алг из А в Б
нач
. вправо
. вверх ; вверх ; вправо ; вниз ; вниз ; вправо
. вверх ; вверх ; вправо ; вниз ; вниз ; вправо
. вверх ; вверх ; вправо ; вниз ; вниз ; вправо
кон
Команды прохождения каждого участка можно сгруппировать в одну строку — это сокращает запись алгоритма и делает его более понятным. Для того чтобы записать команды в одну строку их нужно разделить точкой с запятой.
Если вспомнить цикл N раз, то можно записать алгоритм еще компактнее:
использовать Робот
алг из А в Б
нач
. вправо
. нц 3 раз
. . вверх ; вверх ; вправо ; вниз ; вниз ; вправо
. кц
кон
Задание 1. Имеется поле 4 на 5. Робот находится в левой верхней точке. Необходимо закрасить все поле и вернуться в исходное положение. Решите эту задачу без использования и с использованием вспомогательных алгоритмов.
![]() |
![]() |
Задание 2. Составить алгоритм закраски всех клеток вокруг прямоугольной стены 3 на 7 клеток.
![]() |
![]() |
Источник: www.klyaksa.net