Отправьте статью сегодня! Журнал выйдет ..., печатный экземпляр отправим ...
Опубликовать статью

Молодой учёный

Методика обучения теме «Алгоритмы и исполнители» на уровне основного общего образования с использованием среды PascalABC.NET

Педагогика
Препринт статьи
08.02.2026
Поделиться
Библиографическое описание
Кабачек, А. А. Методика обучения теме «Алгоритмы и исполнители» на уровне основного общего образования с использованием среды PascalABC.NET / А. А. Кабачек. — Текст : непосредственный // Молодой ученый. — 2026. — № 6 (609). — URL: https://moluch.ru/archive/609/133353.


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

Основными целями изучения информатики на уровне основного общего образования является формирование цифровой грамотности и алгоритмического мышления. Курс направлен на освоение теоретических основ информационных процессов и их практическое применение в повседневной жизни. В 7-м классе акцент делается на знакомстве с устройством компьютера и формировании базовых навыков работы с ним. Далее, в 8-м классе, фокус смещается на изучение теоретических основ информатики и развитие алгоритмического мышления и написание простых программ. В 9-м классе происходит более углублённое изучение программирования и осваиваются информационные технологии.

Согласно Федеральной рабочей программе (ФРП), как уже было указано, изучение основ алгоритмизации начинается в 8-м классе в рамках раздела «Алгоритмы и исполнители», который является одним из ключевых в базовом курсе информатики средней школы. Тем не менее, до сих пор нет единого мнения о том, как лучше преподавать этот раздел. Например авторские коллективы И. Г. Семакина, Л. А. Залоговой, С. В. Русакова и др. и Л. Л. Босовой и А. Ю. Босовой придерживаются разных подходов к обучению содержательной линии «Алгоритмы и программирование», включая разные решения относительно содержания теоретической и практической составляющих [6].

В учебно-методическом комплексе (УМК) И. Г. Семакина и др. изучение основ алгоритмизации начинается в 9-м классе в рамках раздела «Управление и алгоритмы». На данный раздел, согласно авторской рабочей программе, выделено 10 часов. В рамках данного УМК предлагается использовать гипотетический учебный исполнитель под названием ГРИС (Графический Исполнитель) для обучения основам алгоритмизации. После следует логический переход к изучению раздела «Введение в программирование» [5].

УМК Л. Л. Босовой и А. Ю. Босовой предлагает начинать изучение основ алгоритмизации с пропедевтического курса в 6-м классе [1] и продолжать изучение в 8-м классе в рамках раздела «Основы алгоритмизации», рассчитанного на 10 часов, после которого следует раздел «Начала программирования» [2]. Придерживаясь подхода непрерывного обучения, авторы возвращаются к теме и в 9-м классе, переходя к более сложным понятиям, на что отводится 8 часов [3]. Для обучения основам алгоритмизации авторы предлагают использовать такие формальные исполнители, как Черепаха, Чертёжник, Робот и другие, входящие в состав системы КуМир (Комплекта учебных МИРов)

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

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

Согласно ФРП, изучение темы «Алгоритмы и исполнители» в средней школе начинается в 8-м классе, поэтому в работе мы опираемся на УМК Л. Л. Босовой и А. Ю. Босовой. Несмотря на то, что в среде PascalABC.NET есть встроенные задания для исполнителей, для того, чтобы не создавать разрыв между учебником и нашим новым предложением, мы предлагаем методику для написания программ для заданий, идентичных «Компьютерному практикуму» («Чертёжник» (Работа 17), «Черепашка» (Работа 18) и «Робот» (Работа 19) [4]) с использованием среды PascalABC.NET.

Для примера, рассмотрим методику работы с исполнителем «Робот» и, в первую очередь, изучим подробнее его возможности. «Робот», реализованный в среде PascalABC.NET точно так же, как и в среде КуМир, существует в прямоугольном поле, разбитом на клетки, между которыми могут стоять стены (рис. 1).

Пример поля для робота в среде PascalABC.NET

Рис. 1. Пример поля для робота в среде PascalABC.NET

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

Таблица 1

Система команд исполнителя «Робот» в среде PascalABC.NET

Команда

Описание

Right

перемещает Робота вправо

Left

перемещает Робота влево

Up

перемещает Робота вверх

Down

перемещает Робота вниз

Paint

закрашивает текущую ячейку

WallFromLeft

возвращает True если слева от Робота стена

WallFromRight

возвращает True если справа от Робота стена

WallFromUp

возвращает True если сверху от Робота стена

WallFromDown

возвращает True если снизу от Робота стена

