Как составить рисунок в кумире

Содержание

  1. Исполнитель Чертёжник входит Кумир
  2. Работа с исполнителем 
  3. Видеоурок №1. Знакомство
  4. Видеоурок №2. Настройки
  5. Видеоурок №3. Команда «сместиться на вектор»
  6. Примеры задач и готовых алгоритмов
  7. Линейный алгоритм
  8. Вспомогательный алгоритм
  9. Циклический алгоритм

Исполнитель Чертёжник входит Кумир

Система Кумир позволяет создавать, отлаживать и выполнять программы на универсальном языке программирования Кумир. Исполнитель строит изображения на координатной плоскости. У чертежника есть перо, которым можно управлять: поднимать, опускать и менять цвет линий. В исходном положении перо чертежника всегда поднято и находится в начале координат  в точке (0,0).

Исполнитель Чертежник умеет выполнять следующие команды:

  • опустить перо — при перемещении исполнителя будет оставаться след в виде линии
  • поднять перо — отменяет видимый след при перемещении
  • сместиться в точку (х,у) — задает смещение исполнителя относительно начала координат
  • сместиться на вектор (х,у) — задает смещение исполнителя относительно последней координаты
  • выбрать чернилацвет ) — задаёт цвет линий (цвет — красный, синий, зеленый, желтый и т.п.)
  • написать(w, «текст») — выводит заданный текст в заданное значение ширины

Для его использования  исполнителя в первой строке кода программы перед служебным словом алг нужно прописать директиву — использовать Чертежник

Чертежник выполняет только правильно записанные команды. Если в в команде пропущена буква или сделана другая ошибка, то в окне редактора будет сообщение об ошибке.

Алгоритм для исполнителя Чертёжник на языке Кумир записывается в следующем виде:

  1. использовать Чертежник
  2. алг имя_алгоритма
  3. нач
  4.     последовательность команд
  5. кон

программа чертежник

Пример программы для исполнителя Чертежник

Узнайте, как запустить Кумир в Астра линукс. Инструкция здесь

Работа с исполнителем 

Видеоурок №1. Знакомство

Видеоурок №2. Настройки

Видеоурок №3. Команда «сместиться на вектор»

Рекомендуем: как настроить координатную плоскость исполнителя

Примеры задач и готовых алгоритмов

Линейный алгоритм

Линейным называют алгоритм, в котором все команды выполняются последовательно, друг за другом.

Задача 1. Нарисовать цифру 0

Код программы:

использовать Чертежник
алг цифра_0
нач
  опустить перо
  сместиться на вектор(0,2)
  сместиться на вектор(1,0)
  сместиться на вектор(0,-2)
  сместиться на вектор(-1,0)
  поднять перо
  сместиться на вектор (2,0)
кон

рисунок цифра 0

Рекомендуем: примеры линейных алгоритмов для чертежника

Вспомогательный алгоритм

Вспомогательным алгоритмом называют самостоятельный код алгоритма, который может быть вызван в основном алгоритме. В кумире вспомогательные алгоритмы записывают ниже основного.

Задача 2. Составьте алгоритм для изображения индекса города Красноярска 660000. Для изображения цифр используйте вспомогательный алгоритм.

Код программы:

использовать Чертежник
алг индекс
нач
 цифра_6
 цифра_6
 цифра_0
 цифра_0
 цифра_0
 цифра_0
кон
 
алг цифра_0
нач
 опустить перо
 сместиться на вектор(0,2)
 сместиться на вектор(1,0)
 сместиться на вектор(0,-2)
 сместиться на вектор(-1,0)
 поднять перо
 сместиться на вектор (2,0)
кон
алг цифра_6
нач
 сместиться на вектор(1,2)
 опустить перо
 сместиться на вектор(-1,-1)
 сместиться на вектор(0,-1)
 сместиться на вектор(1,0)
 сместиться на вектор(0,1)
 сместиться на вектор(-1,0)
 поднять перо
 сместиться на вектор (2,-1)
кон

рисунок чертежника

Циклический алгоритм

Часто в программах приходится многократно повторять одни и те же команды. Для сокращения количества команд в записи алгоритма используют циклические структуры (конструкцию повторения).

Задача 2. Составьте алгоритм для изображения индекса города Красноярска 660000. Для изображения цифр используйте вспомогательный алгоритм.

Код программы:

использовать Чертежник
алг ромбы
нач
 сместиться в точку(1,2)
  нц 5 раз
   опустить перо
   сместиться на вектор(1,2)
   сместиться на вектор(1,-2)
   сместиться на вектор(-1,-2)
   сместиться на вектор(-1,2)
   поднять перо
   сместиться на вектор(3,0)
  кц
кон

рисунок ромбы

Рекомендуем: примеры циклических алгоритмов для исполнителя Чертежник

Загрузка…

Кто такой исполнитель Робот?

Представьте себе клетчатое поле (как лист из тетради в клеточку) на котором находится некий объект, который мы назовем Робот. Используя специальные команды Кумир, мы можем этим Роботом управлять — перемещать его по клеткам, закрашивать клетки. И в большинстве случаев наша задача будет заключаться в том, чтобы написать такую программу для Робота, выполняя которую он будет закрашивать определенные клетки.

кумир

Видео на тему: КуМир. Робот. Знакомство

Настройка среды Кумир для исполнителя Робот.

Запущенная программа Кумир выглядит так.

кумир

Первым делом мы должны раскоментировать первую строку нашей программы, убрав символ |

кумир

Таким образом, программа станет выглядеть так:

использовать Робот

алг

нач

кон

Удалив символ |, мы тем самым указали Кумиру на то, что будем работать с исполнителем Робот. Если этого не сделать, то при написании программы мы столкнемся с ошибкой «Нет такого алгоритма». Поэтому очень важно при создании новой программы раскоментировать первую строку. Теперь все готово для дальнейшей работы.

Но перед началом, нам необходимо задать стартовую обстановку Робота и познакомиться с простыми командами исполнителя Робот.

Стартовая обстановка Робота

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

Что такое стартовая обстановка?

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

кумир

кумир

Отличаются они только тем, что в стартовой обстановке 2 справа от Робота находится стена.

Если наша программа начнется с команды, которая переместит Робота на одну клетку вправо (о простых командах Робота), то в первом случае (стартовая обстановка 1) Робот выполнит эту команду, а во втором программа завершится аварийно, так как Робот не может ходить сквозь стены. Получается, что одна и та же программа в первом случае работает, а во втором приводит к ошибке. Именно поэтому так важно задавать стартовую обстановку для Робота.

Как задать стартовую обстановку в Кумир?

Запустив среду Кумир в меню Инструменты выбираем пункт Редактировать стартовую обстановку Робота.

кумир

Откроется окно с синим фоном. Это и есть стартовая обстановка Робота. И мы ее можем изменить.

По-умолчанию, размер окна 10 на 15 клеток. Если нам необходимо изменить количество строк и столбцов, то щелкаем Обстановка -> Новая обстановка и задаем необходимые значения

кумир

Далее,

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

После того, как мы задали нужную стартовую обстановку, ее необходимо сохранить (Обстановка -> Сохранить или Обстановка -> Сохранить как). После этого закрываем окно Обстановка и в основном окне программы выбираем Робот -> Сменить стартовую обстановку

Как работать в программе Кумир

Находим сохраненную ранее обстановку и загружаем ее. После этого убедимся, что загрузили правильную стартовую обстановку, щелкнув по кнопке Показать окно Робота

Как работать в программе Кумир

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

Исполнитель Робот. Простые команды.

У нашего Робота тоже есть система команд. Сегодня мы рассмотрим простые команды Робота. Всего их 5:

вверх

вниз

влево

вправо

закрасить

Результат выполнения этих команд понятен из их названия:

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

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

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

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

закрасить — закрасить текущую клетку (клетку в которой находится Робот).

Эти команды можно писать с клавиатуры, а можно использовать горячие клавиши (нажав их команды будут вставляться автоматически):

вверх — Escape, Up (стрелка вверх)

вниз — Escape, Down (стрелка вниз)

влево — Escape, Left (стрелка влево)

вправо — Escape, Right (стрелка вправо)

закрасить — Escape, Space (пробел)

Обратите внимание, что набирать нужную комбинацию горячих клавиш нужно не привычным нам способом! Мы привыкли нажимать клавиши одновременно, а здесь их нужно нажимать последовательно.

Теперь мы готовы написать первый алгоритм для Робота. Предлагаю начать с простого — нарисуем квадрат со стороной 3 клетки. Поехали!

Запускаем Кумир, настраиваем его. Можно начинать писать программу? Конечно нет! Мы же не задали стартовую обстановку! Делаем это. Предлагаю использовать вот такую:

кумир

Вот теперь все готово. Начинаем писать программу. Пока она выглядит так

Как работать в программе Кумир

Удаляем символ «|» и называем наш алгоритм «Квадрат»

Как работать в программе Кумир

Предлагаю рисовать квадрат, двигаясь по часовой стрелке. Для начала закрасим текущую клетку, дав команду закрасить. Потом делаем шаг вправо и опять закрашиваем клетку. И еще раз шаг вправо и закрасить.

Как работать в программе Кумир

Попробуем запустить программу и посмотреть что же получилось. Для запуска нажимаем F9 или же кнопку на панели инструментов

Как работать в программе Кумир

В результате мы должны увидеть вот такую картину

Как работать в программе Кумир

Если такое окно Робота у вас не появилось, то на панели инструментов щелкните «Показать окно Робота» или в меню Робот выберите пункт «Показать окно Робота». Продолжаем дальше.

Теперь мы будем двигаться вниз и закрашивать правую сторону квадрата:

вниз

закрасить

вниз

