51064

Дії та їх опрацювання

Лабораторная работа

Информатика, кибернетика и программирование

Дії та їх опрацювання. Мета: Створити стратегічну гру Біржа цінних паперівяка моделює операцію інвестування щорічного капіталув акції трьох різних підприємств...

Украинкский

2014-02-10

26.17 KB

0 чел.

Розробив

Олійник Д.А.

22.03.13

ДРПК.020180.015

Аркуш

Перевірив

Рудакова

1

Змін

Арк.

№ Докум

Підпис

Дата

Практична робота №4

Тема: дії та їх опрацювання..

Мета: Створити стратегічну гру «Біржа цінних паперів»,яка моделює операцію інвестування щорічного капіталув акції трьох різних підприємств

Хід роботи

unit Unit1;

interface

uses

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

 Dialogs, StdCtrls, Grids, Buttons;

type

 TForm1 = class(TForm)

   SpeedButton1: TSpeedButton;

   SpeedButton2: TSpeedButton;

   BitBtn1: TBitBtn;

   StringGrid1: TStringGrid;

   StringGrid2: TStringGrid;

   StringGrid3: TStringGrid;

   Label1: TLabel;

   Label2: TLabel;

   Label3: TLabel;

   Label4: TLabel;

   Label5: TLabel;

   Label6: TLabel;

   Label7: TLabel;

   Label8: TLabel;

   Label9: TLabel;

   Label10: TLabel;

   Label11: TLabel;

   procedure SpeedButton1Click(Sender: TObject);

   procedure SpeedButton2Click(Sender: TObject);

   procedure Refresh;

   procedure FormCreate(Sender: TObject);

   procedure StringGrid2SetEditText(Sender: TObject; ACol, ARow: Integer;

     const Value: String);

 private

   { Private declarations }

 public

   { Public declarations }

 end;

var

 Form1: TForm1;

Розробив

Олійник Д.А.

22.03.13

ДРПК.020180.015

Аркуш

Перевірив

Рудакова

2

Змін

Арк.

№ Докум

Підпис

Дата

const

N=5;

P: array [0..N-1,1..3,1..3] of integer=

(((40,-40,30),(-20,10,10),(-10,40,-30)),   {r=(0-1)}

((50,-70,40),(-30,70,-30),(-50,20,30)),   {r=(1-2)}

((30,-70,70),(-30,70,-30),(20,10,-50)),   {r=(2-3)}

((-50,-30,70),(50,-50,70),(30,50,-70)),   {r=(3-4)}

((30,-70,70),(-30,70,-30),(40,0,-50)));   {r=(4-5)}

Prob:array[0..N-1,1..3] of integer=

((22,41,37),(27,34,39),(47,33,20),(10,53,37),(41,34,25));

var

capital,year,profit,r :integer;

money                 :array[0..2]of integer;

implementation

var i,j:integer;

     s:string;

begin

Str(capital,s);Form1.Label6.Caption:=s+'доларів';

Str(year,s);Form1.Label5.Caption:=s+'рік';

Str(profit,s);Form1.Label7.Caption:=s+'доларів';

Form1.Label8.Caption:='Введіть суму';

Form1.SpeedButton2.Enabled:=False;

Form1.SpeedButton1.Enabled:=False;

randomize;

r:=random(N);

for i:=1 to 3 do

for j:=1  to 3 do

begin

Str(P[r,j,i],s);Form1.StringGrid1.Cells[i,j]:=s+'центів';

end;

for i:=1 to 3 do

begin

Str(prob[r,i],s); Form1.StringGrid3.Cells[i,0]:=s+'%';

Form1.StringGrid2.Cells[0,i]:='';

end;

{$R *.dfm}

procedure     TForm1.SpeedButton2.Click (Sender: TObject);

varfirst,second,varant,i,code:integer;

s:integer;

begin

randomize;

variant:=random(100);

first:=Prob[r,1];

second:=first+Prob[r,2];

profit:=0;

for i:=0 to2do val(StringGrid2.Cells[0,i+1],money[i],code);

ifvariant<first then

Розробив

Олійник Д.А.

22.03.13

ДРПК.020180.015

Аркуш

Перевірив

Рудакова

3

Змін

Арк.

№ Докум

Підпис

Дата

begin

for i:=0 to 2 do

profit:=profit+money[i]*P[r,i+1,1];

Label9.Visible:=True;

Label8.Caption:='Зросло євро';

end;

if(variant>=first)and(vriant<second) then

begin

for i:=0 to 2 do

profit:=profit+money[i]*P[r,i+1,3];

Label11.Visible:=True;

Label8.Caption:='Зріс долар';

end;

profit:=round(profit/100);

Str(profit,s); Label7.Caption:=s+'доларів';

Label7.Visible:=True;

Label8.Visible:=True;

