#7 Встроенный задачник. Исполнитель робот

Ответы на задания из предыдущей статьи

 
Задание 1
Код
Uses Drawman; 
Begin  
  Field(20,20); 
  ToPoint(2,2); 
  PenDown; 
  ToPoint(2,18); 
  ToPoint(18,18); 
  ToPoint(18,2); 
  ToPoint(2,2); 
  PenUp; 
  ToPoint(4,4); 
  PenDown; 
  ToPoint(4,16); 
  ToPoint(16,16); 
  ToPoint(16,4); 
  ToPoint(4,4); 
  PenUp; 
  ToPoint(0,0); 
End. 
 
Задание 2
Код
Uses Drawman; 
Begin  
  Field(20,20); 
  ToPoint(3,3); 
  PenDown; 
  ToPoint(3,17); 
  ToPoint(15,17); 
  ToPoint(17,15); 
  ToPoint(17,3); 
  ToPoint(3,3); 
  PenUp; 
  ToPoint(5,4); 
  PenDown; 
  ToPoint(5,11); 
  ToPoint(15,11); 
  ToPoint(15,4); 
  ToPoint(5,4); 
  PenUp; 
  ToPoint(6,12); 
  PenDown; 
  ToPoint(6,17); 
  ToPoint(14,17); 
  ToPoint(14,12); 
  ToPoint(6,12); 
  PenUp; 
  ToPoint(11,13); 
  PenDown; 
  ToPoint(11,16); 
  ToPoint(13,16); 
  ToPoint(13,13); 
  ToPoint(11,13); 
  PenUp; 
  ToPoint(0,0); 
End. 
 
Задание 3
Код
Uses Drawman; 
Begin  
  Field(44,20); 
  ToPoint(2,2); 
  PenDown; 
  ToPoint(2,18); 
  ToPoint(9,18); 
  ToPoint(9,10); 
  ToPoint(2,10); 
  PenUp; 
  ToPoint(10,2); 
  PenDown; 
  ToPoint(15,18); 
  ToPoint(20,2); 
  ToPoint(19,5); 
  ToPoint(11,5); 
  PenUp; 
  ToPoint(21,2); 
  PenDown; 
  ToPoint(21,18); 
  ToPoint(27,18); 
  ToPoint(27,10); 
  ToPoint(31,10); 
  ToPoint(31,2); 
  ToPoint(21,2); 
  PenUp; 
  ToPoint(42,18); 
  PenDown; 
  ToPoint(32,18); 
  ToPoint(32,2); 
  ToPoint(42,2); 
  PenUp; 
  ToPoint(0,0); 
End. 
 
 
Встроенный задачник
 
Для проверки своих умений, в будущем, можно использовать встроенный в Pascal задачник. Вызвать задачник можно командой "Task('x');", где x - группа и номер задания. Для исполнителя чертёжник предусмотрены следующие группы заданий:
 
a – вводные задания;
c – цикл с параметром;
cc – вложенные циклы;
p – процедуры без параметров;
pp – процедуры с параметрами.
 
Таким образом команда - Task('a1'); вызовет первое задание из группы вводных заданий:
 
Код
Uses Drawman; 
Begin  
 Task('a1');
End. 
 
 
В данном задании предлагается начертить отрезок, используя определённые команды исполнителя чертёжник. В случае корректного выполнения задания, внизу появиться надпись "Задание выполнено".
Обратите внимание: Не забывайте поднимать перо и перемещать его в точку (0,0) в конце вашей программы, иначе выполнение задания не будет засчитано!
Для того, чтобы окончательно закрепить полученные навыки управления чертёжником, выполните задания a1 - a5.
 
 
Исполнитель Робот
 
Исполнитель Робот действует на прямоугольном клеточном поле. Между некоторыми клетками, а также по периметру поля находятся стены. Основная цель Робота - закрасить указанные клетки и переместиться в конечную клетку.
Для того, чтобы подключить модуль "Робота", необходимо использовать следующий шаблон программы:
Код
Uses Robot; 
Begin  
 Field(x,y);
End. 
 
x - количество клеток по горизонтали,
y - количество клеток по вертикали.
 
Таким образом, если мы запишем команду Field(10,3); и запустим программу, то увидим нашего исполнителя Робот и поле, размером 10 на 3 клетки, на котором он работает:
 
 
В отличие от Чертёжника, робот понимает большее количество команд. Давайте для удобства разобьём все команды на 2 типа - базовые и дополнительные.
 
Набор базовых команд:
Right; – перемещает Робота вправо;
Left; – перемещает Робота влево;
Up; – перемещает Робота вверх; 
Down; – перемещает Робота вниз; 
Paint; – закрашивает текущую ячейку;
 
Набор дополнительных команд:
WallFromLeft – проверка наличия стены слева от Робота; 
WallFromRight – проверка наличия стены справа от Робота; 
WallFromUp – проверка наличия стены сверху от Робота; 
WallFromDown – проверка наличия стены снизу от Робота; 
FreeFromLeft – проверка отсутствия стены слева от Робота; 
FreeFromRight – проверка отсутствия стены справа от Робота; 
FreeFromUp – проверка отсутствия стены сверху от Робота; 
FreeFromDown – проверка отсутствия стены снизу от Робота; 
CellIsPainted – проверка наличия закрашенной ячейки "под Роботом"; 
CellIsFree – проверка наличия незакрашенной ячейки "под Роботом".
 
Давайте создадим для Робота поле, размером 5 на 5 клеток, и попытаемся управлять им:
Код
Uses Robot; 
Begin  
 
Field(5,5);
 Right;
 Up;
 Leftl
 Down;
 Paint;
End.
 
Данная программа заставит Робота немного пройтись и зарисовать одну клетку:
 
 
Кроме этого, у исполнителя Робот тоже имеется свой собственный задачник, который можно вызвать, уже знакомой вам, командой Task('x')где x - группа и номер задания. 
Для исполнителя Робот предусмотрены следующие группы заданий:
 
a – вводные задания;
c – цикл с параметром;
if – логические выражения;
w – циклы с условием;
сif – циклы + логические выражения;
count – переменные-счетчики;
cc – вложенные циклы;
p – процедуры без параметров;
pp – процедуры с параметрами.
 
Шаблон программы, для работы с задачником исполнителя Робот:
Код
Uses Robot; 
Begin  
 Task('a1');
End. 
 
 
Практика
 
Для того, чтобы попрактиковаться в управлении Роботом, выполните задания a1 - a4 из встроенного задачника.
 
Ваши вопросы и комментарии можете оставлять ниже.
Начинайте программировать прямо сейчас!
 
Категория: Первые шаги | Добавил: Decay_Dance (18.02.2014)
Просмотров: 20838 | Рейтинг: 0.0/0