FreeFromLeft

возвращает True если слева от Робота свободно

FreeFromRight

возвращает True если справа от Робота свободно

FreeFromUp

возвращает True если сверху от Робота свободно

FreeFromDown

возвращает True если снизу от Робота свободно

CellIsPainted

возвращает True если ячейка, в которой находится Робот, закрашена

CellIsFree

возвращает True если ячейка, в которой находится Робот, не закрашена [7].

Для того, чтобы создать собственные задания в среде PascalABC.NET используются процедуры модуля RobotTaskMaker, приведённые в таблице 2.

Таблица 2

Процедуры модуля RobotTaskMaker

Процедура

Описание

Field(x,y: integer);

Задает поле Робота размера x на y клеток

HorizontalWall(x, y, len: integer);

Создает горизонтальную стену длины len и координатами левого верхнего угла (x, y)

VerticalWall(x, y, len: integer);

Создает вертикальную стену длины len и координатами левого верхнего угла (x, y)

RobotBegin(x,y: integer);

Задает начальное положение Робота в клетке с координатами (x, y)

RobotEnd(x, y: integer);

Задает конечное положение Робота в клетке с координатами (x, y)

RobotBeginEnd(x, y, x 1 , y 1 : integer);

Задает начальное положение Робота в клетке с координатами (x, y) и конечное в клетке с координатами (x 1 , y 1 )

Tag(x, y: integer);

Помечает клетку (x, y) для закрашивания

TagRect(x, y, x 1 , y 1 : integer);

Помечает прямоугольник из клеток, задаваемый координатами противоположных вершин прямоугольника (x, y) и (x 1 , y 1 ), для закрашивания

MarkPainted(x, y: integer);

Закрашивает клетку (x, y)

TaskText(s: string);

Задает формулировку текста задания в строке s

RegisterGroup(name, description, unitname: string; count: integer);

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

RegisterTask(name: string; p: TaskProcType)

Связывает имя задания name с процедурой p, в которой реализовано данное задание. Подобно описанной выше процедуре RegisterGroup, процедура RegisterTask должна вызываться в секции инициализации модуля, содержащего реализацию новой группы заданий для Робота [8].

Опишем последовательность создания группы заданий для исполнителя Робот. Создадим модуль MyRobTasks.pas для следующего задания:

Задание 1. Рисование картинки.Для исполнителя Робот в среде КуМир составьте программу рисования одной из следующих картинок (рис. 2) [4].

Рисунки к заданию 1

Рис. 2. Рисунки к заданию 1

unit MyRobTasks; //Задаём название модуля (должен совпадать с именем файла)

interface

uses RobotTaskMaker;

implementation

procedure Task1_ship;

begin

TaskText('Задание 1. Риcование картинки (корабль)'); //Задаём формулировку текста задания

Field(15, 10); //Задаём поле размером 15 на 10 клеток

TagRect(5, 10, 12, 10); //Где возможно отмечаем прямоугольные поля под закрашивание

TagRect(4, 9, 13, 9);

TagRect(6, 7, 11, 7);

TagRect(5, 4, 5, 6);

TagRect(8, 4, 10, 6);

TagRect(8, 2, 9, 3);

Tag(8, 8); //Отмечаем одиночные клетки под закрашивание

Tag(6, 3);

Tag(7, 2);

Tag(8, 1);

end ;

begin

RegisterGroup('myrobtasks', 'Алгоритмы и исполнители (Робот)', 'MyRobTasks', 1); //Регистрируем группу заданий

RegisterTask('task1', Task1); //Связываем им задание с процедурой

end .

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

uses Robot, MyRobTasks;

begin

Task('task1');

end .

Здесь Task — процедура, содержащаяся в модуле Robot и вызывающая задание с указанным именем. После запуска будет выведено следующее задание для Робота (рис. 3):

Задание 1 для исполнителя «Робот»

Рис. 3. Задание 1 для исполнителя «Робот»

Обратим внимание на то, что мы не задавали начальную и конечную точку для робота. В таком случае программой автоматически выбирается точка (1; 1).

Добавим ещё одно задание:

procedure Task2;

begin

TaskText('Задание 2. Закрашивание клеток (Робот закрашивает две клетки: клетку, в которой он находится в стартовой позиции, и клетку с другой стороны от стены)');

Field(5, 5);

RobotBeginEnd(2, 2, 2, 3); //Задаём начальную точку (2; 2) и конечную (2; 3)

HorizontalWall(1, 2, 1); // «Ставим» стену с началом в точке (1; 2), длиной 1

HorizontalWall(3, 3, 1);

VerticalWall(3, 1, 1);

VerticalWall(2, 3, 1);

Tag(2, 2);

Tag(2, 3);

end ;

Добавим вызов процедуры регистрации для данного задания; в результате секция инициализации примет следующий вид:

Begin

RegisterGroup('myrobtasks', 'Алгоритмы и исполнители (Робот)', 'MyRobTasks', 2);

RegisterTask('task1', Task1);

RegisterTask('task2', Task2);

end .

Изменим основную программу:

uses Robot, MyRobTasks;

begin

Task('task2');

end .

При запуске этой программы в окне исполнителя Робот будет выведено новое задание (рис. 4):

Задание 2 для исполнителя «Робот»

Рис. 4. Задание 2 для исполнителя «Робот»

Приведём пример решения для этого задания. В основном файле наберём шаблон и решим задание:

uses Robot, MyRobTasks;

begin

Task('task2');

Paint;

Left;

Down;

Right;

Paint;

end .

end .

После запуска программы и нажатия кнопки «пуск», увидим выполненное задание (рис. 5)

Пример выполненной программы

Рис. 5.Пример выполненной программы

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

Указанные нами особенности данной программы подтверждают преимущества перед используемыми сегодня учебными средами КуМир и ГРИС. Применение PascalABC.NET в рамках изучения раздела «Алгоритмы и исполнители» соответствует принципам преемственности и непрерывности обучения, устраняя проблему перехода с одной среды на другую при изучении «Основ программирования». Таким образом, мы считаем, что использование PascalABC.NET в рамках изучения темы «Алгоритмы и исполнители» является перспективным и важным шагом в развитии алгоритмического мышления и дальнейшего изучения программирования.

Литература:

  1. Босова, Л. Л., Босова, А. Ю. Информатика. 6 класс / Л. Л. Босова, А. Ю. Босова — 5-е издание, стереотипное. — Москва: «Просвещение», 2025–240 c.
  2. Босова, Л. Л., Босова, А. Ю. Информатика. 8 класс / Л. Л. Босова, А. Ю. Босова — 5-е издание, стереотипное. — Москва: «Просвещение», 2025–272 c.
  3. Босова, Л. Л., Босова, А. Ю. Информатика. 9 класс / Л. Л. Босова, А. Ю. Босова — 5-е издание, переработанное. — Москва: «Просвещение», 2025–272 c.
  4. Босова, Л. Л., Босова, А. Ю. Информатика. Компьютерный практикум. Базовый уровень. 7–9 классы/ Л. Л. Босова, А. Ю. Босова — 7-е издание, переработанное. — Москва: «Просвещение», 2025–192 c.
  5. Семакин И. Г. и др. Информатика. 9 класс / И. Г. Семакин, Л. А. Залогова, С. В. Русаков, Л. В. Шестакова — 5-е издание, стереотипное. — Москва: «Просвещение», 2024–208 c.
  6. Федеральная рабочая программа основного общего образования. Информатика. 7–9 классы (базовый уровень) — Москва: Институт стратегии развития образования, 2023–45 c.
  7. Исполнитель Робот / [Электронный ресурс] // Справка PascalABC.NET [URL: https://pascalabc.net/downloads/pabcnethelp/index.htm?page=LangGuide/index_lang_guide.html] (дата обращения: 15.09.2025).
  8. Модуль RobotTaskMaker / [Электронный ресурс] // Справка PascalABC.NET [URL: https://pascalabc.net/downloads/pabcnethelp/index.htm] (дата обращения: 15.09.2025).
Можно быстро и просто опубликовать свою научную статью в журнале «Молодой Ученый». Сразу предоставляем препринт и справку о публикации.
Опубликовать статью
Молодой учёный №6 (609) февраль 2026 г.
📄 Препринт
Файл будет доступен после публикации номера
Похожие статьи
Методика работы над алгоритмической задачей
Методика работы над алгоритмической задачей в процессе обучения школьников информатике
Алгоритмическая задача на уроке информатики и методика работы над ней
Методика работы над алгоритмической задачей как средство подготовки обучающихся по информатике
Возможность использования образовательной робототехники в обучении учащихся средней школы
Методика работы над алгоритмической задачей как способ формирования ИКТ-компетентности на уроках информатики
Развитие мышления программиста у школьников
Обучение алгоритмизации на уроках с использованием Лего Mindstorms EV3
Опыт использования алгоритмики и робототехники в дошкольном образовательном учреждении
Основы программирования и робототехники как инновационная технология развития интеллектуальных и речевых способностей старших дошкольников с ОВЗ

Молодой учёный