Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
домашняя работа 2 / заяц / заяц / Текстовик феи.docx
Скачиваний:
15
Добавлен:
11.02.2015
Размер:
46.07 Кб
Скачать

Министерство образования и науки Российской Федерации

Государственное образовательное учреждение высшего профессионального образования

«Магнитогорский государственный технический университет им Г.И. Носова»

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

Домашняя работа №2

по дисциплине «Организация ЭВМ» Вариант 8

Выполнил студент группы АВ-08-1: Лебедева С.И.

Проверил: д.т.н. Ячиков И.М.

Магнитогорск 2010г

Содержание

1 Условие задачи 3

2 Постановка задачи 3

3 Инструкция пользователю 3

4 Инструкция для программиста 3

5 Алгоритм программы 4

6 Текст программы 5

Список использованной литературы 16

  1. Условие задачи

Составить игровую программу «ПОГОНЯ» в которой «заяц» постоянно убегает от «волка» в пространстве ограниченном стенками. Скорость «зайца» постоянна, но направление меняется с учетом направления «хищника». Вы управляете естественно «волком» и Ваша задача поймать зайца за более короткое время.

Примечание: Лучше использовать графический видеорежим, например 12h, но допустим и текстовый режим с псевдографикой.

  1. Постановка задачи

Необходимо написать программу, непрерывно отслеживающую нажатия клавиш UP,DOWN,LEFTиRIGHT. При нажатии этих клавиш, направление движения волка должно соответственным образом измениться, при этом движения зайца должны быть направлены в сторону противоположную стороне питона. Ни волк ни заяц не могут выходить за пределы поля. В случае когда волк переходит на соседнюю с зайцем клетку игра должна быть окончена.

  1. Инструкция пользователю

Управление волком осуществляется нажатием клавиш UP,DOWN,LEFTиRIGHT. При передвижении волка на 1 клетку, заяц так же передвигается на 1 клетку в сторону , противоположную стороне волка. Игра заканчивается когда волк встанет на соседнюю с зайцем клетку.

  1. Инструкция для программиста

В программе использованы следующие переменные:

hare

Координаты зайца

wolf

Координаты волка

time

Хранит в себе время запуска программы

step

Флаг, указывающий на то, что будет сделан ход.

gmover

Флаг конца игры.

В программе использованы следующие процедуры:

main

Основная процедура, в которой в цикле происходит проверка нажатой клавиши, перерисовка волка и зайца и т.д.

init

Инициализация. Присваивает переменным начальные значения, очищает экран, прячет курсор, сохроняет время запуска программы.

clrscr

Очистка экрана.

prtln

Печать разделительной линии.

draw

Процедура которая рисует симвл, координаты которого передаются в bx, атрибуты в ax.

drlfhr

Рисует живого зайца.

drddhr

Рисует мёртвого зайца.

drwolf

Рисует волка.

clear

Отчищает клетку от ранее нарисованного на ней символа

clhare

clwolf

Отчищает клетку зайца.

Отчищает клетку волка.

topos

По заданным экранным координатам рассчитывает положение в текстовом видеобуфере.

getchar

Получение кода нажатой клавиши.

prepare

Анализируется нажатая клавиша.

wolfst

Рассчитываются новые координаты волка и рисуем его.

harest

Рассчитываются новые координаты зайца и рисуем его.

getdist

Определение расстояния между позицией волка и предполагаемой позицией зайца.

info

Вывод времени работы программы.

extest

Проверка на соседство зайца и волка.

  1. Алгоритм программы

В начале работы программы происходит инициализация переменных, очистка экрана, проводится линия, делящая экран на игровую область и область для отображения игрового времени, сохраняется текущее. Далее происходит получение кода нажатой клавиши и если эта клавиша влияет на работу программы, выполняется соответствующее ей действие. Если была нажата какая-либо из клавиш UP,DOWN,LEFTилиRIGHT, будет соответственно изменено положение волка. После чего для зайца проверяются все варианты хода, при которых расстояние между ним и волком не уменьшилось бы. Если заяц находится на соседний с волком клетке то волк съедает зайца и игра заканчивается.

На рисунке 1 приведена блок-схема работы программы.

Рисунок 1 – Блок схема работы программы

Соседние файлы в папке заяц