Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Курсовые проекты » Пасьянс "Три піку"

Реферат Пасьянс "Три піку"





сі відповідні описи повинні бути зібрані у єдиному розділі. Іншими словами, при необхідності ніщо не заважає створити в програмі два розділи описів міток або два розділи описів типів, наприклад.

Після розділу описів міток, типів, констант і змінних йдуть описи підпрограм (якщо в даній програмі використовуються підпрограми). Описи підпрограм слід одне за іншим, причому якщо одна підпрограма викликається з іншого, перша повинна бути описана раніше.

Після опису підпрограм починається тіло програми (або її розділ операторів). Воно завжди відкривається зарезервованим словом 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;

<...


Назад | сторінка 7 з 8 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Creation of control system by a personnel how to begin with a zero
  • Реферат на тему: Вплив міжнародних відносин на політичну карту світу. Волго-Вятський район ...
  • Реферат на тему: Як бути, якщо контрагент за договором - нерезидент?
  • Реферат на тему: Історія очок і очкової оптики
  • Реферат на тему: Побудова карти у програмі ArcGIS