МегаПредмет

ПОЗНАВАТЕЛЬНОЕ

Сила воли ведет к действию, а позитивные действия формируют позитивное отношение


Как определить диапазон голоса - ваш вокал


Игровые автоматы с быстрым выводом


Как цель узнает о ваших желаниях прежде, чем вы начнете действовать. Как компании прогнозируют привычки и манипулируют ими


Целительная привычка


Как самому избавиться от обидчивости


Противоречивые взгляды на качества, присущие мужчинам


Тренинг уверенности в себе


Вкуснейший "Салат из свеклы с чесноком"


Натюрморт и его изобразительные возможности


Применение, как принимать мумие? Мумие для волос, лица, при переломах, при кровотечении и т.д.


Как научиться брать на себя ответственность


Зачем нужны границы в отношениях с детьми?


Световозвращающие элементы на детской одежде


Как победить свой возраст? Восемь уникальных способов, которые помогут достичь долголетия


Как слышать голос Бога


Классификация ожирения по ИМТ (ВОЗ)


Глава 3. Завет мужчины с женщиной


Оси и плоскости тела человека


Оси и плоскости тела человека - Тело человека состоит из определенных топографических частей и участков, в которых расположены органы, мышцы, сосуды, нервы и т.д.


Отёска стен и прирубка косяков Отёска стен и прирубка косяков - Когда на доме не достаёт окон и дверей, красивое высокое крыльцо ещё только в воображении, приходится подниматься с улицы в дом по трапу.


Дифференциальные уравнения второго порядка (модель рынка с прогнозируемыми ценами) Дифференциальные уравнения второго порядка (модель рынка с прогнозируемыми ценами) - В простых моделях рынка спрос и предложение обычно полагают зависящими только от текущей цены на товар.

Описание особенностей алгоритма в модулях





 

 

Unit1.Данный модуль содержит переменные и методы, с помощью которых осуществляется управление программой.

Глобальные переменные:

A:mass2- массив, содержащий скорости лошадей, заполняющийся в рандомном порядке.

d, s ,j, k, b, w, h1, h2, bn, h3, h4, d1, h5:integer – переменные необходимые для организации тотализатора.

b1, b2:tbitmap – изображения анимации бегущих лошадей.

Методы:

procedure TForm1.FormCreate(Sender: TObject) – очистка edit1,edit2,Memo1, присваивается первоначальная сумма очков, вывод количества очков в Memo1,переменным анимации движения лошадей присваиваются соответствующие значения.

procedure TForm1.Button3Click(Sender: TObject) – принимается размер ставки и лошадь на которую поставил игрок.

procedure TForm1.Button1Click(Sender: TObject) - заполняет массив скоростей произвольными значениями и запускает забег включением Timer1.

procedure TForm1.Timer1Timer(Sender: TObject) – изменяет параметр компонентов bitbtn1-5 .left и после каждого шага меняет параметр Glyph. Действие происходит пока лошади не достигнут финиша. После этого запускается Timer2.

procedure TForm1.Timer2Timer(Sender: TObject) – определяет лошадь-победителя, выводит сообщение, подсчитывает выигрыш/проигрыш. Выводит количество очков в Memo1. Возвращает лошадей на стартовую позицию.

procedure TForm1.Button2Click(Sender: TObject) – принимает из edit1 количество долга и выводит его количество количество очков в Memo1.

procedure TForm1.Button2Click(Sender: TObject) – возвращает весь долг.

Алгоритм работы программы

 

 

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

 

 

Рисунок 2 – Алгоритм работы программы

3 Руководство пользователю

 

 

Для запуска программы необходимо выбрать файл «Project1.exe».

После того, как пользователь откроет данный файл, на экране появится окно программы, как показано на рисунке 3.

 

 

Рисунок 3 –Окно начало программы

 

Для того чтобы начать играть необходимо сделать ставку и нажать клавишу начать забег. Результат забега представлен на рисунке 4.

 

Рисунок 3 –Окно конца забега

 


4 Тестирование программы

 

Испытания на представительном множестве примеров с выполнением проверок правильности результатов, которые программа позволяет осуществлять, показали корректность программы. Тестирование программы показало, что данный проект может работать при любых несанкционированных действиях пользователя.

Минимальные требования для работы с программой: IBM – совместимый 486dx или выше, 5 мб. свободного пространства на жестком диске, ОС Win9x/Me, Win2000/XP/Vista/7.


Заключение

 

 

В данной курсовой работе разработано игровое приложение. Проведенные тестирование программы показывают корректность её работы. Опыт работы с ней свидетельствует о дружелюбности и высокой наглядности интерфейса, что наряду с наличием упомянутых дополнительных режимов дает основание рекомендовать данную программу для применения в целях развлечения.

По мнению автора программы, основные задачи проекта выполнены полностью

.

Список использованных источников

 

 

1 СТО 02069024. 101 – 2014. Работы студенческие. Общие требования и правила оформления–Введ. 2002–07–01. – Оренбург: отдел качества образования федерального государственного бюджетного образовательного учреждения высшего профессионального образования «Оренбургский государственный университет», 2014. – 86 с.



2 Архангельский А.Я. Программирование в Delphi 6 /А.Я. Архангельский// М.: ЗАО «Издательство БИНОМ», 2002г. – 1200 с.

3 Фаронов В.В. Delphi 6. Учебный курс / В.В. Фараонов// Издательство Молгачев С.В., 2001. – 672с.

4 Колосов С.В. Объектно-ориентированное программирование в среде Delphi / С.В. Колосов// М.: БГУИР, 2001. – 48с.

5 Программирование в среде DELPHI. Лабораторный практикум для студентов всех специальностей/ А.Б. Закалюкин, С.В. Колосов, А.А. Навроцкий, А.К. Синицын, А.И. Шакирин; Под общ. ред. А.К ... – Мн.: БГУИР, 1998. – 94 с.


 

Приложение А

(обязательное)

 

 

unit Unit1;

 

interface

 

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls, ExtCtrls, Buttons, jpeg;

 

type

TForm1 = class(TForm)

Button1: TButton;

Memo1: TMemo;

Button3: TButton;

RadioGroup1: TRadioGroup;

Edit1: TEdit;

Label1: TLabel;

Image2: TImage;

BitBtn1: TBitBtn;

BitBtn2: TBitBtn;

Label2: TLabel;

Label3: TLabel;

Label4: TLabel;

Label5: TLabel;

Label6: TLabel;

BitBtn3: TBitBtn;

BitBtn4: TBitBtn;

BitBtn5: TBitBtn;

Timer1: TTimer;

Timer2: TTimer;

Button2: TButton;

Edit2: TEdit;

Button4: TButton;

procedure FormCreate(Sender: TObject);

procedure Button3Click(Sender: TObject);

procedure Timer1Timer(Sender: TObject);

procedure Button1Click(Sender: TObject);

 

procedure Timer2Timer(Sender: TObject);

procedure Button2Click(Sender: TObject);

procedure Button4Click(Sender: TObject);

 

 

private

{ Private declarations }

public

{ Public declarations }

end;

const

Nmax=5;

n=5;

Type

mas2 = array[1..Nmax] of integer;

 

var

Form1: TForm1;

A:mas2;

d,s,j,k,b,w,h1,h2,bn,h3,h4,d1,h5:integer;

b1,b2:tbitmap;

 

implementation

 

{$R *.dfm}

 

procedure TForm1.FormCreate(Sender: TObject);

begin

b:=5000;

memo1.Clear;

edit1.clear;

edit2.Clear;

Memo1.Lines.Add('Âàø áàíê ñîñòàâëÿåò 5000') ;

b1:=tbitmap.create;

b1.LoadFromFile('D:\bsuir\êóðñîâàÿ\íîâàÿ ïàïêà\12345.bmp');

b2:=tbitmap.create;

b2.LoadFromFile('D:\bsuir\êóðñîâàÿ\íîâàÿ ïàïêà\54321.bmp');

 

end;

 

procedure TForm1.Button3Click(Sender: TObject);

 

begin

bn:=b;

s:=StrToint(Edit1.Text);

b:=b-s;

Memo1.Lines.Add('Ñòàêà â ðàçìåðå '+inttostr(s)+' ïðèíÿòà.Ïðè âûéãðûøå âû ïîëó÷èòå '+inttostr(2*s));

h1:=0;

h2:=0;

h3:=0;

h4:=0;

h5:=0;

case radiogroup1.itemindex of

0:h1:=s;

1:h2:=s;

2:h3:=s ;

3:h4:=s;

4:h5:=s;

end;

end;

 

procedure TForm1.Timer1Timer(Sender: TObject);

var n,j:integer;

begin

while (bitbtn1.Left<400) and (bitbtn2.Left<400) and (bitbtn3.Left<400) and (bitbtn4.Left<400) and (bitbtn5.Left<400) do begin

 

 

bitbtn1.Glyph:=b2; bitbtn1.Repaint;

bitbtn2.Glyph:=b2; bitbtn2.Repaint;

bitbtn3.Glyph:=b2;bitbtn3.Repaint;

bitbtn4.Glyph:=b2; bitbtn4.Repaint;

bitbtn5.Glyph:=b2; bitbtn5.Repaint;

sleep(200) ;

bitbtn1.Left:=bitbtn1.left+A[1]; bitbtn1.Repaint;

bitbtn2.Left:=bitbtn2.left+A[2];bitbtn2.Repaint;

bitbtn3.Left:=bitbtn3.left+A[3];bitbtn3.Repaint;

bitbtn4.Left:=bitbtn4.left+A[4];bitbtn4.Repaint;

bitbtn5.Left:=bitbtn5.left+A[5];bitbtn5.Repaint;

 

bitbtn1.Glyph:=b1; bitbtn1.Repaint;

bitbtn2.Glyph:=b1; bitbtn2.Repaint;

bitbtn3.Glyph:=b1; bitbtn3.Repaint;

bitbtn4.Glyph:=b1; bitbtn4.Repaint;

bitbtn5.Glyph:=b1; bitbtn5.Repaint;

sleep(200);

end;

while (bitbtn1.Left<824) and (bitbtn2.Left<824) and (bitbtn3.Left<824) and (bitbtn4.Left<824) and (bitbtn5.Left<824) do begin

 

 

bitbtn1.Glyph:=b2; bitbtn1.Repaint;

bitbtn2.Glyph:=b2; bitbtn2.Repaint;

bitbtn3.Glyph:=b2;bitbtn3.Repaint;

bitbtn4.Glyph:=b2; bitbtn4.Repaint;

bitbtn5.Glyph:=b2; bitbtn5.Repaint;

sleep(200) ;

bitbtn1.Left:=bitbtn1.left+A[1]; bitbtn1.Repaint;

bitbtn2.Left:=bitbtn2.left+A[2];bitbtn2.Repaint;

bitbtn3.Left:=bitbtn3.left+A[3];bitbtn3.Repaint;

bitbtn4.Left:=bitbtn4.left+A[4];bitbtn4.Repaint;

bitbtn5.Left:=bitbtn5.left+A[5];bitbtn5.Repaint;

 

bitbtn1.Glyph:=b1; bitbtn1.Repaint;

bitbtn2.Glyph:=b1; bitbtn2.Repaint;

bitbtn3.Glyph:=b1; bitbtn3.Repaint;

bitbtn4.Glyph:=b1; bitbtn4.Repaint;

bitbtn5.Glyph:=b1; bitbtn5.Repaint;

sleep(200);

end;

timer2.Enabled:=true;

timer1.Enabled:=false;

end;

 

procedure TForm1.Button1Click(Sender: TObject);

begin

k:=0;

randomize;

bn:=b;

for j:=1 to n do A[j]:=random(4)+15 ;

 

timer1.enabled:=true;

 

end;

 

procedure TForm1.Timer2Timer(Sender: TObject);

var l,j,n:integer;

 

begin

l:=1;

if k<l then begin

timer1.Enabled:=true;

if bitbtn1.Left+5>824 then begin sleep(2000);

b:=b+2*h1;

k:=l;

timer2.Enabled:=false;

memo1.Lines.add('âûéãðàëà ëîøàäü ¹1') ;

end;

if bitbtn2.Left+5>824 then begin sleep(2000);

b:=b+2*h2;

k:=l;

timer2.Enabled:=false;

memo1.Lines.add('âûéãðàëà ëîøàäü ¹2') ;

end;

 

if bitbtn4.Left+5>824 then begin sleep(500);

b:=b+2*h4;

k:=l;

timer2.Enabled:=false;

memo1.Lines.add('âûéãðàëà ëîøàäü ¹4') ;

end;

 

if bitbtn5.Left+5>824 then begin sleep(500);

b:=b+2*h5;

k:=l;

timer2.Enabled:=false;

memo1.Lines.add('âûéãðàëà ëîøàäü ¹5') ;

end;

 

if bitbtn3.Left+5>824 then begin sleep(500);

b:=b+2*h3;

k:=l;

timer2.Enabled:=false;

memo1.Lines.add('âûéãðàëà ëîøàäü ¹3') ;

end;

if bitbtn1.Left+5>824 then showmessage('Âûéãðàëà ëîøàäü ¹1') ;

if bitbtn2.Left+5>824 then showmessage('Âûéãðàëà ëîøàäü ¹2') ;

if bitbtn4.Left+5>824 then showmessage('Âûéãðàëà ëîøàäü ¹4') ;

if bitbtn5.Left+5>824 then showmessage('Âûéãðàëà ëîøàäü ¹5') ;

if bitbtn3.Left+5>824 then showmessage('Âûéãðàëà ëîøàäü ¹3') ;

memo1.Lines.add('Âàø áàíê ñîñòàâëÿåò '+inttostr(b)) ;

bitbtn1.Left:=86;

bitbtn2.Left:=86;

bitbtn3.Left:=86;

bitbtn4.Left:=86;

bitbtn5.Left:=86;

end;

end;

 

 

procedure TForm1.Button2Click(Sender: TObject);

begin

d1:=strtoint(edit2.text);

d:=d+d1;

b:=b+d1;

memo1.Lines.add('Âû âçÿëè â äîëã '+inttostr(d1)+'.íå çàáóäüòå âåðíóòü äîëã.'+'Âàøü áàíê ñîñòàâëÿåò '+inttostr(b)) ;

 

end;

 

procedure TForm1.Button4Click(Sender: TObject);

begin

b:=b-d;

memo1.Lines.Add('Ïðèÿòíî áûëî èìåòü ñ âàìè äåëî.Âàø áàíê ñîñòàâëÿåò '+inttostr(b)) ;

end;

 

end.

 





©2015 www.megapredmet.ru Все права принадлежат авторам размещенных материалов.