Тетрис на паскале код

Содержание

uses
GraphABC, Events, Timers;

type
KeyPressed = (Up, Down, Left, Right, None);

<Процедура скрытия конца хвоста>
procedure HideEndHvost;
begin
SetPenColor(clWhite);
SetBrushColor(clWhite);
Circle(Tx[api], Ty[api], r);
end;

МИНИСТЕРСТВО ОБЩЕГО И ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ

Кафедра вычислительной техники

Тема: “Игровая программа “TETRIS”

студент гр. ВЗ-107 Афонин В.Ю.

к. т. н., доцент Цехоня Вячеслав Иванович

Написать на языке PASCAL и отладить в интерактивном режиме игровую программу TETRIS.

Основное внимание необходимо уделить процессу нисходящего поуровневого проектирования алгоритма.

1. Техническое задание . …. стр. 3.

2. Практическая часть .

2.1. Пояснительная записка (технический проект) . ….…. стр. 4.

2.2. Руководство (системного) программиста . …. …. стр. 7.

2.3. Руководство оператора (пользователя) . ……. стр. 8.

2.4. Описание программы . ….…. стр. 9.

3. Заключение . …. стр. 10.

4. Литература . …. стр. 11.

5.1. Текст программы . …. стр. 12.

Техническое задание (ГОСТ 19.201-78).

Наименование программы – "TETRIS". Применение программы – в области игровых программ.

2. Основание для разработки.

Выполнение курсовой работы.

3. Назначение разработки.

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

4. Требования к программе.

4.1. Требования к функциональным характеристикам.

В состав программы входят функции отображения на экране двужущихся фигурок, параллельного переноса их вправо и влево, поворота вокруг собственной оси, быстрого падения на дно короба и ряд вспомогательных функций (контроль наложения фигур, отображение элементов фигур и т.д.).

Входные данные – коды нажимаемых клавиш.

Выходные данные – графическая информация, выводимая на экран.

В работе программы временные характеристики несущественны.

4.2. Требования к надежности.

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

4.3. Требования к составу и параметрам технических средств ЭВМ, внешние устройства, их характеристики.

Для функционирования программы требуется персональная ЭВМ с процессором 8086/8088, от 640 килобайт оперативной памяти, видеоадаптер VGA/EGA и соответствующий монитор. Прочие внешние устройства для работы программы не требуются.

4.4. Требования к информационной и программной совместимости ОС, система программирования, используемые программные средства, методы решения, информационные структуры и т.п.

Читайте также:  Что это значит 000

Для функционирования программы требуется ОС MS-DOS версии 3.30 или выше, от 32 килобайт свободной оперативной памяти. Программа разработана в интегрирированной среде Turbo Pascal версии 7.0.

4.5. Специальные требования.

Специальные требования отсутствуют.

5. Требования к программной документации.

Требования к программной документации отсутствуют.

6. Технико-экономические показатели. Ориентировочная экономическая эффективность, преимущества по сравнению с аналогами.

Преимуществом по сравнению с аналогом является постоянное увеличение скорости игры.

Пояснительная записка (ГОСТ 19.404-79)

Наименование программы – "TETRIS", основание разработки – выполнение курсовой работы.

2. Назначение и область применения программы.

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

3. Технические характеристики.

3.1. Постановка задачи на разработку, описание методов решения.

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

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

3.2. Описание алгоритма и/или функционирования программы

3.3. Описание и обоснование выбора метода организации данных.

Данные Метод организации
Фигура Двумерный массив-наиболее естественное представление, например:
Ящик Двумерный массив, элемент которого-целое число – соответствует свободной или занятой ячейке. Каталог фигур Массив из приведенных выше матриц. Ширина, высота ящика,количество цветов и фигур; флаги наложения, достижения дна ящика, свободной ячейки и др. Константы

3.4. Описание и обоснование выбора состава технических и программных средств.

Для написания программы был выбран язык Паскаль. Отказ от библиотеки Turbo Vision был продиктован невозможностью работы с этой библиотекой в графическом режиме.

4. Ожидаемые технико-экономические показатели.

Ожидаемая разработка будет отличаться низкими требованиями к аппаратной части ЭВМ.

5. Источники, используемые при разработке.

При разработке используется статья "Новый мотор для старой идеи" из журнала "Монитор" № 3 за 1994 год.

Руководство (системного) программиста (ГОСТ 19.504-79).

1. Назначение и условие применения программы.

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

2. Характристики программы.

Программа запускается под управлением операционной системы MS-DOS версии 3.30 и выше из каталога, в котором содержится драйвер видеоадаптера egavga.bgi. Для её работы требуется от 32 килобайтов свободной оперативной памяти, видеоадаптер EGA/VGA и процессор 8086/8088 и выше.

3. Обращение к программе.

Обращение к программе осуществляется командой tetris.

4. Входные и выходные данные.

Читайте также:  Гугл карта где можно гулять по улицам

Входные данные – коды нажатых в режиме реального времени клавиш. Выходные данные – графическая информация на дисплее.

5. Сообщения (сообщения системному программисту).

Для нормальной (без замедления) работы программы на ЭВМ AT 286 или ЭВМ

PC XT рекомендуется уменьшить значение, присваиваемое переменной speed, в 2-3

раза. По аналогии рекомендуется увеличить это значение при использовании

программы на ЭВМ AT 486 и PENTIUM. После этого программу рекомендуется

6. Структура программы.

Исходный текст программы хранится в 1-м файле: tetris.pas.

Компиляция в турбо-среде осуществляется с использованием файла tetris.pas.

7. Настройка программы.

