Компьютерные исполнители


ВВЕДЕНИЕ * ЧЕРТЁЖНИК * РОБОТ * РИСОВАЛЬЩИК * АБОРИГЕН * КЛАДОИСКАТЕЛЬ * ПОКУПАТЕЛЬ * ХОДОК * ССЫЛКИ * КАРТА


    Рисовальщик

    Среда исполнителя

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

     Горизонтальные линии и вертикальные линии могут быть поставлены на поле Рисовальщика с помощью команды ШАГ или с помощью команды Расстановка/Добавить объект .... Линии могут перемещаться с одного места на другое (при нажатой левой клавише мыши) или копироваться с помощью значка Знак копирования, который появляется, если объект выделяется при нажатой клавише Shift. Для избавления от знака копирования необходимо нажать правую кнопку мыши.
    На поле могут быть размещены один или несколько исполнителей, которые можно добавить с помощью значка копирования, как и другие объекты, или с помощью команды Расстановка / Добавить исполнителя. Для избавления от знака копирования исполнителей необходимо также нажать правую кнопку мыши.


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

Шаг

Шаг

  Рисовальщик перемещается на одну клетку в текущем направлении и оставляет след за собой- линию текущим выбранным цветом.

Прыжок

Прыжок

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

Повернуть_Налево

Повернуть_Налево

  Рисовальщик поворачивает налево относительно текущего направления.

Повернуть_Направо

Повернуть_Направо

  Рисовальщик поворачивается направо относительно текущего направления.

Сменить_Цвет(n)

Сменить_Цвет(n)

 Данная команда позволяет изменить цвет следа-линии, которую будет оставлять за собой Рисовальщик .

Номера цветов линий

1Чёрный5Красный
2Синий6Фиолетовый
3Зелёный7Жёлтый
4Болотный8Белый

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

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

     Линейным называют такой алгоритм, в котором команды выполняются одна за другой в порядке их записи.
    ПРИМЕР 1.Cоставим алгоритм, выполнив который Рисовальщик нарисует следующий рисунок.
Пример 1.
  Программа Пример_1
  Сменить_Цвет(6)
  Прыжок Шаг
  Повернуть_Налево Шаг
  Повернуть_Направо Шаг
  Повернуть_Налево Шаг
  Повернуть_Налево Шаг
  Повернуть_Направо Шаг
  Повернуть_Налево Шаг
  Повернуть_Налево Шаг
  Повернуть_Направо Шаг
  Повернуть_Налево Шаг
  Повернуть_Налево Шаг
  Повернуть_Направо Шаг
  Конец_Программы

    ПРИМЕР 2.Cоставим алгоритм, выполнив который Рисовальщик нарисует имя Саша.
Пример 2.
Программа Пример_2
Сменить_Цвет(3)
Повернуть_Налево
Шаг
Повернуть_Налево
Повернуть_Налево
Прыжок
Повернуть_Налево
Шаг
Шаг
Шаг
Повернуть_Налево
Шаг
Прыжок
Сменить_Цвет(7)
Повернуть_Налево
Шаг
Шаг
Шаг
Повернуть_Направо
Шаг
Повернуть_Направо
Шаг
Шаг
Шаг
Повернуть_Налево
Повернуть_Налево
Прыжок
Повернуть_Налево
Шаг
Повернуть_Налево
Прыжок
Повернуть_Налево
Прыжок
Прыжок
Сменить_Цвет(6)
Повернуть_Налево
Шаг
Шаг
Шаг
Повернуть_Направо
Прыжок
Повернуть_Направо
Шаг
Шаг
Шаг
Повернуть_Направо
Шаг
Повернуть_Налево
Повернуть_Налево
Прыжок
Шаг
Повернуть_Налево
Шаг
Шаг
Шаг
Повернуть_Направо
Повернуть_Направо
Прыжок
Прыжок
Прыжок
Повернуть_Налево
Прыжок
Сменить_Цвет(7)
Повернуть_Налево
Шаг
Шаг
Шаг
Повернуть_Направо
Шаг
Повернуть_Направо
Шаг
Шаг
Шаг
Повернуть_Налево
Повернуть_Налево
Прыжок
Повернуть_Налево
Шаг
Повернуть_Налево
Прыжок
Повернуть_Налево
Прыжок
Прыжок
Конец_Программы

    

Задания для самостоятельного выполнения



    Задание 1.
Cоставим алгоритм, выполнив который Рисовальщик нарисует имя Нина.
    Задание 2.
Помогите Рисовальщику нарисовать ваше имя.
    Задание 3.
Помогите Рисовальщику нарисовать придуманный вами рисунок.

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

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

    ПРИМЕР 3.
Cоставим алгоритм, в результате выполнения которого Рисовальщик нарисует рисунок по образцу.
Программа Пример_3
Сменить_Цвет(2) фигура
Сменить_Цвет(3) фигура
Сменить_Цвет(4) фигура
Сменить_Цвет(5) фигура
Конец_Программы
Программа фигура
Шаг Шаг Шаг
Повернуть_Налево
Шаг
Повернуть_Налево
Шаг
Повернуть_Направо

Шаг
Повернуть_Налево
Шаг
Повернуть_Налево
Шаг
Повернуть_Направо
Шаг
Повернуть_Налево
Шаг
Повернуть_Налево
Повернуть_Налево
Прыжок
Прыжок Прыжок
Повернуть_Направо
Прыжок
Конец_Программы


    

Задания для самостоятельного выполнения