закрасить

Потом пойдем влево, закрашивая нижнюю границу квадрата

влево

закрасить

влево

закрасить

У нас осталась одна не закрашенная  клетка. Закрасим ее

вверх

закрасить

Все готово! В итоге наша программа выглядит так:

использовать Робот

алг Квадрат

нач

закрасить

вправо

закрасить

вправо

закрасить

вниз

закрасить

вниз

закрасить

влево

закрасить

влево

закрасить

вверх

закрасить

кон

А результат ее работы вот так

Как работать в программе Кумир

Итак, сегодня мы с вами написали программу, используя простые команды Робота. Рекомендую попрактиковаться самостоятельно — придумать себе задание и написать программу. Это могут быть самые различные фигуры, узоры, буквы. К примеру, попробуйте написать программу, рисующую букву П, Р, Ш, Щ, М. А если получится и захотите поделиться — комментируйте и прикрепляйте результат к комментарию.

Исполнитель Робот. Циклы.

Итак, что такое цикл? Представьте, что мы находимся на уроке физической культуры и перед нами стоит задача сделать 7 приседаний. Это задание можно оформить в виде линейного алгоритма и тогда оно будет выглядеть примерно так:

сделай приседание

сделай приседание

сделай приседание

сделай приседание

сделай приседание

сделай приседание

сделай приседание

То есть мы повторили команду сделай приседание 7 раз. А есть ли смысл писать 7 одинаковых команд? Может проще дать команду сделай 7 приседаний? Конечно проще и правильнее. Это и есть цикл. Вы можете сами вспомнить примеры циклов из жизни — их довольно много.

Таким образом линейный алгоритм, где повторяются одни и те же команды мы можем оформить в виде циклического алгоритма — примерно так:

повторяй 7 раз

сделай приседание

конец цикла

Вот так, на придуманном нами языке мы оформили цикл. У исполнителя Робот тоже есть возможность записывать циклы. Причем, циклы бывают разные. Тот вариант, который мы только что рассмотрели называется цикл со счетчиком или цикл с параметром.

Виды циклов.

Цикл со счетчиком.

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

Для того, чтобы написать цикл со счетчиком для исполнителя необходимо знать его синтаксис. А он такой:

нц <количество повторений> раз

<команда 1>

<команда 2>

<команда n>

кц

Здесь мы должны указать количество повторений (число) и команды, которые будут повторяться.  Команды, которые повторяются в цикле называют телом цикла.

Давайте рассмотрим это на примере.

Закрасим 7 клеток, как на рисунке. Рекомендую почитать про стартовую обстановку Робота и про его простые команды.

Как работать в программе Кумир

Изначально Робот находился в левой верхней клетке.

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

закрасить

вправо

закрасить

вправо

закрасить

вправо

закрасить

вправо

закрасить

вправо

закрасить

вправо

закрасить

вправо

кон

Как видим, команды закрасить и вправо повторяются 7 раз. Давайте теперь перепишем программу с использованием цикла. Кстати, чтобы вставить цикл в свою программу можно в меню Вставка выбрать пункт нц-раз-кц или нажать одну из комбинаций клавиш Esc, Р (русская буква Р) или Esc, H (латинская буква H). Причем клавиши надо нажимать последовательно — сначала Esc, отпустить ее и только потом Р или H.

Так вот, наша программа с циклом будет выглядеть так:

использовать Робот

алг

нач

нц 7 раз

закрасить

вправо

кц

кон

Если мы ее запустим, то увидим, что в результате получится тоже самое — 7 закрашенных клеток. Однако программа стала короче и значительно грамотней с алгоритмической точки зрения!

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

Цикл с условием

Вернемся к физкультуре и изменим задачу. Ведь кто-то может и не сделать 7 приседаний, а другой способен сделать 27. Можно ли учесть это при создании цикла? Конечно. Только теперь мы будем использовать не счетчик (количество повторений), а условие. К примеру, пока не устал, делай приседания. В этом случае человек будет делать не конкретное число приседаний, а приседать до тех пор, пока не устанет. И наш цикл на абстрактном языке примет такой вид:

пока не устал

сделай приседание

конец цикла

Слова не устал в нашем случае — это условие. Когда оно истинно, цикл выполняется. Если же оно ложно (устал) тело цикла не будет выполнено. У исполнителя Робот есть несколько условий

сверху свободно

снизу свободно

слева свободно

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

сверху стена

снизу стена

слева стена

справа стена

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

Давайте сначала сформулируем словесный алгоритм — т. е. опишем словами что нужно делать Роботу. Этот алгоритм будет звучать примерно так:

«Пока справа свободно делай шаг вправо и закрашивай клетку»

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

Исходный код нашей программы для Робота будет примерно такой:

использовать Робот

алг

нач

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

вправо

закрасить

кц

кон

В результате выполнения этой программы мы увидим вот такую картину:

Как работать в программе Кумир

Как видим, не хватает только закрашенной первой клетки. Для этого перед циклом необходимо выполнить команду закрасить.

Как работать в программе Кумир

Для закрепления прошу написать программу, которая будет делать рамку вокруг рабочего поля Робота независимо от его размера. Конечно же с использованием циклов с условием. В итоге должно получиться так:

Как работать в программе Кумир

Дорогой читатель! Добавьте этот сайт в закладки своего браузера и поделитесь с друзьями ссылкой на этот сайт! Мы стараемся показывать здесь всякие хитрости и секреты. Пригодится точно.

Это тоже интересно:

Язык программирования Pascal для новичков: Основные понятия.

Как установить Java и работать в языке программирования Java.

Как работать в Delphi: конкретные уроки.

GO программирование: самое начало работы.

Исполнитель ‹‹Рисователь››

Рисователь – исполнитель системы Кумир. Назначение Рисователя – создавать рисунки на листе. Как и другие исполнители, он имеет систему команд, свою ‹‹обстановку›› – лист, на котором можно рисовать, и окно, в котором виден лист.

Исполнитель разработан по инициативе д. т. н. проф. К. Ю. Полякова, спецификация исполнителя создана совместно группой разработки Кумир и К. Ю. Поляковым.

1. Использование исполнителя

Исполнитель ‹‹Рисователь›› входит в Вашу поставку Кумир, но его функции не являются частью языка программирования. Для его использования необходимо в программе явно указать использование данного исполнителя:

использовать Рисователь

| теперь функции рисователя доступны

| для использования в программе

2. Тип величины ‹‹цвет››

В исполнителе реализован новый тип величин – цвет. Значение величины типа цвет может быть получено:

·                использованием одного из алгоритмов составления цвета из отдельных компонент;

·                присваиванием величине одного из значений: прозрачный, белый, чёрный, серый, фиолетовый, синий, голубой, зелёный, жёлтый, оранжевый, красный.

Значение типа цвет записывается без кавычек, вместо буквы ё можно использовать букву е.

icon:edit-copy:16 Скопировать пример

использовать Рисователь

алг радуга

нач

  новый лист(400, 200, белый)

  кисть(красный)

  окружность(200, 200, 200)

  кисть(оранжевый)

  окружность(200, 200, 175)

  кисть(желтый)

  окружность(200, 200, 150)

  кисть(зелёный)

  окружность(200, 200, 125)

  кисть(голубой)

  окружность(200, 200, 100)

  кисть(синий)

  окружность(200, 200, 75)

  кисть(фиолетовый)

  окружность(200, 200, 50)

  кисть(белый)

  окружность(200, 200, 25)

кон

Пример 1. Рисователь рисует радугу

3. Алгоритмы для работы с цветом

3.1. CMYK


Синтаксис:

алг цвет CMYK(цел cцел mцел yцел k)

Возвращает величину типа цвет, составленную из компонент цветовой модели CMYK:

·                c – величина бирюзовой составляющей цвета;

·                m – величина пурпурной составляющей цвета;

·                y – величина желтой составляющей цвета;

·                k – величина черной составляющей цвета.

Все значения состовляющих должны быть от 0 до 255.

Цветовая модель CMYK основана на аддитивном смешиванием трех красок: чем выше значение отдельных компонент, тем темнее получается цвет.

Как правило, при смешивании трех основных цветов – бирюзового (c), пурпурного (m) и желтого (y), не удается получить настоящий темный цвет. Поэтому к трем основным цветам добавлен черный (k).

Рисунок 1. Цветовая модель CMYK

3.2. RGB


Синтаксис:

алг цвет RGB(цел rцел gцел b)

Возвращает величину типа цвет, составленную из компонент цветовой модели RGB:

·                r – величина красной составляющей цвета;

·                g – величина зеленой составляющей цвета;

·                b – величина синей составляющей цвета.

Все значения состовляющих должны быть от 0 до 255.

Цветовая модель RGB основана на субтрактивном смешиванием трех красок: чем выше значение отдельных компонент, тем светлее получается цвет.

Рисунок 2. Цветовая модель RGB

3.3. HSL


Синтаксис:

алг цвет HSL(цел hцел sцел l)

Возвращает величину типа цвет, составленную из компонент цветовой модели HSL:

·                h – тон цвета (значения в градусах от 0 до 359);

·                s – значение насыщенности цвета (от 0 до 255);

·                s – значение интенсивности цвета (от 0 до 255).

3.4. HSV


Синтаксис:

алг цвет HSV(цел hцел sцел v)

Возвращает величину типа цвет, составленную из компонент цветовой модели HSV:

·                h – тон цвета (значения в градусах от 0 до 359);

·                s – значение насыщенности цвета (от 0 до 255);

·                v – значение яркости цвета (от 0 до 255).

3.5. CMYKA


Синтаксис:

алг цвет CMYKA(цел cцел mцел yцел kцел a)