Программа готова к работе, настройки не требует.

8. Проверка программы.

Проверка работоспособности программы осуществляется в следующих случаях:

– независание фигуры при падении;

– падение фигуры до дна ящика;

– невыход фигуры за границы ящика;

– сдвиг фигуры и поворот её на расстоянии от стенок;

– сдвиг фигуры вблизи стенки и поворот её (при этом не должно происходить наложение фигуры на границу ящика);

– неналожение фигуры при достижении лежащих на дне ящика других фигур;

– изъятие слоя, не содержащего пустых ячеек (все ячейки заполнены квадратами фигур);

– "оседание" слоев при изъятии слоя, не содержащего пустых ячеек;

– окончание игры при заполнении ящика или по команде игрока.

9. Дополнительные возможности.

Дополнительные возможности отсутствуют.

Руководство оператора (пользователя) (ГОСТ 19.505-79).

1. Назначение программы.

Назначение программы – развлечение играющих, совершенствование их координации и логического мышления.

2. Условия выполнения программы.

Программа запускается под управлением операционной системы MS-DOS версии 3.30 и выше из каталога, в котором содержится драйвер видеоадаптера egavga.bgi. Для её работы требуется от 32 килобайтов свободной оперативной памяти, видеоадаптер EGA/VGA и процессор 8086/8088 и выше.

3. Выполнение программы.

Запуск программы осуществляется командой tetris из каталога, содержащего файлы tetris.exe и egavga.bgi. При запуске появляется окно с названием программы, прекратить вывод которого можно нажатием на клавишу . После этого на экране появляется ящик с падающими фигурами. Управление игрой осуществляется следующими клавишами:

Название клавиши Выполняемая функция
Стрелка вправо Сдвиг фигуры вправо
Стрелка влево Сдвиг фигуры влево
Стрелка вверх Поворот фигуры вокруг собственной оси
Стрелка вниз Падение фигуры до дна ящика
ESC Окончание игры

4. Сообщения оператору.

При работе прогрммы на машинах PC AT 286 или PC XT рекомендуется уменьшить значения, присваиваемые переменной speed в 2-3 раза для того, чтобы скорость падения фигур была приемлемой для игры.

История создания игры "Тетрис", смысл и правила данной головоломки. Разработка поля игры и фигур тетрамино. Процедуры и функции, используемые для реализации движения фигур, их поворота и складывания в ряды, удаления и подсчета количества целых рядов.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 02.02.2013
Размер файла 87,0 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Читайте также:  Как прикреплять сообщения в контакте

Размещено на http://www.allbest.ru/

1. Результаты выполнения работы

2. Код программы

Список использованных источников

Об игре ТЕТРИС

"Тетрис" был написан программистом Алексеем Пажитновым в июне 1985. В то время он работал в ВЦ Академии Наук СССР и занимался изучением проблем искусственного интеллекта, экспериментируя с простейшими головоломками. Принцип "Тетриса" позаимствован у популярной в шестидесятые годы прошлого века игры "Пентамино". Смысл данной головоломки сводится к следующему. Если взять пять квадратов и сгруппировать их всеми возможными способами, то получатся более десятка различных фигур – элементов "Пентамино". Далее, используя эти фигуры, необходимо выполнять простейшие задания, например, складывать более крупные квадраты.

Правила

Случайные фигурки тетрамино падают сверху в прямоугольный стакан шириной 10 и высотой 20 клеток. В полёте игрок может поворачивать фигурку и двигать её по горизонтали, но не замедлять полёт. Фигурка летит, пока не наткнётся на другую фигурку либо на пол стакана. Если при этом заполнился горизонтальный ряд из 10 клеток, он пропадает и всё, что выше его, опускается на 1 клетку. Темп игры постепенно увеличивается. Если пропадает одновременно 4 ряда, это называется «тетрис», отсюда название игры. Игра кончается, когда новая фигурка касается верхней границы стакана. Игрок получает очки за каждую фигурку, поэтому его задача – заполнять ряды, не заполняя сам стакан как можно дольше (максимизируя очки).

В этой курсовой работе мы ставили перед собой цель разработать программу, реализующую знаменитую и всеми любимую игру Тетрис в программной среде Turbo Pascal.

Главными и первоочередными задачами являются:

1) создание поля игры (стакана);

2) создание семи случайных фигур тетрамино;

3) движение фигур в поле;

4) возможность поворота фигур;

5) реализация складывания фигур в ряды;

6) удаление целых рядов и подсчёт их количества;

7) отображение последующей фигуры;

1) возможность выбора фигур для игры

2) создание одной дополнительной фигуры

3) реализация игры с различной скоростью

4) сохранение результатов игры в текстовый файл

5) подсчет очков с учётом скорости

6) создание дополнительных функций: выхода, паузы

1. Результаты выполнения работы

В программе используются:

1) массивы для создания поля игры;

процедуры и функции для создания фигур, поворота фигур, удаления рядов, вывода массива на экран и т.д. например: function cvet определяет цвет фигуры; procedure cls отчищает массив поля, procedure proverka удаление полной линии и прибавление очков, procedure paint Вывод состояния массива на экран и отображение последующей фигуры, procedure figura непосредственное определение формы фигуры,

2) procedure povorot реализация поворота фигуры.;

3) Оператор выбора case: например, в случайном выборе фигуры;

4) Цикл с пост условием Repeat/Until: в главном теле программы для зацикливания процесса игры;

5) Процедура считывания с клавиатуры keypressed и readkey для управления фигурами;

6) Модуль crt,который позволяет увеличить скорость выполнения программы в отличии от модуля Graph;

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *