КуМир (Комплект Учебных МИРов) - система программирования, предназначенная для поддержки начальных курсов информатики и программирования в средней и высшей школе. В системе КуМир используется школьный алгоритмический язык с русской лексикой и встроенными исполнителями Робот и Чертёжник. При вводе программы КуМир осуществляет постоянный полный контроль ее правильности, сообщая на полях программы об всех обнаруженных ошибках. При выполнении программы в пошаговом режиме КуМир выводит на поля результаты операций присваивания и значения логических выражений. Это позволяет ускорить процесс освоения азов программирования. Кумир работает в операционных системах Windows, MacOS и GNU/Linux.
Вы уже знаете о суперспособностях современного учителя?
Тратить минимум сил на подготовку и проведение уроков.
Быстро и объективно проверять знания учащихся.
Сделать изучение нового материала максимально понятным.
Избавить себя от подбора заданий и их проверки после уроков.
Просмотр содержимого документа
«Система программирования КуМир»
9 класс
Конспект урока на тему: Система программирования КуМир
В системе КуМир используется простой алгоритмический язык со встроенными командами управления программными исполнителями (Робот, Чертёжник).
Особенности системы КуМир
В системе КуМир используется школьный алгоритмический язык с русской лексикой и встроенными исполнителями Робот и Чертёжник.
При вводе программы КуМир осуществляет постоянный полный контроль ее правильности, сообщая на полях программы об всех обнаруженных ошибках.
При выполнении программы в пошаговом режиме КуМир выводит на поля результаты операций присваивания и значения логических выражений. Это позволяет ускорить процесс освоения азов программирования.
Кумир работает в операционных системах Windows, MacOS и GNU/Linux.
Настройка среды КуМир для исполнителя Робот
Первым делом мы должны зайти в пункт мены ВСТАВКА → Использовать Робот.
Выбрав исполнителя, мы указали Кумиру, что будем работать именно с этим исполнителем. Если бы мы этого не сделали, то при написании алгоритма будет выдавать ошибку.
Вторым важным шагом нужно задать стартовую обстановку Робота, т.е. установить Робота в нужную позицию, расставить стены, закрасить нужные клетки и т.д.
Что такое стартовая обстановка?
Это клетчатое поле, размер которого известен. На поле могут находиться стены и закрашенные клетки, Робот может находиться в любой клетке.
Стартовая обстановка задаёт положение Робота на поле и расположение всех остальных элементов – стен и закрашенных клеток. Поэтому перед написанием алгоритма, мы и должны задать стартовую обстановку.
Заходим в п.м. РОБОТ → Редактировать обстановку. Откроется окно с синим фоном – это и есть стартовая обстановка Робота, которую мы должны изменить, подготовить.
Можно сначала задать новую обстановку п.м. РОБОТ → Новая обстановка, задав, при этом, нужно количество строк и столбцов.
Исполнитель Робот умеет перемещаться по лабиринту, начерченному на плоскости, разбитой на клетки. Между соседними (по сторонам) клетками может стоять стена, через которую Робот пройти не может.
У Робота есть девять команд.
Четыре команды — это команды-приказы: вверх, вниз, влево, вправо.
При выполнении любой из этих команд Робот перемещается на одну клетку соответственно: вверх ↑ вниз ↓, влево ←, вправо →. Если Робот получит команду передвижения сквозь стену, то он разрушится.
Также у Робота есть команда закрасить, при которой закрашивается клетка, в которой Робот находится в настоящий момент.
Линейный алгоритм
Пример 1. Составьте программу прохождения Робота буквой «П» (3х2).
Цикл со счетчиком (цикл с параметром)
Пример 2. Составьте программу закрашивания всех клеток поля вдоль левой вертикальной стены. Изначально Робот находится в левом верхнем углу поля.
Можно этот же алгоритм записать по-другому, используя ЦЫКЛЫ.
Рассмотрим цикл со счетчиком или цикл с параметром.
Для повторения последовательности команд нужно использовать начало цикла «нц» и конец цикла «кц», например:
нц количество повторенийраз
…
кц
Можно написать вручную циклы или использовать меню программы:
п.м. ВСТАВКА → нц-раз-кц
Результат:
Программа стала намного короче и значительно грамотней с алгоритмической точки зрения!
Пример 3. Составьте программу закрашивания клеток поля, которая будет делать рамку вокруг рабочего поля Робота независимо от его размера. Изначально Робот находится в левом верхнем углу поля.
Цикл с условием
Рассмотрим задачу по физкультуре. Выполни не 9 приседаний, а 27. Кто-то сможет выполнить эту задачу, а кто-то и нет. Можно эту задачу перефразировать и сказать так: «Покане устал, выполни не 9 приседаний, а 27», соответственно у нас появилось условие (т.е. человек будет приседать до тех пор, пока не устанет).
В предыдущем примере мы использовали ЦИКЛ со счетчиком (количество повторений).
В этой задаче мы будем использовать ЦИКЛ с условием.
Для повторения последовательности команд можно использовать цикл «пока»:
нц пока не устал
кц
нц покаусловие
последовательность команд
кц
Остальные четыре команды — это команды проверки условий. Эти команды проверяют, свободен ли путь для Робота в каждом из четырёх возможных направлений:
сверху свободно
снизу свободно
слева свободно
справа свободно
Например, для движения вправо, пока это возможно, можно использовать следующий алгоритм:
нцпока справасвободно
вправо
кц
Эти команды можно использовать вместе с условием «если», например:
еслиусловието
последовательность команд
всё
Здесь условие — одна из команд проверки условия.
Последовательность команд — это одна или несколько любых команд-приказов.
Например, для передвижения на одну клетку вправо, если справа нет стенки и закрашивания клетки, можно использовать такой алгоритм:
если справа свободно то
вправо
закрасить
всё
В одном условии можно использовать несколько команд проверки условий, применяя логические связки и, или, не, например:
если справа свободно и не снизу свободно то
вправо
всё
Пример 4. Составьте программу, которая закрашивает все клетки, расположенные непосредственно под верхней горизонтальной стеной, используя цикл с условием. Изначально Робот находится в левом верхнем углу поля.
Сначала опишем словами, что нужно делать Роботу:
«Пока справа свободно, делай шаг вправо и закрашивай клетку»
В результате Робот пробежит по всем клеткам вправо и будет их закрашивать до тех пор, пока справа не окажется стена.
Как видим, не хватает только закрашенной первой клетки. Для этого перед циклом необходимо выполнить команду закрасить.
Пример 5. Составьте программу закрашивания клеток поля, которая будет делать рамку вокруг рабочего поля Робота независимо от его размера, используя цикл с условием. Изначально Робот находится в левом верхнем углу поля.
Пример 6. Составьте программу, которая закрашивает все клетки, расположенные непосредственно ниже горизонтальной стены и левее вертикальной стены. Длины стен неизвестны. При исполнении алгоритма Робот не должен разрушиться, выполнение алгоритма должно завершиться.
Изначально Робот находится в клетке, расположенной непосредственно под горизонтальной стеной у её левого конца.