SpeedButton1.Enabled:=False;

SpedButton2.Enabled:=True;

procedure TForm1.FormCreate(Sender: TObject);

begin

capital:=1000;

year:=2000;

profit:=0;

Refresh;

StringGrid1.Cells[1,0]:='Зросте євро';

StringGrid1.Cells[2,0]:='Зросте єна';

StringGrid1.Cells[3,0]:='Зросте долар';

StringGrid1.Cells[0,1]:='Hunday';

StringGrid1.Cells[0,2]:='Philips';

StringGrid1.Cells[0,3]:='Bosh';

StringGrid2.Cells[0,0]:='Інвестиції,$';

StringGrid3.Cells[0,0]:='Ймовірність';

end;

procedure TForm1.StringGrid2SetEditText(Sender: TObject; ACol,

 ARow: Integer; const Value: String);

 var i,code:integer;s:string;

begin

for i:=0 to 1 do val(StringGrid2.Cells[0,i+1],money[i],code);

money[2]:=capital-money[0]-money[1];

Str(money[2],s);

StringGrid2.Cells[0,3]:=s;

SpeedButton1.Enabled:=True;

end;

end;

procedure TForm1.SpeedButton2Click(Sender: TObject);

begin

Розробив

Олійник Д.А.

22.03.13

ДРПК.020180.015

Аркуш

Перевірив

Рудакова

4

Змін

Арк.

№ Докум

Підпис

Дата

year:=year+1;

Capital:=capital+profit;

profit:=0;

Refrsh;

Label9.Visible:=False;

Label10.Visible:=False;

Lablel7.Visible:=False;

end;

Висновок: Я навчився створювати програму у вигляді гри в біржу


 

А также другие работы, которые могут Вас заинтересовать

11058. Создание базы данных каналов промышленного контроллера в SCADA системе TRACE MODE 561.5 KB
  Создание базы данных каналов промышленного контроллера в SCADA системе TRACE MODE: методические указания по выполнению практической работы и варианты заданий / Воронеж. гос. технол. акад.; сост. И.А. Хаустов А.А Хвостов Р.А. Романов. Воронеж: ВГТА 2011. 32 с. Указания разработаны
11059. Создание базы каналов автоматизированного рабочего места диспетчерского контроля и управления с настройкой сетевого обмена 447 KB
  Создание базы каналов автоматизированного рабочего места диспетчерского контроля и управления с настройкой сетевого обмена: методические указания по выполнению практической работы / Воронеж. гос. технол. акад.; сост. И.А. Хаустов А.А Хвостов Р.А. Романов. Воронеж: ВГТА 20...
11060. Создание пользовательских функциональных блоков программированием на СИ++ 900 KB
  Создание пользовательских функциональных блоков программированием на СИ: Методические указания для выполнения лабораторной работы по дисциплине Интегрированные системы проектирования и управления / Воронеж. гос. технол. акад.; Сост. И.А. Хаустов А.А. Хвостов. Воронеж...
11061. Создание и отладка программ на языке инструкций 270 KB
  Создание и отладка программ на языке инструкций: Методические указания для выполнения практической работы по дисциплине Интегрированные системы проектирования и управления / Воронеж. гос. технол. акад.; Сост. И.А. Хаустов. Воронеж 2011. 13 с. Указания разработаны в соотве...
11062. Создание графического интерфейса оператора технолога 1.25 MB
  Создание графического интерфейса оператора технолога: Методические указания для выполнения лабораторной работы по дисциплине Интегрированные системы проектирования и управления / Воронеж. гос. технол. акад.; Сост. И.А. Хаустов. Воронеж 2011. 54 с. Указания разработаны в ...
11063. Создание и настройка отчета тревог 475.5 KB
  Создание и настройка отчета тревог: Методические указания для выполнения лабораторной работы по дисциплине Интегрированные системы проектирования и управления / Воронеж. гос. технол. акад.; Сост. И.А. Хаустов. Воронеж 2011. 12с. Указания разработаны в соответствии с тре
11064. Введение в управленческое документоведение 838.5 KB
  Глава 1. Управленческие документы и их общая характеристика Управление и управленческая информация. Представление информации в практике управления. Управление и управленческая информация Управление и информация два тесно связанных между собо
11065. Модели - образцы управленческих документов 573.5 KB
  модель инициативного письма Текст письма можно условно разделить на три раздела которые называются: вводный основной и заключительный. 1. Вводный раздел Название раздела в письмо не вносится. Этот раздел условно может содержать два пункта: обращение и вступлени
11066. Документирование управленческой деятельности в органах государственной власти и местного самоуправления 231.5 KB
  Документирование управленческой деятельности в органах государственной власти и местного самоуправления. Назначение составление и оформление реквизитов управленческих документов. Унификация оформления документов. Определение и состав реквизитов...