Возвращает величину типа цвет, составленную из компонент цветовой модели CMYK и значения альфа-канала:

·                c – величина бирюзовой составляющей цвета;

·                m – величина пурпурной составляющей цвета;

·                y – величина желтой составляющей цвета;

·                k – величина черной составляющей цвета;

·                a – значение непрозрачности цвета (α-значение).

Все значения состовляющих должны быть от 0 до 255.

3.6. RGBA


Синтаксис:

алг цвет RGBA(цел rцел gцел bцел a)

Возвращает величину типа цвет, составленную из компонент цветовой модели RGB и значения альфа-канала:

·                r – величина красной составляющей цвета;

·                g – величина зеленой составляющей цвета;

·                b – величина синей составляющей цвета;

·                a – значение непрозрачности цвета (α-значение).

Все значения состовляющих должны быть от 0 до 255.

3.7. HSLA


Синтаксис:

алг цвет HSLA(цел hцел sцел lцел a)

Возвращает величину типа цвет, составленную из компонент цветовой модели HSL и значения альфа-канала:

·                h – тон цвета (значения в градусах от 0 до 359);

·                s – значение насыщенности цвета (от 0 до 255);

·                l – значение интенсивности цвета (от 0 до 255);

·                a – значение непрозрачности цвета (α-значение, от 0 до 255).

3.8. HSVA


Синтаксис:

алг цвет HSVA(цел hцел sцел vцел a)

Возвращает величину типа цвет, составленную из компонент цветовой модели HSL и значения альфа-канала:

·                h – тон цвета (значения в градусах от 0 до 359);

·                s – значение насыщенности цвета (от 0 до 255);

·                v – значение яркости цвета (от 0 до 255);

·                a – значение непрозрачности цвета (α-значение, от 0 до 255).

3.9. разложить в CMYK


Синтаксис:

алг CMYK(цвет цваргрез цел cаргрез цел mаргрез цел yаргрез цел k)

Позволяет получить значения параметров модели CMYK для анализируемого цвета.

·                цв – анализируемый цвет;

·                c – величина бирюзовой составляющей цвета;

·                m – величина пурпурной составляющей цвета;

·                y – величина желтой составляющей цвета;

·                k – величина черной составляющей цвета.

Все значения состовляющих должны быть от 0 до 255.

3.10. разложить в RGB


Синтаксис:

алг RGB(цвет цваргрез цел rаргрез цел gаргрез цел b)

Позволяет получить значения параметров модели RGB для анализируемого цвета.

·                цв – анализируемый цвет;

·                r – величина красной составляющей цвета;

·                g – величина зеленой составляющей цвета;

·                b – величина синей составляющей цвета.

Все значения состовляющих должны быть от 0 до 255.

icon:edit-copy:16 Скопировать пример

использовать Рисователь

алг

нач

  цвет цв = фиолетовый

  цел r, g, b

  разложить в RGB(цв, r, g, b)

  вывод r, нс, g, нс, b

кон

Пример 2. Разложение в RGB

3.11. разложить в HSL


Синтаксис:

алг HSL(цвет цваргрез цел hаргрез цел sаргрез цел l)

Позволяет получить значения параметров модели HSL для анализируемого цвета.

·                цв – анализируемый цвет;

·                h – тон цвета (значения в градусах от 0 до 359);

·                s – значение насыщенности цвета (от 0 до 255);

·                l – значение интенсивности цвета (от 0 до 255).

3.12. разложить в HSV


Синтаксис:

алг HSV(цвет цваргрез цел hаргрез цел sаргрез цел v)

Позволяет получить значения параметров модели HSL для анализируемого цвета.

·                цв – анализируемый цвет;

·                h – тон цвета (значения в градусах от 0 до 359);

·                s – значение насыщенности цвета (от 0 до 255);

·                v – значение яркости цвета (от 0 до 255).

4. Информационные алгоритмы

Алгоритмы этой группы позволяют определить размеры листа и текстовой надписи (в пикселях).

Вызов одного из этих алгоритмов не меняет состояние рисователя.

4.1. высота листа

Возвращает высоту листа.

4.2. ширина листа

Возвращает ширину листа.

4.3. центр x

Возвращает координату середины листа по горизонтали (ширине).

4.4. центр y

Возвращает координату середины листа по вертикали (высоте).

4.5. ширина текста


Синтаксис:

алг цел ширина текста(лит текст)

Возвращает ширину текста в пикселях при заданном шрифте.

·                текст – измеряемый текст.

4.6. значение в точке


Синтаксис:

алг цвет значение в точке(цел xцел y)

Возвращает значение цвета в точке с заданными координатами.

·                x – координата точки по горизонтали;

·                y – координата точки по вертикали.

5. Установка параметров рисования

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

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

5.1. перо


Синтаксис:

алг перо(цел толщина, цвет окраска контура)

Устанавливает параметры контура.

·                толщина – толщина линии. Изначально равна 1. При толщине 0 линия не рисуется, но заливка внутренней области фигуры производится.

·                окраска контура – цвет линии вокруг рисуемой фигуры.

5.2. кисть

Устанавливает цвет заливки.

·                заливка – цвет заливки. Изначально прозрачный (рисование только контуров).

5.3. убрать кисть

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

icon:edit-copy:16 Скопировать пример

использовать Рисователь

алг

нач

  цвет залив = красный

  кисть(залив)

  окружность(0,0,50)

  убрать кисть

  окружность(0,0,100)

кон

Пример 3. убрать кисть

5.4. плотность

Устанавливает плотность заливки. Параметр значение должен принадлежать промежутку [0; 8].

5.5. шрифт


Синтаксис:

алг шрифт(лит гарнитурацел размерлог жирныйлог курсив)

Устанавливает параметры шрифта, которые используются алгоритмами надпись и ширина текста. Изначальные параметры шрифта соответствуют таковым в настройках операционной системы.

·                гарнитура – гарнитура шрифта (Arial, Times New Roman и т.д.);

·                размер – размер шрифта, который определяется как количество пикселей от базовой линии до верхней границы заглавных букв;

·                жирный – признак использования жирного начертания шрифта;

·                курсив – признак использования курсивного начертания шрифта.

                                6. Алгоритмы рисования на листе

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

6.1. в точку


Синтаксис:

алг в точку(цел xцел y)

Перемещает перо рисователя в точку, ничего при этом не рисуя.

·                x – координата целевой точки по горизонтали;

·                y – координата целевой точки по вертикали.

6.2. линия


Синтаксис:

алг линия(цел x1цел y1цел x2цел y2)

Рисует отрезок.

·                (x1,y1) – координаты начала отрезка;

·                (x2,y2) – координаты конца отрезка.

6.3. линия в точку


Синтаксис:

алг линия в точку(цел xцел y)

Перемещает перо рисователя в точку, рисуя при этом прямую линию.

·                x – координата целевой точки по горизонтали;

·                y – координата целевой точки по вертикали.

6.4. многоугольник


Синтаксис:

алг многоугольник(цел nцелтаб xxцелтаб yy)

Рисует многоугольник.

·                n – количество вершин многоугольника;

·                xx – массив абсцисс вершин;

·                yy – массив ординат вершин.

Каждая вершина с номером i имеет координаты (xx[i], yy[i]). Размеры обоих массивов координат должен совпадать с количеством вершин n.

6.5. пиксель


Синтаксис:

алг пиксель(цел xцел yцветзначение)

Рисует ровно одну точку размером в один пиксель.

·                x – координата точки по горизонтали;

·                y – координата точки по вертикали;

·                значение – значение цвета точки.

6.6. прямоугольник


Синтаксис:

алг прямоугольник(цел x1цел y1цел x2цел y2)

Рисует прямоугольник.

·                x1 – координата левой границы прямоугольника;

·                y1 – координата верхней границы прямоугольника;

·                x2 – координата правой границы прямоугольника;

·                y2 – координата нижней границы прямоугольника.

6.7. эллипс


Синтаксис:

алг эллипс(цел x1цел y1цел x2цел y2)

Рисует эллипс.

·                x1 – координата левой границы прямоугольника, в который вписан эллипс;

·                y1 – координата верхней границы прямоугольника, в который вписан эллипс;

·                x2 – координата правой границы прямоугольника, в который вписан эллипс;

·                y2 – координата нижней границы прямоугольника, в который вписан эллипс.

6.8. окружность


Синтаксис:

алг окружность(цел xcцел ycцел r)

Рисует окружность.

·                xc – координата центра окружности по горизонтали;

·                yc – координата центра окружности по вертикали;

·                r – радиус окружности.

6.9. надпись


Синтаксис:

алг надпись(цел xцел yлит текст)

Рисует надпись.

·                x – координата левой границы прямоугольника, в который вписана надпись;

·                y – координата верхней границы прямоугольника, в который вписана надпись;

·                текст – текст надписи.

6.10. залить

Заливает связанную область вокруг точки одним цветом. Область вокруг точки – это связное множество соседних точек и их соседей, которые имеют тот же цвет, что и исходная точка и включают саму точку. Связность понимается только по вертикали и горизонтали.

·                x – координата исходной точки по горизонтали;

·                y – координата исходной точки по вертикали.

7. Алгоритмы работы с листами

7.1. новый лист


Синтаксис:

алг новый лист(цел ширинацел высотацветфон)

Создает новый лист для рисования.

·                ширина – ширина нового листа в пикселях;

·                высота – высота нового листа в пикселях;

·                фон – цвет фона нового листа.

7.2. загрузить лист


Синтаксис:

алг загрузить лист(лит имя файла)

Создает новый лист для рисования, используя в качестве фона внешний графический файл в формате PNG.

·                имя файла – имя файла с изображением.

7.3. сохранить лист


Синтаксис:

алг сохранить лист(лит имя файла)

Сохраняет полученный на листе результат во внешний графический файл в формате PNG.

имя файла – имя файла с изображением.

  • Мои уведомления
    1

  • Войти
  • Зарегистрироваться / Создать сайт

СДЕЛАЙТЕ СВОИ УРОКИ ЕЩЁ ЭФФЕКТИВНЕЕ, А ЖИЗНЬ СВОБОДНЕЕ

Благодаря готовым учебным материалам для работы в классе и дистанционно

Скидки до 50 % на комплекты
только до

Готовые ключевые этапы урока всегда будут у вас под рукой

Была в сети 11.10.2019 20:05

Третьякова Светлана Михайловна

44 года

рейтинг6 875
место4 305

Знакомство с исполнителем «Рисователь» среды программирования «Кумир»

24.03.2017 15:48

Нажмите, чтобы узнать подробности

Знакомим учащихся с исполнителем «Рисователь» среды программирования Кумир.Назначение Рисователя, его основные команды, простые практические задания.

Просмотр содержимого документа

«Знакомство с исполнителем «Рисователь» среды программирования «Кумир»»

Рекомендуем курсы ПК и ППК для учителей

Муниципальное
общеобразовательное учреждение

«Железногорская
средняя общеобразовательная школа №1»

Нижнеилимского
муниципального образования

Иркутской
области

Основы работы в программе «кумир»

Разработка
алгоритма с помощью исполнителя Робот и Чертежник

Автор:
Кочнева Евгения Владимировна

учитель
информатики

Железногорск-Илимский

2021

Содержание

1.                
Основы алгоритмизации…………………………………………………….  
3

2.                
Способы записи алгоритмов………………………………………………4

3.                
Разработка алгоритма с помощью
«Исполнителя Робот»………………6

4.                
Практические работы

4.1.         
Линейный алгоритм………………………………………………..14

4.2.         
Циклический алгоритм (цикл N
раз)………………………………18

4.3.         
Алгоритм ветвление (цикл с предусловием
«ПОКА»)…………..23

4.4.         
Команды ветвления (если, выбор)…………………………………30

4.5.         
Рисунки в Кумир……………………………………………………37

5.     Разработка
алгоритма с помощью «Исполнителя Чертежник……………..40

5.1.         
Использование вспомогательных алгоритмов

5.1.1.   Вспомогательный
алгоритм……………………………………46

5.1.2.   Цикл
повторить
N раз…………………………………………..47

5.2.         
Практические работы……………………………………………….49

Список
литературы……………………………………………………………….54

1. Основы
алгоритмизации

Известно
множество областей применения компьютера: обработка текстов и графики, передача
и получение информации, создание справочников, произведение расчетов. Еще одно
из важнейших направлений применения компьютеров – управление.

Управление – это целенаправленное воздействие одних объектов, которые
являются управляющими, на другие объекты – управляемые. Все управляющие
воздействия производятся с определенной целью с помощью команд. Таким образом,
алгоритмом управления – это последовательность команд по управлению объектом,
приводящую к достижению заранее поставленной цели.

Объект
управления
– исполнитель алгоритма,
в данном случае исполнитель алгоритма – устройство. Все исполнители, которые
относятся к такому типу, называются формальные. Формальный исполнитель не
понимает смысл команд, в информатике рассматривают только формальных
исполнителей.

Алгоритм – это точное описание последовательности шагов в решении задачи,
приводящих от исходных данных к требуемому результату. Алгоритм применительно к
вычислительной технике должен обладать свойствами, которые обеспечивали бы его
автоматическое выполнение:

1)Процесс решения задачи
должен быть разбит на последовательность отдельно выполняемых шагов – дискретность
(прерывность).

2)Алгоритм для данного
исполнителя содержит только те команды, которые входят в систему его команд – понятность.

3)Каждое правило алгоритма
должно быть четким и однозначным – определенность (точность).

4)Исполнение алгоритма должно
завершиться за определенное количество шагов конечность (результативность).

5)Алгоритм должен выполняться
для любого набора исходных данных из некоторой области, удовлетворяющих условию
задачи (массовость).

2. Способы
записи алгоритмов

Существуют
различные способы записи алгоритмов. Основными среди них являются:

·       
Словесные

·       
Графические

·       
На алгоритмических языках.

1.    
Словесные способы записи
алгоритма
. Самой простой является
запись алгоритма в виде набора высказываний на обычном разговорном языке. Но
алгоритм в словесной форме может оказаться очень объемным и трудным для
восприятия.

2.    
Блок-схема представляет собой графический документ, дающий представление о
порядке работы алгоритма.

Название блока

Название блока

Название блока

Начало, остановка

Овал: начало

Начало и конец блок

данные

Параллелограмм: А, В

Ввод-вывод данных

процесс

Вычислительное действие

Решение

Ромб: А>В

Проверка условия

подготовка

Шестиугольник: I:=1,50,1

Начало цикла

дисплей

Блок-схема: ссылка на другую страницу: В

Вывод результата на экран

документ

Блок-схема: документ: В

Вывод результата на печать

3.    
Алгоритмические языки – школьный алгоритмический язык,

Алгоритм применительно к
вычислительной технике должен обладать свойствами, которые обеспечивали бы его
автоматическое выполнение:

1)Процесс решения задачи
должен быть разбит на последовательность отдельно выполняемых шагов – дискретность
(прерывность).

2)Алгоритм для данного
исполнителя содержит только те команды, которые входят в систему его команд – понятность.

3)Каждое правило алгоритма
должно быть четким и однозначным –определенность (точность).

4)Исполнение алгоритма должно
завершиться за определенное количество шагов конечность (результативность).

5)Алгоритм должен выполняться
для любого набора исходных данных из некоторой области, удовлетворяющих условию
задачи (массовость).

3. Разработка
алгоритма с помощью «Исполнителя Робот»

Прежде чем
говорить о реализации алгоритмов для исполнителя, нужно понимать, что такое
программа и чем она отличается от алгоритма.

Программа – алгоритм, записанный на языке программирования.

Как мы помним,
алгоритмы могут иметь различные формы представления, а программа должна быть записана
на языке исполнителя. Любому учебному исполнителю свойственна среда деятельности,
система команд управления и режимы работы.

 Среда Кумир версия 2.1.0 – Среда исполнителя Робот прямоугольное клетчатое поле, между клетками
которого могут быть препятствия (стены) рисунок 1.

Система команд
исполнителя Робот:

·       
Простые команды: вверх, вниз, влево, вправо, закрасить.

·       
Команды логические: (проверки условия)

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

·       
Логические связки: И, НЕ, ИЛИ (сложные условия)

Пример: (не слева
свободно) или (не справа свободно)

·       
команда ветвления:

если условие то

серия команд

всё

·       
команда цикла:

нц

пока условие

серия команд

кц

Важно помнить, что исполнитель Робот двигается по клеточкам, получая
простую команду, робот выполняет движение на одну клетку и ждет следующей
команды.

И так,
запустив программу Кумир, откройте меню Вставка, выберите
исполнителя Робот. Далее, прежде чем начать писать программу для
Робота, нужно настроить «поле» по которому Исполнитель Робот будет двигаться
выполняя программу.

Шаг 1 – открываем меню Робот, выбираем команду Редактировать
обстановку
(рис.1),

Рисунок 1 – выбор
команды Редактировать обстановку

Далее, справа диалоговое окно обстановка
Робот, становиться синего цвета, и появляются кнопки управления (рис.2),
которыми можно добавить или убрать клетки поля (при первом запуске поле имеет
размер 7 х 7 клеток).

Рисунок 2 –
Редактирование поля

Затем, щелкая левой кнопкой
мыши (рис.3) выставляем препятствия для Робота.

Рисунок 3 – Окончание редактирования

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

После того, как сохранили обстановку, заходи меню Робот,
выбираем команду Загрузить обстановку, поле для Робота
становиться зеленого цвета (рис.4) и нет кнопок управления.

Шаг 2 – составляем по
условию задачи алгоритм
для Робота, для этого в левой части окна
программы выполняем следующее:

1.     меню Вставка команда Использовать Робот,
слово робот закрашивается зеленым цветом;

2.     составляем нужный алгоритм по условию задачи;

3.     проверяем работает ли составленный алгоритм, для этого на панели
инструментов нажимаем кнопку Обычное или клавишу
F9.

Для каждой конкретной задачи
используется свой алгоритм. Как помним, алгоритмы есть линейные, циклические,
алгоритмы ветвления.

         Рассмотрим примеры с
исполнителем Робот, для каждого алгоритма по отдельности.

1.     Линейные программы для исполнителя

Задача: Робот в произвольной
точке поля. Передвинуть Робота на 5 клеток влево, закрасив их (рис.5).Напишем
программу для Робота:

использовать Робот

алг лабиринт

нач

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

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

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

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

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

кон

Рисунок 5 –
Выполнение алгоритма «Лабиринт»

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

2.     Циклические алгоритмы для исполнителя

Цикл «пока»

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

Очевидно, что
пока будет выполняться условие справа свободно, нужно выполнять команды: закрасить;
вправо (рис.6)

Рисунок 6 –
Использование цикла «Пока»

Для оформления таких
последовательностей действий используется специальная конструкция
алгоритмического языка —цикл «пока».

Цикл «раз»

Задача: нарисовать букву «П» размер высотой 6 клеток, шириной 4 клетки с
помощью исполнителя Робот. Исходное положение Робота показано на рисунке 7. В
этом алгоритме известно количество шагов исполнителя, поэтому используем цикл
«раз». Его конструкция в общем виде выглядит так:

НЦ количество РАЗ

КЦ

Рисунок 7 –
«Буква»

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