Задание 4.
    Задание 4.Cоставьте алгоритм, в результате которого Рисовальщик нарисует рисунок по образцу.

    Задание 5.Cоставьте алгоритм, в результате которого Рисовальщик нарисует рисунок по образцу.

    Алгоритмы с повторением

     Конструкция повторения- это часть алгоритма, в которой некоторую последовательность действий надо повторить несколько раз. Такую многократно повторяющуюся часть алгоритма называют циклом.
    Алгоритм, в котором используется конструкция повторения, называется алгоритмом с повторением.
    При составлении алгоритмов с повторениями используется команда повторения:
Повторять_Пока (условие)
(действие 1)
(действие 2)
...
(действие n)
Завершить

    Команды-вопросы исполнителя

Впереди_Поле

Впереди_Поле

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

Впереди_Линия

Впереди_Линия

  Рисовальщик проверяет, есть ли по направлению движения линия.

Впереди_Узел

Впереди_Узел

  Рисовальщик проверяет, есть ли по направлению движения узел.

Вернуть_Цвет_Линии

Вернуть_Цвет_Линии

 Данная команда возвращает цвет линии, проходящей из текущего узла в следующий узел по направлению движения.

  Программа Цвет_Линии
  Описание
  а: Целый
  Конец_Описания
   а:=Вернуть_Цвет_Линии
  Вывод(а)
  Конец_Программы

    Наличие команд-вопросов для исполнителя Рисовальщик даёт возможность составлять различные алгоритмы, достаточно короткие по сравнению с линейными. Рассмотрим некоторые из них.

ПРИМЕР 4.

Составим алгоритм, с помощью которого Рисовальщик нарисует 4 линии разного цвета по образцу.
   
Программа Пример_4
   Сменить_Цвет(4)
   Повторять_Пока Впереди_Поле Шаг Завершить
   Повернуть_Налево Прыжок Повернуть_Налево
   Сменить_Цвет(7)
   Повторять_Пока Впереди_Поле Шаг Завершить
   Повернуть_Направо Прыжок Прыжок Прыжок
   Повернуть_Направо Сменить_Цвет(3)
   Повторять_Пока Впереди_Поле Шаг Завершить
   Повернуть_Налево Прыжок Повернуть_Налево
   Сменить_Цвет(6)
   Повторять_Пока Впереди_Поле Шаг Завершить
   Конец_Программы

ПРИМЕР 5.

Составим алгоритм, с помощью которого Рисовальщик нарисует рисунок по образцу.

Пример 5.
   
Программа Пример_5
   Описание т: Целый Конец_Описания
   т:=1
   Повторять_Пока т<7
   Сменить_Цвет(3) Шаг
   Повернуть_Налево
   Сменить_Цвет(6) Шаг
   Повернуть_Направо
   т:=т+1
   Завершить
   Повернуть_Налево
   Повернуть_Налево
   т:=1
   Повторять_Пока т<7
   Сменить_Цвет(3) Шаг
   Повернуть_Направо
   Сменить_Цвет(6) Шаг
   Повернуть_Налево
   т:=т+1
   Завершить
   Конец_Программы

    

Задания для самостоятельного выполнения


    Задание 6.Cоставьте алгоритм, в результате которого Рисовальщик нарисует рисунок по образцу.
Задание 7.     Задание 7.Cоставьте алгоритм, в результате которого Рисовальщик нарисует рисунок по образцу.

    Задание 8.Cоставьте алгоритм, в результате которого Рисовальщик нарисует рисунок по образцу.

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

     Конструкция ветвления- это часть алгоритма, в которой в зависимости от выполнения или невыполнения некоторого условия выполняется либо одна, либо другая последовательность действий.
    Алгоритм, в котором используется конструкция ветвления, называется алгоритмом с ветвлением.
    При составлении алгоритмов с ветвлениями используется команда если:
Если (условие)
    То (действие 1)
    Иначе (действие 2)
Конец_Если

     Выше указанная кнструкция называется полной,если в конструкции нет слова иначе, то конструкция называется не полной.

ПРИМЕР 6.

Cоставим алгоритм, выполнив который Рисовальщик сосчитает количество фиолетовых линий.

   
Программа Пример_6
   Описание м: Целый Конец_Описания
   м:=0
   Повторять_Пока Впереди_Поле
   Если Вернуть_Цвет_Линии =6
    То м:=м+1 Конец_Если
   Прыжок Завершить
   Повернуть_Налево Прыжок
   Повернуть_Налево
   Повторять_Пока Впереди_Поле
   Если Вернуть_Цвет_Линии =6
    То м:=м+1 Конец_Если
   Прыжок Завершить
   Повернуть_Направо
   Повторять_Пока Впереди_Поле
   Если Вернуть_Цвет_Линии =6
   То м:=м+1 Конец_Если
   Прыжок Завершить
   Вывод(м)
   Конец_Программы

ПРИМЕР 7.

Cоставим алгоритм, выполнив который Рисовальщик вставит линии жёлтого цвета в промежутках между фиолетовыми линиями.

Пример 7.

Программа Пример_7
   Сменить_Цвет(7)
   Повторять_Пока Впереди_Поле
   Если Вернуть_Цвет_Линии =0
       То
      Шаг
       Иначе
      Прыжок
   Конец_Если
   Завершить
   Конец_Программы

    

Задания для самостоятельного выполнения

   Задание 9. Cоставьте алгоритм, в результате которого Рисовальщик сосчитает количество салатовых и красных линий.


   Задание 10. Cоставьте алгоритм, в результате которого Рисовальщик сосчитает количество всех линий кроме жёлтых и белых.
    Задание 11.Cоставьте алгоритм замены всех синих линий на красные.

    


ВВЕДЕНИЕ * ЧЕРТЁЖНИК * РОБОТ * РИСОВАЛЬЩИК * АБОРИГЕН * КЛАДОИСКАТЕЛЬ * ПОКУПАТЕЛЬ * ХОДОК * ССЫЛКИ * КАРТА *


   А.А.Синица saassl@tut.by

Назад

Далее