Материалы сайта
Это интересно
Написание игровой программы Tetris и описание алгоритма
Руководство (системного) программиста (ГОСТ 19.504-79). 1. Назначение и условие применения программы. Назначение программы - развлечение играющих, совершенствование их координации и логического мышления. Программа может применяться в качестве игровой на разных типах персональных компьютеров и распространяется на условиях freeware. 2. Характристики программы. Программа запускается под управлением операционной системы MS-DOS версии 3.30 и выше из каталога, в котором содержится драйвер видеоадаптера egavga.bgi и файл со шрифтом litt.chr. Для её работы требуется от 32 килобайтов свободной оперативной памяти, видеоадаптер EGA/VGA и процессор 8086/8088 и выше. 3. Обращение к программе. Обращение к программе осуществляется командой tetris. 4. Входные и выходные данные. Входные данные - коды нажатых в режиме реального времени клавиш. Выходные данные - графическая информация на дисплее. 5. Сообщения (сообщения системному программисту). Для нормальной (без замедления) работы программы на ЭВМ AT 286 или ЭВМ PC XT рекомендуется уменьшить значение, присваиваемое переменной stop, в 2-3 раза. По аналогии рекомендуется увеличить это значение при использовании программы на ЭВМ AT 486 и PENTIUM. После этого программу рекомендуется перекомпилировать. 6. Структура программы. Исходный текст программы хранится в 3-х файлах: tetris.cpp, glass.cpp, tetris.h. |Название файла |Содержимое | |tetris.cpp |функция main и 2 функции класса tetris - | | |PutArea и Randomize - перекрывшие виртуальные | | |функции класс Glass | |glass.cpp |реализация классов Glass и Tetris | |tetris.h |определения констант, описание используемых | | |структур данных, интерфейс классов Tetris и | | |Glass | Компиляция в турбо-среде осуществляется с использованием файла проекта tetris.prj, в который записываются компоненты glass.cpp и tetris.cpp. 7. Настройка программы. Программа готова к работе, настройки не требует. 8. Проверка программы. Проверка работоспособности программы осуществляется в следующих случаях: - независание фигуры при падении; - падение фигуры до дна ящика; - невыход фигуры за границы ящика; - сдвиг фигуры и поворот её на расстоянии от стенок; - сдвиг фигуры вблизи стенки и поворот её (при этом не должно происходить наложение фигуры на границу ящика); - неналожение фигуры при достижении лежащих на дне ящика других фигур; - изъятие слоя, не содержащего пустых ячеек (все ячейки заполнены квадратами фигур); - "оседание" слоев при изъятии слоя, не содержащего пустых ячеек; - окончание игры при заполнении ящика или по команде игрока. 9. Дополнительные возможности. Возможность выбора скорости игры при её начале (выбор одной из трех скоростей игры). Приложения отсутствуют.