сі відповідні описи повинні бути зібрані у єдиному розділі. Іншими словами, при необхідності ніщо не заважає створити в програмі два розділи описів міток або два розділи описів типів, наприклад.
Після розділу описів міток, типів, констант і змінних йдуть описи підпрограм (якщо в даній програмі використовуються підпрограми). Описи підпрограм слід одне за іншим, причому якщо одна підпрограма викликається з іншого, перша повинна бути описана раніше.
Після опису підпрограм починається тіло програми (або її розділ операторів). Воно завжди відкривається зарезервованим словом BEGIN і завершується словом END (з крапкою). br/>
2.2 Умова задачі.
В
Пасьянс В«Три пікуВ» розкладається 52 картами, 28 карт викладаються у формі снігових гірських піків одна на іншу. Інші 24 поміщаються в колоду.
Завдання - очистити вершини від снігу, тобто прибрати з В«піківВ» все карти.
Всі карти, крім тих, що в піках не закриті іншими, лежать сорочками вгору.
Гра починається з того, що відкриваємо першу карту з колоди і шукайте карту, гідність якої відрізняється то відкритою на одиницю (більше або меншою). Тепер ця карта стає верхньою у відкритій колоді. p> Потрібно намагатися знайти якомога більше довгий ланцюжок.
Якщо не можемо знайти карту, гідність якої на одиницю відрізняється від верхньої відкритої, відкриваємо наступну карту з закритої колоди.
Доступні тільки карти лежать зверху, тобто НЕ заслоненние іншими.
Нарахування очок. За кожну карту, взяту з колоди, у вас віднімається 5 очок, так само за кожні 10 секунд віднімається по 1 очку. За кожну прибрану з піку картку ви отримуєте на 1 очко більше, ніж за попередню (рахунок росте до тих пір, поки не візьмемо нову карту з колоди). Після взяття нової карти з колоди окуляри знову нараховуються з 1.
Якщо дійшли до вершини піку, тобто видалили верхню карту, то дається додатково 13 очок, та за кожний наступний пік на 13 очок більше. <В
Висновок.
У цій роботі спробував розглянути важливе розділ сучасного програмування - створення комп'ютерних ігор. Були визначено основні фази створення відеоігор. Я реалізував гру пасьянс В«Три піку В»і тим самим придбав нові і зміцнив старі навички програмування на мовою Turbo Pascal. <В
Список літератури.
1. Є. І. Ємеліна Основи програмування мовою Паскаль: М.: В«Фінанси та статистика В», 1997.
2. О. А. Меженний Самовчитель Turbo Pascal: М., СПб., Київ: В«ДіалектикаВ», 2003. p> 3. В. І. Гризлов, Т. П. Гризлова Турбо Паскаль 7.0: М.: В«ДМКВ», 1998. p> 4. В. В. Фаронов Turbo Pascal 7.0: М.: В«НолиджВ», 1999. br/>
Додаток .
Program ThreePeaks;
Uses EngPeaks, IntPeaks, CRT, DOS;
Procedure Init;
begin
InitCards;
GraphInit;
DrawCards;
DrawColode;
DrawScore;
DrawTime;
ShowMouse;
end;
Procedure CalcTime; {Вважаємо час}
begin
if GameBegin and ((CurTime-BeginTime)/18.2> 1) then {Вважаємо час}
begin
inc (seconds);
if (Seconds mod 10) = 0 then {кожні 10 секунд -1 очко}
begin
dec (Score);
DrawScore;
end;
BeginTime: = curtime;
DrawTime;
end;
end;
Type
TUserInfo = record
UserName: string [50];
wcnt: word; {Скільки перемог}
dcnt: word; {Скільки поpаженного}
AllScore: longint; {усього очок}
end;
Function DefeatOrWin (var UInf: TUserInfo): boolean; {Перевіряємо програш або вийгриш}
var
ch: char;
begin
if Defeat or (MoveCount = 28) then {Якщо програли або виграли}
begin
if Defeat then
begin
DrawText ('You are lose game');
inc (UInf.dcnt);
UInf.AllScore: = UInf.AllScore + Score;
end
else
begin
DrawText ('You are win game');
inc (UInf.wcnt);
UInf.AllScore: = UInf.AllScore + Score;
end;
repeat
if keypressed then ch: = readkey;
until (ch = # 13) or (ch = # 27);
if ch = # 27 then
begin
DefeatOrWin: = true;
exit;
end;
CloseGr;
Init;
end;
DefeatOrWin : = False;
end;
Function GetUserName: string;
var
name: string [50];
begin
ClrScr;
write ('Enter user name: ');
readln (name);
GetUserName : = Name;
end;
Procedure SaveToFile (UInfo: TUserInfo);
var
i: longint;
f: file of TUserInfo;
<...