Программа для Робота:

использовать Робот

алг буква

нач

нц 5
раз

закрасить;
вверх

кц

закрасить

нц 3
раз

вправо;
закрасить

кц

нц5
раз

вниз;
закрасить

кц

кон

3.    
Алгоритм ветвление для
исполнителя Робот

Вспомним, что
форма организации действий, при которой в зависимости от выполнения или
невыполнения некоторого условия совершается либо одна, либо другая
последовательность действий, называется ветвлением.

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

команда ЕСЛИ. Ее общий вид:

ЕСЛИ <условие> ТО
<серия действий 1>

ИНАЧЕ <серия действий 2>

КОНЕЦ

Задача: Робот находится в горизонтальном коридоре, нижняя граница

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

Рисунок 8 –
«Коридор»

Единственным
признаком коридора является наличие границы сверху, значит, условие НЕ
сверхусвободнодолжно выполняться. Если при этом выполняется условие
снизусвободно, то клетку нужно закрасить, иначе — закрашивать не надо.
Известно, что слева и справа от горизонтального коридора есть клетки.

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

Практические работы
для самостоятельного выполнения

1.    
Линейные алгоритмы

Задания рассчитаны на группу в 10 человек. Каждая карточка
содержит 3 задания разной степени сложности.

Вариант 1

1. Составьте программу закрашивания прямоугольника 3×4, считая, что
Робот находится где-то в центре поля.

2. Необходимо перевести Робота из начального положения (◊) в точку A
за минимальное число шагов любым из возможных способов.

КуМир - Исполнитель Робот - Перевести Робота - 1-1

2.      Необходимо
перевести Робота по лабиринту из начального положения (◊) в точку A.

КуМир - Исполнитель Робот - Перевести Робота - 1-2

Вариант 2

1.     
Составьте программу закрашивания прямоугольника 4×2, считая, что
Робот находится где-то в центре поля.

2.     
Необходимо перевести Робота из начального положения (◊) в точку A
за минимальное число шагов любым из возможных способов.

КуМир - Исполнитель Робот - Перевести Робота - 2-1

3.      Необходимо
перевести Робота по лабиринту из начального положения (◊) в точку A.

КуМир - Исполнитель Робот - Перевести Робота - 2-2

Вариант 3

1. Составьте программу закрашивания
периметра квадрата 3×3, считая, что Робот находится где-то в центре поля.

2. Необходимо перевести Робота из
начального положения (◊) в точку A за минимальное число шагов любым из
возможных способов.

КуМир - Исполнитель Робот - Перевести Робота - 3-1

3. Необходимо
перевести Робота по лабиринту из начального положения (◊) в точку A.

КуМир - Исполнитель Робот - Перевести Робота - 3-2

Вариант 4

1. Составьте программу закрашивания
квадрата 3×3, считая, что Робот находится где-то в центре поля.

2. Необходимо перевести Робота из
начального положения (◊) в точку A за минимальное число шагов любым из
возможных способов.

КуМир - Исполнитель Робот - Перевести Робота - 4-1

3. Необходимо
перевести Робота по лабиринту из начального положения (◊) в точку A.

КуМир - Исполнитель Робот - Перевести Робота - 4-2

Вариант 5

1. Составьте программу закрашивания
буквы «Г», состоящей из трех вертикальных и двух горизонтальных
клеток. Начальное положение Робота — где-то в центре поля.

2. Необходимо перевести Робота из
начального положения (◊) в точку A за минимальное число шагов любым из
возможных способов.

КуМир - Исполнитель Робот - Перевести Робота - 5-1

3. Необходимо
перевести Робота по лабиринту из начального положения (◊) в точку A.

КуМир - Исполнитель Робот - Перевести Робота - 5-2

Вариант 6

1. Составьте программу закрашивания
буквы «П», размерами три клетки по вертикали и две по горизонтали.
Начальное положение Робота — где-то в центре поля.

2. Необходимо перевести Робота из
начального положения (◊) в точку A за минимальное число шагов любым из
возможных способов.

КуМир - Исполнитель Робот - Перевести Робота - 6-1

3. Необходимо
перевести Робота по лабиринту из начального положения (◊) в точку A.

КуМир - Исполнитель Робот - Перевести Робота - 6-2

Вариант 7

1. Составьте программу закрашивания
буквы «Т», размерами четыре клетки по вертикали и три по горизонтали.
Начальное положение Робота — где-то в центре поля.

2. Необходимо перевести Робота из
начального положения (◊) в точку A за минимальное число шагов любым из
возможных способов.

КуМир - Исполнитель Робот - Перевести Робота - 7-1

3. Необходимо
перевести Робота по лабиринту из начального положения (◊) в точку A.

КуМир - Исполнитель Робот - Перевести Робота - 7-2

Вариант 8

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

http://www.licey.net/kumir/img/robot/task8_1.png

2. Необходимо
перевести Робота из начального положения (◊) в точку A за минимальное число
шагов любым из возможных способов.

КуМир - Исполнитель Робот - Перевести Робота - 8-1

3. Необходимо
перевести Робота по лабиринту из начального положения (◊) в точку A.

КуМир - Исполнитель Робот - Перевести Робота - 8-2

Вариант 9

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

http://www.licey.net/kumir/img/robot/task9_1.png

2. Необходимо
перевести Робота из начального положения (◊) в точку A за минимальное число
шагов любым из возможных способов.

КуМир - Исполнитель Робот - Перевести Робота - 9-1

3. Необходимо
перевести Робота по лабиринту из начального положения (◊) в точку A.

КуМир - Исполнитель Робот - Перевести Робота - 9-2

Вариант 10

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

http://www.licey.net/kumir/img/robot/task10_1.png

2. Необходимо
перевести Робота из начального положения (◊) в точку A за минимальное число
шагов любым из возможных способов.

КуМир - Исполнитель Робот - Перевести Робота - 10-1

3. Необходимо
перевести Робота по лабиринту из начального положения (◊) в точку A.

КуМир - Исполнитель Робот - Перевести Робота - 10-2

2. Циклические алгоритмы.  Цикл N раз.

Задания рассчитаны на
группу в 10 человек.

Каждая карточка содержит
3 задания разной степени сложности.

Вариант 1

1. Составьте программу закрашивания 6-ти клеток
вправо от Робота, считая, что изначально Робот находится у левого края поля.

2. Необходимо провести Робота по лабиринту из
начального положения (◊) в точку A.

КуМир - Исполнитель Робот - провести Робота по лабиринту - 1

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

КуМир - Исполнитель Робот - закрасить клетки - 1

Вариант 2

1. Составьте
программу закрашивания 5-ти клеток влево от Робота, считая, что изначально
Робот находится у правого края поля.

2. Необходимо
провести Робота по лабиринту из начального положения (◊) в точку A.

КуМир - Исполнитель Робот - провести Робота по лабиринту - 2

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

КуМир - Исполнитель Робот - закрасить клетки - 2

Вариант 3

1. Составьте
программу закрашивания 5-ти клеток по диагонали вправо вниз от Робота, считая,
что изначально Робот находится в левом верхнем углу поля.

2. Необходимо
провести Робота по лабиринту из начального положения (◊) в точку A.

КуМир - Исполнитель Робот - провести Робота по лабиринту - 3

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

КуМир - Исполнитель Робот - закрасить клетки - 3

Вариант 4

1. Составьте
программу закрашивания 7-ти клеток по диагонали вправо вверх от Робота, считая,
что изначально Робот находится в левом нижнем углу поля.

2. Необходимо
провести Робота по лабиринту из начального положения (◊) в точку A.

КуМир - Исполнитель Робот - провести Робота по лабиринту - 4

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

КуМир - Исполнитель Робот - закрасить клетки - 4

 

 

 

Вариант 5

1. Составьте
программу закрашивания 4-х клеток по диагонали влево вверх от Робота, считая,
что изначально Робот находится в правом нижнем углу поля.

2. Необходимо
провести Робота по лабиринту из начального положения (◊) в точку A.

КуМир - Исполнитель Робот - провести Робота по лабиринту - 5

3. Считая,
что Робот находится в левом нижнем углу поля, составьте программу закрашивания
клеток поля в виде буквы «Т» высотой в 6 клеток.

Вариант 6

1. Составьте программу закрашивания клеток поля,
отмеченных *. Начальное положение Робота обозначено значком ◊.

КуМир - Исполнитель Робот - закрасить клетки - 6

2. Необходимо
провести Робота по лабиринту из начального положения (◊) в точку A.

КуМир - Исполнитель Робот - провести Робота по лабиринту - 6

3. Считая,
что Робот находится в левом нижнем углу поля, составьте программу закрашивания
клеток поля в виде буквы «О» высотой в 6 клеток.

Вариант 7

1. Составьте программу закрашивания клеток поля,
отмеченных *. Начальное положение Робота обозначено значком ◊.

КуМир - Исполнитель Робот - закрасить клетки - 7

2. Необходимо
провести Робота вверх по лестнице из начального положения (◊) в точку A.

КуМир - Исполнитель Робот - провести Робота - 7

3. Считая,
что Робот находится в левом нижнем углу поля, составьте программу закрашивания
клеток поля в виде буквы «Г» высотой в 6 клеток.

Вариант 8

1. Составьте программу закрашивания всех клеток
поля вдоль нижней горизонтальной стены. Изначально Робот находится в правом
нижнем углу поля.

2. Необходимо провести Робота вверх по лестнице
из начального положения (◊) в точку A.

КуМир - Исполнитель Робот - провести Робота - 8

3. Считая,
что Робот находится в левом нижнем углу поля, составьте программу закрашивания
клеток поля в виде буквы «Е» высотой в 5 клеток.

