Иллюстрированный самоучитель по Tirbo Pascal


Игра ним - часть 6


С учетом сказанного назначим следующие глобальные константы и переменные:

const

MAXROW = 14; {Максимальное количество рядов} 

MAXCOL = 20; {Максимальное количество фишек в ряду}

type

ColType= array [I..MAXROW] of Integer;

var

exit :Boolean; {Признак окончания работы}

change:Boolean; {Признак изменения условий игры}

nrow :Integer; {Количество рядов}

ncol :ColType; {Максимальное колич-во фишек по рядам}

col :ColType; {Текущее количество фишек по рядам}

Константа MAXCOL не участвует в формировании массивов, она будет использоваться для контроля горизонтальных размеров игрового поля. Поэтому она, а также пять переменных сделаны глобальными. Если считать, что начальная раскладка фишек соответствует схеме 3-4-5, то можно написать такой окончательный вариант главной программы:

Uses CRT; {Подключение библиотеки дополнительных

процедур и функций для управления экраном}

{------------------------}

Procedure Prepare; {Готовит экран к игре} 

begin {Prepare} 

end; {Prepare}

{------------------------}

Procedure GetPlayerMove;

{Получает, контролирует и отображает ход игрока}  

begin {GetPlayerMove} 

end ; {Get PlayerMove}

{------------------------}

Procedure SetOwnerMove;

{Находит и отображает очередной ход программы}  

begin {SetOwnerMove} 

end; {SetOwnerMove}

{------------------------}

begin {Главная программа}

nrow := 3; {Готовим игру... } 

ncol [1]:= 3; { на поле из трех } 

ncol [2]:= 4; { рядов фишек } 

ncol [3]:= 5; { по схеме 3-4-5.} 

repeat {Цикл изменения условий игры} 

Prepare; {Подготовить экран}

repeat {Игровой цикл}

GetPlayerMove; {Получить ход пользователя}

if not (exit or change) then

SetOwnerMove {Определить собственный ход} 

until exit or change 

until exit 

end.

Приступим к конструированию процедуры PREPARE. В ходе ее работы формируется значение переменной COL, соответствующее начальной раскладке фишек, и выводится информация о правилах игры. Чтобы было понятнее дальнейшее описание программной реализации, на рис. 2.4 показан вид экрана в начальном состоянии игры.




Начало  Назад  Вперед



Книжный магазин