Написание игровой программы Tetris и описание алгоритма

    Дисциплина: Программирование
    Тип работы: Курсовая
    Тема: Написание игровой программы Tetris и описание алгоритма

    Задание.
    Написать на языке
    Си++
    c использованием объектно-ориентированного программирования
    и отладить в интерактивном режиме игровую программу TETRIS.
    Оглавление.
    1. Техническое задание .......................................................................... стр. 3.
    3. Практическая часть .
    3.1. Пояснительная записка (технический проект) .......................... стр. 6.
    3.2. Руководство оператора (пользователя) ..................................... стр. 10.
    3.3. Руководство (системного) программиста ................................... стр. 11.
    3.4. Описание программы ...................................................................... стр. 13.
    4. Заключение ........................................................................................... стр. 14.
    5. Литература ........................................................................................... стр. 15.
    6. Приложения.
    6.1. Описание алгоритма программы .................................................. стр. 17.
    6.2. Текст программы .............................................................................. стр. 28 .
    Техническое задание (ГОСТ 19.201-78).
    1.Введение.
    Наименование программы - \"MAI-TETRIS\". Применение программы - в области игровых программ.
    2. Основание для разработки.
    Выполнение курсовой работы по кафедре 806.
    3. Назначение разработки.
    Данная программа является игровой, она применяется для развлечения пользователей, совершенствования их координации движения и логического мышления.
    4. Требования к программе.
    4.1. Требования к функциональным характеристикам.
    В состав программы входят функции отображения на экране
    двужущихся фигурок, параллельного переноса их вправо и влево, поворота вокруг собственной оси, быстрого падения на дно короба и ряд вспомогательных функций (контроль
    наложения фигур, отображение элементов фигур и т.д.).
    Входные данные -
    коды нажимаемых клавиш.
    Выходные данные - графическая информация, выводимая на экран.
    В работе программы временные характеристики несущественны.
    4.2. Требования к надежности.
    Надежное функционирование программы обеспечивается проверкой наложения при перемещении фигур и ограничением, накладываемым на набор входных данных (коды нажатых клавиш
    игнорируются, если эти клавиши не являются управляющими в игре).
    4.3. Требования к составу и параметрам технических средств ЭВМ, внешние устройства, их характеристики.
    Для функционирования программы требуется персональная ЭВМ с процессором 8086/8088, от 640 килобайт оперативной памяти, видеоадаптер VGA/EGA и соответствующий монитор. Прочие
    внешние устройства для работы программы не требуются.
    4.4. Требования к информационной и программной совместимости ОС, система программирования, используемые программные средства, методы решения, информационные структуры и
    т.п.
    Для функционирования программы требуется ОС MS-DOS версии 3.30 или выше, от 32 килобайт свободной оперативной памяти. Программа разработана в
    интегрирированной среде
    Borland C++ версии 3.1.
    4.5. Специальные требования.
    Специальные требования отсутствуют.
    5. Требования к программной документации.
    Требования к программной документации отсутствуют.
    6. Технико-экономические показатели. Ориентировочная экономическая эффективность, преимущества по сравнению с аналогами.
    Преимуществом по сравнению с аналогом является возможность выбора трех скоростей игры.
    7. Стадии и этапы разработки.
    Стадии и этапы работ
    Сдержание
    работ
    Сроки
    Исполнители
    ТЗ
    Постановка задачи, определение требований, структуры данных, метода решения и т.д.
    24.10
    Чередников М.А.
    Техниче-ский
    проект
    Разработка алгоритма, определение формы представления данных, структуры программы.
    Пояснительная записка.
    17.11
    Чередников М.А.
    Рабочий проект
    Программирование. Разработка документации. Испытание программы.
    6.12
    Чередников М.А.
    Пояснительная записка (ГОСТ 19.404-79)
    1. Введение
    Наименование программы - \"MAI-TETRIS\", основание разработки - выполнение курсовой работы по курсу \"Алгоритмические языки и программирование\".
    2. Назначение и область применения программы.
    Назначение программы - развлечение играющих, совершенствование их координации и логического мышления. Программа может применяться в качестве игровой на разных типах персональных
    компьютеров.
    3. Технические характеристики.
    3.1. Постановка задачи на разработку, описание методов решения.
    Разработать алгоритм, осуществляющую передвижение фигур по экрану сверху вниз, координацию их местоположения в соответствии с действиями играющего.
    Фигуры состоят из квадратов одинакового размера, набор фигур конечен, последовательность появления фигур должна быть случайной, причем появления фигур должны быть
    равновероятными. Игрок должен укладывать фигуры на дно ящика с наибольшей плотностью (количество незаполненных квадратов должно быть минимальным). При этом если слой, полностью
    заполненный квадратами, должен автоматически изыматься из ящика. Квадраты фигур не должны налагаться друг на друга. Поворот
    фугры вокруг своей оси должен осуществляться таким образом, чтобы не были задеты другие фигуры, стенки, дно ящика.
    3.2. Описание алгоритма и/или функционирования программы
    3.3. Описание и обоснование выбора метода организации данных.
    Данные
    Метод организации
    Фигура
    Двумерный
    массив-наиболее естественное представление, например:
    Ящик
    Двумерный массив, элемент которого-целое число - соответствует свободной или занятой ячейке.
    Каталог фигур
    Массив из приведенных выше матриц.
    Ширина, высота
    ящика,количество цветов и фигур; флаги наложения, достижения дна ящика, свободной ячейки и др.
    Константы
    В соответствии с принципами объектно-ориентированного программирования в программе данные организованы в несколько объектов:
    - ящик:
    class
    Glass
    iAttribute;
    // переменные, используемые
    iRange;
    // для описания движения фигуры,
    x,y;
    // а также её вида и цвета
    char
    pbyMask[100];
    char
    abyGlass
    // двумерные массивы,
    [CONST_WIDTH+4][CONST_HEIGTH+4];
    изображающие
    ящик
    char
    abyTemp
    // и используемые в процессе
    [CONST_WIDTH+4][CONST_HEIGTH+4];
    всей
    игры
    char
    abyOldGlass
    [CONST_WIDTH+4][CONST_HEIGTH+4];
    iStatus;
    void
    Figure();
    // функции генерации случайной
    void
    Turn();
    // фигуры, её перемещения,
    Check(
    int op);
    поворота
    public:
    проверки
    наложения
    void
    DoRight();
    void
    DoTurn();
    void
    QuickFall();
    virtual void
    PutArea(
    int,int,int);
    virtua
    l int
    domize();
    собсственно тетрис - класс, являющийся потомком ящика и перекрывший 2 виртуальные функции:
    PutArea() и
    Randomize().
    3.4. Описание и обоснование выбора состава технических и программных средств.
    Для написания программы был выбран язык C, т.к. в последнее время он мною использовался намного больше, чем Паскаль. Отказ от библиотеки
    Turbo
    Vision был продиктован невозможностью работы с этой библиотекой в графическом режиме.
    4. Ожидаемые технико-экономические показатели.
    Ожидаемая разработка будет отличаться низкими требованиями к аппаратной части ЭВМ.
    5. Источники, используемые п...

    Забрать файл

    Похожие материалы:


ПИШЕМ УНИКАЛЬНЫЕ РАБОТЫ
Заказывайте напрямую у исполнителя!


© 2006-2016 Все права защищены