Коротеев
С.В.
кандидат
технических наук,
Высший
колледж информатики
Новосибирского
государственного университета
ПРОГРАММИРОВАНИЕ ИГР
В СИСТЕМЕ ИЗУЧЕНИЯ
ЯЗЫКОВОГО ПРОГРАММИРОВАНИЯ УЧАЩИМИСЯ
ШКОЛ И КОЛЛЕДЖЕЙ
Несмотря на развитие
языкового программирования в направлениях объектно-ориентированного
программирования, визуального программирования, веб-программирования, и сегодня
изучение структурного программирования остаётся актуальным. И хотя многие
предпочитают решать задачи в С-подобных средах, на языке Pyton и других «прогрессивных» технологиях,
многие школьники по-прежнему изучают основы программирования на языках Бейсик и
Кумир. И уже прорывом в изучении языкового программирования в школе является
использование в большинстве школ различных модификаций языка Паскаль. А в
отдельных школах изучается классический С и Pyton.
Наиболее интересными
задачами для структурного программирования можно считать программирование
простейших компьютерных игр. Использование элементов графики, организация
интерактивного диалога, применения генератора случайных чисел, использование
файлов делает увлекательным программирование даже в «устаревших» паскалевских
средах. При этом уровень созданной игры может быть довольно высоким. Расширение
игры от примитивной до добротной делается поэтапно, при этом, инициатором
«развития» игры выступает сам её автор – ученик, а не преподаватель.
Конечно, есть
отдельные ученики, которые могут и в 8 классе разобраться с тонкостями
программирования на Java,
C#,
C++.
Но в настоящее время школьная программа, по крайней мере с точки зрения ЕГЭ,
ориентирована на программирование на Бейсике, Паскале и С.
Какие же игры могут
программировать ученики 8-9 классов на языке Паскаль? Какие среды можно использовать при этом?
Простейшими играми
можно считать консольные приложения, работающие по схеме: ввод исходных
параметров – вероятностный процесс – выдача результатов. Такими задачами могут
быть: «Магазин», «Правитель», «Курорт» и другие. Например, в игре «Магазин»
игрок вносит с клавиатуры количество касс в магазине. После ввода данных
программа начинает имитировать работу касс, выдавая время и выручку каждой из
касс. В конце «дня» выдаются результаты работы всего магазина, а игрок должен
скорректировать план работы на «завтра». Результатом игры является результат
«недельного» «менеджмента». Такая игра известна ещё с конца 1980-х годов. К
минусам игры можно отнести, прежде всего, отсутствие графики. Ну, а основной
плюс, навыки программирования с использованием генератора случайных чисел,
работа с модулем CRT.
Достаточно интересной
задачей для учащихся является программа угадывания числа. Игрок загадывает
число от 1 до 1000, а компьютер пытается угадать загаданное число, получая от
игрока корректировочные сообщения «больше» и «меньше». Используя алгоритм,
связанный со степенями числа 2, компьютерная игра за 10 ходов угадывает
натуральное число, загаданное игроком. Эта игра также не предусматривает, по
крайней мере не требует, хорошей графики.
Для использования
графической библиотеки можно рассмотреть игру «Виселица» и её модификации.
Игра имеет базу слов.
Как вариант, для игры «Флора-фауна» для выбора загадываемого слова программа
использует типизированный файл, в котором каждый элемент представляет собой
запись, содержащую строковые поля, хранящие названия животных, растений и т.д.
на различных языках, в простейшем случае на английском и русском языках. Для загаданного слова на
экран высвечивается «маска», из которой игрок может узнать количество букв в
загаданном слове, а уже в ходе игры следить за наличием букв в отгадываемом
слове.
Игроку предоставляется
определённое (например, 8) количество неудачных попыток, после которых «игрок»
будет «повешен».
Для данной игры
графика необходима, так как нужно отображать процесс угадывания слова. Также
программа должна получать от игрока буквы с клавиатуры.
При создании такой
программы в среде FreePascal
2.6.0 возникает проблема: в графическом режиме не функционирует возможность
работы с клавиатурой. А, следовательно, не возможно вносить буквы при их
угадывании.
Более хороший
результат дала попытка создать программу в среде Pascal ABC. Созданная игра позволяет пополнять
словарный запас при изучении английского языка. Ниже приведён скрин программы.

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