Вариант 9

1. Составьте программу закрашивания всех клеток
поля вдоль правой вертикальной стены. Изначально Робот находится в правом
верхнем углу поля.

2. Необходимо провести Робота вниз по лестнице
из начального положения (◊) в точку A.

КуМир - Исполнитель Робот - провести Робота вниз - 9

3. Считая,
что Робот находится в левом нижнем углу поля, составьте программу закрашивания
клеток поля в виде буквы «Р» высотой в 6 клеток.

 

 

 

 

 

Вариант 10

1. Составьте программу закрашивания 3-х клеток
по диагонали вправо вверх от Робота, считая, что изначально Робот находится
где-то в центре поля.

2. Необходимо провести Робота вдоль коридора из
начального положения (◊) до точки A, заглядывая в каждый боковой коридор.

КуМир - Исполнитель Робот - провести Робота - 10

1.     
Считая, что Робот находится в
левом нижнем углу поля, составьте программу закрашивания клеток поля в виде
буквы «Ш» высотой в 4 клетки.

3. Цикл с предусловием (цикл ПОКА)

Задания рассчитаны на
группу в 10 человек. Каждая карточка содержит по два задания.

Вариант 1

1. Необходимо перевести Робота из начального
положения (◊) в точку A, закрашивая при этом указанные клетки поля. Размеры
стен и расстояние между ними могут быть произвольны.

http://www.licey.net/kumir/img/robot/taskCycleWhile1_1.png

2. Где-то
в поле Робота находится вертикальная стена, размеры которой неизвестны. Робот
из верхнего левого угла поля должен дойти до стены и закрасить все клетки
вокруг нее. Пример результата работы программы показан на рисунке.

http://www.licey.net/kumir/img/robot/taskCycleWhile1_2.png

Вариант 2

1. Необходимо перевести Робота из начального
положения (◊) в точку A, закрашивая при этом указанные клетки поля. Размеры
стен и расстояние между ними могут быть произвольны.

http://www.licey.net/kumir/img/robot/taskCycleWhile2_1.png

2. Где-то
в поле Робота находится прямоугольник, размеры которой неизвестны. Робот из
верхнего левого угла поля должен дойти до прямоугольника и закрасить все клетки
по периметру вокруг него. Пример результата работы программы показан на
рисунке.

http://www.licey.net/kumir/img/robot/taskCycleWhile2_2.png

Вариант 3

1. Необходимо перевести Робота из начального
положения (◊) в точку A, закрашивая при этом указанные клетки поля. Размеры
стен и расстояние между ними могут быть произвольны.

http://www.licey.net/kumir/img/robot/taskCycleWhile3_1.png

2. Где-то
в поле Робота находится горизонтальная стена с отверстием в одну клетку,
размеры которой неизвестны. Робот из произвольной клетки над стеной, но
обязательно напротив нее, должен дойти до стены и закрасить все клетки под ней,
как показано на рисунке.

http://www.licey.net/kumir/img/robot/taskCycleWhile3_2.png

 

 

 

 

 

Вариант 4

1. Необходимо перевести Робота из начального
положения (◊) в точку A, закрашивая при этом указанные клетки поля. Размеры стен
и расстояние между ними могут быть произвольны.

http://www.licey.net/kumir/img/robot/taskCycleWhile4_1.png

2. Где-то
в поле Робота находится вертикальная стена с отверстием в одну клетку, размеры
которой неизвестны. Робот из произвольной клетки справа от стены, но
обязательно напротив нее, должен дойти до стены и закрасить клетки за стеной,
как показано на рисунке.

http://www.licey.net/kumir/img/robot/taskCycleWhile4_2.png

Вариант 5

1. Необходимо перевести Робота из начального
положения (◊) в точку A, закрашивая при этом указанные клетки поля. Размеры
стен и расстояние между ними могут быть произвольны.

http://www.licey.net/kumir/img/robot/taskCycleWhile5_1.png

2. Где-то
в поле Робота находятся две горизонтальные стены смещенные друг относительно
друга, размеры которых неизвестны. Робот из произвольной клетки над верхней
стеной, но обязательно напротив нее, должен дойти до стены и закрасить все
клетки между стенами, как показано на рисунке.

http://www.licey.net/kumir/img/robot/taskCycleWhile5_2.png

Вариант 6

1. Необходимо перевести Робота из начального
положения (◊) в точку A, закрашивая при этом указанные клетки поля. Размеры
стен и расстояние между ними могут быть произвольны.

http://www.licey.net/kumir/img/robot/taskCycleWhile6_1.png

2. Где-то
в поле Робота находятся две вертикальный стены равной, но неизвестной длины,
расположенные одна за другой. Робот из произвольной клетки справа от правой
стены, но обязательно напротив нее, должен дойти до стены и закрасить клетки
между стенами, как показано на рисунке.

http://www.licey.net/kumir/img/robot/taskCycleWhile6_2.png

 

 

 

 

Вариант 7

1. Необходимо перевести Робота из начального
положения (◊) в точку A, закрашивая при этом указанные клетки поля. Размеры
стен и расстояние между ними могут быть произвольны.

http://www.licey.net/kumir/img/robot/taskCycleWhile7_1.png

2. Где-то
в поле Робота находится стена в виде уголка, размеры которой неизвестны. Робот
из произвольной клетки слева от стены, но обязательно напротив нее, должен
дойти до стены и закрасить все клетки вдоль стены за ней, как показано на
рисунке.

http://www.licey.net/kumir/img/robot/taskCycleWhile7_2.png

Вариант 8

1. Необходимо перевести Робота из начального
положения (◊) в точку A, закрашивая при этом указанные клетки поля. Размеры
стен и расстояние между ними могут быть произвольны.

http://www.licey.net/kumir/img/robot/taskCycleWhile8_1.png

2. Где-то
в поле Робота находится горизонтальный коридор шириной в одну клетку
неизвестной длины. Робот из верхнего левого угла поля должен дойти до коридора
и закрасить клетки внутри него, как показано на рисунке. По полю Робота в
произвольном порядке располагаются стены, но расстояние между ними больше одной
клетки.

http://www.licey.net/kumir/img/robot/taskCycleWhile8_2.png

Вариант 9

1. Необходимо перевести Робота из начального
положения (◊) в точку A, закрашивая при этом указанные клетки поля. Размеры
стен и расстояние между ними могут быть произвольны.

http://www.licey.net/kumir/img/robot/taskCycleWhile9_1.png

2. Где-то
в поле Робота находятся две стены равной, но неизвестной длины. В правой стене
имеется отверстие шириной в одну клетку. Робот из произвольной клетки справа от
правой стены, но обязательно напротив нее, должен дойти до стены и закрасить
все клетки между двумя стенами, как показано на рисунке.

http://www.licey.net/kumir/img/robot/taskCycleWhile9_2.png

 

 

Вариант 10

1. Необходимо перевести Робота из начального
положения (◊) в точку A, закрашивая при этом указанные клетки поля. Размеры
стен и расстояние между ними могут быть произвольны.

http://www.licey.net/kumir/img/robot/taskCycleWhile10_1.png

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

http://www.licey.net/kumir/img/robot/taskCycleWhile10_2.png

4.Команды
ветвления (если, выбор)

Задания рассчитаны на
группу в 10 человек. Каждая карточка содержит по два задания.

Вариант 1

1. Необходимо провести Робота по коридору
шириной в одну клетку из начального положения (◊) до конца коридора, закрашивая
при этом все клетки коридора, которые имеют выход. Выходы размером в одну
клетку располагаются произвольно по всей длине коридора. Коридор заканчивается
тупиком. Коридор имеет два горизонтальных и диагональный участки в форме http://www.licey.net/kumir/img/robot/taskIf1.gif. Пример коридора
показан на рисунке.

http://www.licey.net/kumir/img/robot/taskIf1_1.png

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

http://www.licey.net/kumir/img/robot/taskIf1_2.png

Вариант 2

1. Необходимо провести Робота по коридору
шириной в одну клетку из начального положения (◊) до конца коридора, закрашивая
при этом все клетки коридора, которые имеют выход. Выходы размером в одну
клетку располагаются произвольно по всей длине коридора. Коридор заканчивается
тупиком. Коридор имеет два горизонтальных и диагональный участки в форме http://www.licey.net/kumir/img/robot/taskIf2.gif. Пример коридора
показан на рисунке.

http://www.licey.net/kumir/img/robot/taskIf2_1.png

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

http://www.licey.net/kumir/img/robot/taskIf2_2.png

Вариант 3

1. Необходимо провести Робота по коридору
шириной в одну клетку из начального положения (◊) до конца коридора, закрашивая
при этом все клетки коридора, которые имеют выход. Выходы размером в одну
клетку располагаются произвольно по всей длине коридора. Коридор заканчивается
тупиком. Коридор имеет два горизонтальных и диагональный участки в форме http://www.licey.net/kumir/img/robot/taskIf3.gif. Пример коридора
показан на рисунке.

http://www.licey.net/kumir/img/robot/taskIf3_1.png

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

http://www.licey.net/kumir/img/robot/taskIf3_2.png

 

 

 

 

 

 

Вариант 4

1. Необходимо провести Робота по коридору шириной
в одну клетку из начального положения (◊) до конца коридора, закрашивая при
этом все клетки коридора, которые имеют выход. Выходы размером в одну клетку
располагаются произвольно по всей длине коридора. Коридор заканчивается
тупиком. Коридор имеет два горизонтальных и диагональный участки в форме http://www.licey.net/kumir/img/robot/taskIf4.gif. Пример коридора
показан на рисунке.

http://www.licey.net/kumir/img/robot/taskIf4_1.png

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

