Неділя, 29.12.2024, 20:02
Вітаю Вас Гість | RSS

Наш журнал

Меню сайту
Категорії розділу
Астрономія [2]
Статті з астрономії
Інформатика [3]
Статті з інформатики та інформаційних технологій
Природознавство [0]
Статті з природознавства
Фізика [3]
Статті з фізики
Наше опитування
Оцініть мій сайт
Всього відповідей: 83
Статистика

Онлайн всього: 1
Гостей: 1
Користувачів: 0
Форма входу

Каталог статей

Головна » Статті » Інформатика

Лабиринт для исполнителя Робот в Pascal ABC(Net)

Исполнитель – это устройство, способное выполнять определенный набор команд. Обычно с исполнителем связано некоторое поле, на котором он работает. Традиционно исполнители используются для быстрого обучения основным конструкциям языка программирования. В Pascal ABC реализованы исполнитель Робот и Чертежник. Исполнитель Робот действует на прямоугольном клеточном поле. Между некоторыми клетками, а также по периметру поля находятся стены. Основная цель Робота – закрасить указанные клетки и переместиться в конечную клетку.

Для данного исполнителя существуют стандартные задания, а также можно создавать новые с помощью модуля RobotMake. Для этого необходимо изменить файл RobTasks.pas, который находится в каталоге C:\Program Files\PABC\UNITS\Tasks на этот файл с кодом задания.

На основе незначительного изменения программы генерации лабиринта MazeGen.pas, файл с которой находится в каталоге C:\PABCWork\SAMPLES\Projects\Labyrinth мы создали задание для исполнителя Робот – найти выход из лабиринта.

Для вызова задания замените файл RobTasks.pas на Вашем компьютере. Для вызова задания используйте код:

uses Robot, RobTasks;

begin

Task('MyRob4');

end.

Окно задания выглядит так:

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

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

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

Это ее код: 

 

uses Robot, RobTasks;
 var i: integer;

 label R_Right,R_Up,R_Left,R_Down;

begin
  Task('MyRob4');
   while CellIsFree = true do
   begin
   R_Right: if FreeFromRight = true then Right
            else goto R_Down;

                 R_Up: if FreeFromUp = true then Up
                       else goto R_Right;

                            R_Left: if FreeFromLeft = true then Left
                                    else goto R_Up;

                                          R_Down: if FreeFromDown = true then Down
                                                 else goto R_Left;

   end
end.

 

Только не забудьте заменить файл RobTasks.pas, который находится в каталоге C:\Program Files\PABC\UNITS\Tasks на этот файл с кодом задания.

 

Категорія: Інформатика | Додав: fiziki (17.01.2017)
Переглядів: 5317 | Коментарі: 7 | Рейтинг: 0.0/0
Всього коментарів: 0
Ім`я *:
Email *:
Код *:
Пошук
Друзі сайту