Игра «Космонавт»



© 2004 А.В. Беляев, Д.И. Суясов, А.А. Шалыто

Санкт-Петербургский государственный университет информационных технологий, механики и оптики

Проектная документация
Исполняемая программа
Исходные тексты

Аннотация

Цель игры — пройти все уровни. Уровень считается пройденным при достижении игроком точки выхода. Для преодоления высоких препятствий и пропастей используется гарпун, на котором можно подтягиваться и раскачиваться.

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

Программа иллюстрирует предложенное в работе [1] разделение состояний в программе на два типа: управляющие и вычислительные. При этом, находясь в одном из управляющих состояний, система может проходить большое число вычислительных состояний. Например, находясь в состоянии «Полет», вычисляется функция, описывающая физику полета, которая в ходе вычисления принимает большое число состояний.

Предложенный подход делает понятие «состояние» конструктивным, так как обычно [2,3] состояния на указанные типы не разделяются, а под состояниями понимаются значения ячеек памяти, которых огромное количество.

Предложенный подход близок к подходу, развиваемому при построении гибридных динамических систем [4].

Обоснован выбор основных вычислительных алгоритмов, использованных в игре.

Приложение реализовано на платформе Java.

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

Литература

  1. Шалыто А.А., Туккель Н.И. От тьюрингова программирования к автоматному // Мир ПК. 2002. № 2.
  2. Буч Г. Объектно-ориентированный анализ и проектирование с примерами приложений на С++. М.: Бином; СПб.: Невский диалект, 1998.
  3. Лавров С. Программирование. Математические основы, средства, теория. СПб.: БХВ, 2002.
  4. Benveniste A., Le Guernic P. Hybrid Dinamical System Theory and the Singal Language //IEEE Trans. on Automatic Control. 1990. № 5.