http://www.licey.net/kumir/img/robot/taskIf4_2.png

Вариант 5

1. Необходимо провести Робота по коридору
шириной в одну клетку из начального положения (◊) до конца коридора, закрашивая
при этом все клетки коридора, которые имеют выход. Выходы размером в одну
клетку располагаются произвольно по всей длине коридора. Коридор заканчивается
тупиком. Коридор имеет два вертикальных и диагональный участки в форме http://www.licey.net/kumir/img/robot/taskIf5.gif. Пример коридора
показан на рисунке.

http://www.licey.net/kumir/img/robot/taskIf5_1.png

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

http://www.licey.net/kumir/img/robot/taskIf5_2.png

Вариант 6

1. Необходимо провести Робота по коридору
шириной в одну клетку из начального положения (◊) до конца коридора, закрашивая
при этом все клетки коридора, которые имеют выход. Выходы размером в одну
клетку располагаются произвольно по всей длине коридора. Коридор заканчивается
тупиком. Коридор имеет горизонтальный, вертикальный и диагональный участки в
форме http://www.licey.net/kumir/img/robot/taskIf6.gif. Пример коридора
показан на рисунке.

http://www.licey.net/kumir/img/robot/taskIf6_1.png

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

http://www.licey.net/kumir/img/robot/taskIf6_2.png

 

 

Вариант 7

1. Необходимо провести Робота по коридору
шириной в одну клетку из начального положения (◊) до конца коридора, закрашивая
при этом все клетки коридора, которые имеют выход. Выходы размером в одну
клетку располагаются произвольно по всей длине коридора. Коридор заканчивается
тупиком. Коридор имеет горизонтальный, вертикальный и диагональный участки в
форме http://www.licey.net/kumir/img/robot/taskIf7.gif. Пример коридора
показан на рисунке.

http://www.licey.net/kumir/img/robot/taskIf7_1.png

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

http://www.licey.net/kumir/img/robot/taskIf7_2.png

Вариант 8

1. Необходимо провести Робота по коридору
шириной в одну клетку из начального положения (◊) до конца коридора, закрашивая
при этом все клетки коридора, которые имеют выход. Выходы размером в одну
клетку располагаются произвольно по всей длине коридора. Коридор заканчивается
тупиком. Коридор имеет горизонтальный, вертикальный и диагональный участки в
форме http://www.licey.net/kumir/img/robot/taskIf8.gif. Пример коридора
показан на рисунке.

http://www.licey.net/kumir/img/robot/taskIf8_1.png

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

http://www.licey.net/kumir/img/robot/taskIf8_2.png

Вариант 9

1. Необходимо провести Робота по коридору
шириной в одну клетку из начального положения (◊) до конца коридора, закрашивая
при этом все клетки коридора, которые имеют выход. Выходы размером в одну
клетку располагаются произвольно по всей длине коридора. Коридор заканчивается
тупиком. Коридор имеет горизонтальный, вертикальный и диагональный участки в
форме http://www.licey.net/kumir/img/robot/taskIf9.gif. Пример коридора
показан на рисунке.

http://www.licey.net/kumir/img/robot/taskIf9_1.png

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

http://www.licey.net/kumir/img/robot/taskIf9_2.png

 

 

 

 

Вариант 10

1. Необходимо провести Робота по коридору
шириной в одну клетку из начального положения (◊) до конца коридора, закрашивая
при этом все клетки коридора, которые имеют выход. Выходы размером в одну
клетку располагаются произвольно по всей длине коридора. Коридор заканчивается
тупиком. Коридор имеет два вертикальных и диагональный участки в форме http://www.licey.net/kumir/img/robot/taskIf10.gif. Пример коридора
показан на рисунке.

http://www.licey.net/kumir/img/robot/taskIf10_1.png

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

http://www.licey.net/kumir/img/robot/taskIf10_2.png

5.
Р
исунки в Кумир

1.

2.

3.

4.

5.

6.

7.        8.

9.

11.

Разработка
алгоритма с помощью «Исполнителя Чертежник»

Исполнитель чертёжник
предназначен для построения рисунков на координатной плоскости.

При задании точек этой
координатной плоскости, в отличие от того, как это принято в математике, координаты
х и у разделяются запятой
. Например, координаты выделенной на рис. 9 точки
будут записаны так: (1, 1).

рисунок 9 – координата выделенной точки

Чертёжник имеет перо, которое
можно поднимать, опускать и перемещать.

При
перемещении опущенного пера за ним остаётся след — отрезок от предыдущего
положения пера до нового. При перемещении поднятого пера никакого следа на плоскости
не остаётся. В начальном положении перо чертёжника всегда поднято и
находится в точке (0, 0)
.

По команде поднять
перо
чертёжник поднимает перо. Если перо уже было поднято, чертёжник
игнорирует эту команду: он не меняет положение пера и не сообщает об отказе.
Иначе говоря, каким бы ни было положение пера до команды поднять перо, после
этой команды оно будет поднятым.

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

Рисунки
чертёжник выполняет с помощью команд сместиться в точку и сместиться на вектор.

По
команде сместиться в точку (а,
b) чертёжник сдвигается в точку с координатами (а, b). На рисунке 10 показаны
результаты выполнения команды сместиться в точку (2, 3) при различных
положениях пера до этой команды. Видно, что, независимо от предыдущего
положения, перо оказывается в точке (2, 3), но длина и направление отрезка,
который при этом чертится, могут быть различны. Команду сместиться в точку называют
командой абсолютного смещения.

рисунок 10 – пример абсолютного смещения

Пусть перо
чертёжника находится в точке (х, у). По команде (а, в) чертёжник
отсчитывает а единиц вправо вдоль горизонтальной оси (оси абсцисс), в
единиц вверх вдоль вертикальной оси (оси ординат) и сдвигает перо в точку с
координатами (х + а; у + в). Таким образом, координаты, указанные
в команде, отсчитываются не от начала координат, а относительно текущего
положения пера чертежника. Поэтому команду сместиться на вектор называют
командой относительного смещения.

На рисунке 11
показаны результаты выполнения команды сместиться на вектор (2, 3) при
различных положениях пера до этой команды. Из рисунка видно, что положение пера
после этой команды зависит от его предыдущего положения, зато в результате
получаются отрезки, длина и направление которых одинаковы.

Рисунок 11 – пример относительного смещения точки

В математике направленные
отрезки называются векторами, отсюда и происходит название команды.

Чертёжник
может исполнять только правильно записанные команды.

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

Пример
алгоритма управления чертёжником

Изобразим с
помощью чертёжника треугольник, положение вершин которого на координатной
плоскости определяется парами чисел (1, 1), (3, 5), (5, 2) (рис. 12).

             Рисунок 12

Так как в
начале работы перо чертёжника всегда поднято, то для рисования треугольника с
заданными координатами достаточно выполнить следующую последовательность
команд:

Сместиться
в точку (1, 1)

Опустить
перо

Сместиться
в точку (3, 5)

Сместиться
в точку (5, 2)

Сместиться
в точку (1, 1)

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

Пусть (х,
у
) — координаты вершины а прямоугольника ABCD (рис. 13).

Тогда
координаты вершины В можно записать как (х, у + 2), вершины с — как (х
+ 4, у + 2
), вершины D — как (х + 4, у).

                                Рисунок 13

Чтобы
изобразить отрезок АВ, воспользуемся командой сместиться на вектор (0, 2).

В результате
чертёжник сдвинет перо из точки с координатами (х, у) в точку с
координатами (х + 0, у + 2).

По команде
сместиться на вектор (4, 0) перо окажется в точке (х + 4, у + 2). Чтобы из этой
точки перейти в точку (х + 4, у + 0), следует выполнить команду сместиться на
вектор (0, -2). По команде сместиться на вектор (-4, 0) перо чертёжника
прочертит отрезок к точке А:

Если в качестве вершины а
зафиксировать точку с координатами (1, 1), то программа будет выглядеть так:

Сместиться в точку (l, 1)

Опустить перо

Сместиться на вектор(0, 2)

Сместиться на вектор(4, 0)

Сместиться на вектор(0, -2)

Сместиться на вектор(-4, 0)

Для того чтобы нарисовать прямоугольник
в другом месте координатной плоскости, например в точке с координатами (5, 5),
достаточно изменить в этой программе только первую строку:

Сместиться в точку (5, 5)

С помощью
команды абсолютного смещения рисунок «привязывается» к строго определенным
точкам координатной плоскости. Она используется чаще всего для установки
начального положения пера чертёжника.

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

Использование
вспомогательных алгоритмов

Чертёжник может рисовать любые
фигуры из отрезков, например цифры почтового индекса. Как известно, каждая
такая цифра вписана в прямоугольник (рис. 14).

                                        
Рисунок 14

Условимся при рисовании каждой
цифры за начальную точку брать левую нижнюю вершину соответствующего
прямоугольника.

Алгоритм рисования цифры 0
может иметь вид:
опустить перо

сместиться на вектор (0, 2)

сместиться на вектор (1,
0)

сместиться на вектор (0, -2)

сместиться на вектор (-1, 0)

поднять перо

сместиться на вектор (2, 0)

Для рисования цифры 6 можно
использовать алгоритм:
сместиться на вектор (1, 2)

опустить перо

сместиться на вектор (-1, -1)

сместиться на вектор (1, 0)

сместиться на вектор (0, -1)

сместиться на вектор (-1, 0)

сместиться на вектор (0, 1)

поднять перо

сместиться на вектор (2, -1)

Допустим, чертёжнику
необходимо разработать алгоритм рисования почтового индекса города Красноярска — 660000.

Самый простой вариант —
составить очень длинный алгоритм, в котором дважды повторить рисование цифры 6
и четырежды — цифры 0.

Но есть и другой способ.
Оказывается, чертёжник может «запомнить», как рисуется та или иная цифра. Для
этого алгоритм рисования цифр 0 и 6 нужно оформить в виде вспомогательного
алгоритма
.

Вспомогательный алгоритм

Вспомогательный алгоритм
рисования цифры 0 будет выглядеть так:
алг цифра_0
нач
     
опустить перо

     сместиться
на вектор (0, 2)

     сместиться
на вектор (1, 0)

     сместиться
на вектор (0, -2)

     сместиться
на вектор (-1, 0)

     поднять
перо

     сместиться
на вектор (2, 0)

кон

Строка алг цифра_о называется заголовком
алгоритма
. Имя алгоритма — цифра 0. Алгоритм рисования буквы помещается
чуть правее между служебными словами нач и кон.

Вспомогательный алгоритм
рисования цифры 6 оформите самостоятельно.

Приказ на выполнение
вспомогательного алгоритма записывается в основном алгоритме.

В среде Кумир основной
алгоритм для изображения индекса 660000 будет выглядеть так:

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

алг индекс Красноярска

нач
     цифра_6
     цифра_6
     цифра_0
     цифра_0
     цифра_0
     цифра_0
кон

Цикл повторить n раз

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

Например,
программу рисования ряда из пяти ромбов (рис. 15) с помощью конструкции
повторения можно записать так:

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

алг ряд ромбов

нач
     
сместиться в
точку (1,2)

     нц 5 раз
          
опустить перо

          сместиться
на вектор (1, 2)

          сместиться
на вектор (1, -2)

          сместиться
на вектор (-1, -2)

          сместиться
на вектор (-1, 2)

          поднять перо

          сместиться
на вектор (3, 0)

     кц
кон

               
Р
исунок
15

Рисование ромба можно оформить
в виде вспомогательного алгоритма:
алг ромб
нач
     сместиться на вектор (1, 2)

     сместиться
на вектор (1, -2)

     сместиться
на вектор (-1, —2)

     сместиться на вектор (-1, 2)

кон

Тогда основной алгоритм будет
выглядеть так:

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

алг ряд ромбов_1

нач
     сместиться в точку (1,2)

     нц 5 раз
          
опустить
перо

          ромб
          поднять перо

          сместиться
на вектор (3, 0)

     кц
кон

В общем виде конструкция
повторения записывается так:

Нц <число повторений> раз

<тело цикла>

Кц

Служебные слова нц и кц пишутся
одно под другим. Чуть правее между ними записывается повторяющаяся
последовательность команд (тело цикла). Число повторений — произвольное целое
число. Именно столько раз при выполнении алгоритма будут повторены команды,
образующие тело цикла.

Практические
работы для самостоятельного выполнения

Задания рассчитаны на
группу в 10 человек. Каждая карточка содержит по три задания разного уровня
сложности.

Вариант 1

1. Начертите красным цветом контур буквы «А».
Размеры буквы – произвольные.

2. Составьте программу рисования
прямоугольника со сторонами, параллельными осям координат, и вершинами в точках
(2; -2) и (-1; 5).

3. Составьте программу рисования фигуры,
изображенной на рисунке, таким образом, чтобы во время рисования перо не
отрывалось от бумаги, и ни одна линия не проводилась дважды.

Кумир - Исполнитель Чертежник - Алгоритм рисования простой фигуры 1

Вариант 2

1. Начертите желтым цветом контур буквы «Д».
Размеры буквы – произвольные.

2. Составьте программу рисования квадрата с
вершинами, лежащими на осях координат. Координаты одной из вершин (0; 11).

3. Составьте программу рисования фигуры,
изображенной на рисунке, таким образом, чтобы во время рисования перо не
отрывалось от бумаги, и ни одна линия не проводилась дважды.

Кумир - Исполнитель Чертежник - Алгоритм рисования простой фигуры 2

Вариант 3

1. Начертите синим цветом контур буквы «М».
Размеры буквы – произвольные.

2. Составьте программу рисования ромба с
вершинами, лежащими на осях координат. Координаты двух вершин (-5; 0) и (0;
18).

3. Составьте программу рисования фигуры,
изображенной на рисунке, таким образом, чтобы во время рисования перо не
отрывалось от бумаги, и ни одна линия не проводилась дважды.

Кумир - Исполнитель Чертежник - Алгоритм рисования простой фигуры 3

Вариант 4

1. Начертите голубым цветом контур буквы «Ж».
Размеры буквы – произвольные.

2. Составьте программу, в результате которой
будет нарисован прямоугольный треугольник со сторонами 8, 10 и 6 единиц.
Координаты вершины прямого угла треугольника (1; 2), катеты параллельны осям
координат, треугольник располагается в первой четверти координатной плоскости.

3. Составьте программу рисования фигуры,
изображенной на рисунке, таким образом, чтобы во время рисования перо не
отрывалось от бумаги, и ни одна линия не проводилась дважды.

Кумир - Исполнитель Чертежник - Алгоритм рисования простой фигуры 4

Вариант 5

1. Начертите фиолетовым цветом контур буквы
«Щ». Размеры буквы – произвольные.

2. Составьте программу рисования ромба с
диагоналями длиной 5 и 10 единиц, параллельными осям координат. Координаты
центра ромба (15; 15). Большая ось ромба параллельна ось Х.

3. Составьте программу рисования фигуры,
изображенной на рисунке, таким образом, чтобы во время рисования перо не
отрывалось от бумаги, и ни одна линия не проводилась дважды.

Кумир - Исполнитель Чертежник - Алгоритм рисования простой фигуры 5

Вариант 6

1. Начертите белым цветом контур буквы «Ц».
Размеры буквы – произвольные.

2. Составьте программу рисования
равнобедренного треугольника, если координаты его вершины при равных сторонах
равны (5; 8), длина высоты, проведенной из этой вершины, равна 6. Высота
параллельна оси Х.

3. Составьте программу рисования фигуры,
изображенной на рисунке, таким образом, чтобы во время рисования перо не
отрывалось от бумаги, и ни одна линия не проводилась дважды.

Кумир - Исполнитель Чертежник - Алгоритм рисования простой фигуры 6

Вариант 7

1. Начертите зеленым цветом контур буквы «Й».
Размеры буквы – произвольные.

2. Составьте программу рисования
параллелограмма, две стороны которого параллельны оси У и равны 10 единиц.
Координаты двух его вершин (2; 0) и (4; 2).

3. Составьте программу рисования фигуры,
изображенной на рисунке, таким образом, чтобы во время рисования перо не
отрывалось от бумаги, и ни одна линия не проводилась дважды.

Кумир - Исполнитель Чертежник - Алгоритм рисования простой фигуры 7

Вариант 8

1. Начертите оранжевым цветом контур буквы
«К». Размеры буквы – произвольные.

2. Составьте программу рисования параллелограмма,
две стороны которого параллельны оси Х. Координаты трех его вершин (0; 0), (6;
0), (4; 6).

3. Составьте программу рисования фигуры,
изображенной на рисунке, таким образом, чтобы во время рисования перо не
отрывалось от бумаги, и ни одна линия не проводилась дважды.

Кумир - - Исполнитель Чертежник - Алгоритм рисования простой фигуры 8

Вариант 9

1. Начертите синим цветом контур буквы «Ъ».
Размеры буквы – произвольные.

2. Составьте программу рисования
равнобедренной трапеции, симметричной относительно оси У, две стороны которой параллельны
оси Х. Координаты двух ее вершин (12; 1) и (-7; 5).

3. Составьте программу рисования фигуры,
изображенной на рисунке, таким образом, чтобы во время рисования перо не
отрывалось от бумаги, и ни одна линия не проводилась дважды.

Кумир - Исполнитель Чертежник - Алгоритм рисования простой фигуры 9

Вариант 10

1. Начертите желтым цветом контур буквы «Ы».
Размеры буквы – произвольные.

2. Составьте программу рисования
прямоугольного треугольника, катеты которого лежат на осях координат. Медиана,
проведенная из прямого угла, заканчивается в точке с координатами (2; 2) и
является также и высотой.

3. Составьте программу рисования фигуры,
изображенной на рисунке, таким образом, чтобы во время рисования перо не
отрывалось от бумаги, и ни одна линия не проводилась дважды.

Кумир - Исполнитель Чертежник - Алгоритм рисования простой фигуры 10

Список литературы

1.     Босова Л.Л. Информатика: уч. для 9 кл. –2-е изд., испр. – М.:
БИНОМ. Лаборатория знаний, 2014

2.     Камалова Н.А.http://festival.1september.ru/articles/594645/

3.     Нурмухамедов Г.М. Информатика. Теоретические основы: учеб. Пос.
для подготовки к ЕГЭ. – СПб.: БХВ-Петербург, 2012

4.     Поляков К.Ю., Еремин Е.А. Информатика. Углубленный уровень: уч.

5.     для 10кл.: в 2 ч. Ч.1. – М.: БИНОМ. Лаборатория знаний, 2013

6.     Семакин И.Г., Залогова Л.А., Русаков С.В. Информатика и ИКТ: уч.
для 9 кл. – М.: БИНОМ. Лаборатория знаний, 2012

7.     Сухих Н.А.Поурочные разработки по информатике: 9 класс. –М.: ВАКО,
2012.

8.     https://murnik.ru/upravlenie-ispolnitelem-chertjozhnik

Понравилась статья? Поделить с друзьями:
  • Сталкер лост альфа как найти воронина
  • Страница недоступна сайт выполнил переадресацию слишком много раз как исправить
  • Как найти корень числа в скобках
  • Как правильно составить древо рода с чего начать
  • Как найти санаторий по профилю