Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Implementation 3 страница

Читайте также:
  1. Contents 1 страница
  2. Contents 10 страница
  3. Contents 11 страница
  4. Contents 12 страница
  5. Contents 13 страница
  6. Contents 14 страница
  7. Contents 15 страница

AssignFile(f, OpenDialog1.FileName); // связывает логическое имя файла с физическим

Reset(f); // чтение/запись

for i:= 1 to 3 do // всего 3 периода

for j:= 1 to 96 do // всего 96 строчек

Begin

Readln(f, s); // читаем эти строчки

StringGrid1.Cells[i, j]:= s; // каждая ячейка - значение очередной строчки

end;

CloseFile(f); // закрываем файл

end;

end;

{**** Панель - Печать... ****}

procedure TForm4.Action15Execute(Sender: TObject);

Begin

PrintGrid(StringGrid1, lbCaption);

end;

{**** Панель - Помощь ****}

procedure TForm4.Action4Execute(Sender: TObject);

Begin

ShellExecute(handle, 'open', 'helpfile.pdf', nil, nil, SW_SHOWNORMAL);

end;

{**** Панель - О программе ****}

procedure TForm4.Action5Execute(Sender: TObject);

Begin

Form22.Show;

end;

{**** Панель - АЛГОРИТМЫ: ****}

// 1) Условия ликвидности

procedure TForm4.Action6Execute(Sender: TObject);

Var

i, k, g: Byte;

Begin

knop:= 1; // определяем, что для данного алгоритма нужно выполнять 1ую проверку

Proverka; // вызываем процедуру проверки ячеек таблицы

if prov = True then // если всё хорошо, то можно выполнять алгоритм

Begin

{____ 1) Читаем все заполняемые пользователем переменные из таблицы: ____}

// i - № периода и столбца, k - № элемента в массиве, g - № строчки

for i:= 1 to 3 do

Begin

k:= 1; g:= 4; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 5; g:= 9; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 8; g:= 13; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 10; g:= 16; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 15; g:= 23; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 20; g:= 30; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 27; g:= 38; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 30; g:= 42; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 33; g:= 47; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 35; g:= 50; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 37; g:= 55; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 40; g:= 60; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 42; g:= 63; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

end;

{____ 2) Считаем значения, которые опираются на выше рассчитанные переменные: ____}

for i:= 1 to 3 do

Begin

// АКТИВ

{1} z[v1_1, i]:= v[ 1, i] + v[ 2, i] + v[ 3, i] + v[ 4, i];

z[v1_2, i]:= v[ 5, i] + v[ 6, i] + v[ 7, i];

z[v1_3, i]:= v[ 8, i] + v[ 9, i];

z[v1_4, i]:= v[10, i] + v[11, i] + v[12, i] + v[13, i] + v[14, i];

z[v1, i]:= z[v1_1, i] + z[v1_2, i] + z[v1_3, i] + z[v1_4, i];

{2} z[v2_3_1, i]:= v[20, i] + v[21, i];

z[v2_1, i]:= v[15, i] + v[16, i] + v[17, i] + v[18, i];

z[v2_3, i]:= z[v2_3_1, i] + v[22, i] + v[23, i] + v[24, i] + v[25, i] + v[26, i];

z[v2_4, i]:= v[27, i] + v[28, i] + v[29, i];

z[v2_5, i]:= v[30, i] + v[31, i] + v[32, i];

z[v2, i]:= z[v2_1, i] + v[19, i] + z[v2_3, i] + z[v2_4, i] + z[v2_5, i];

{I} z[vI, i]:= z[v1, i] + z[v2, i];

// ПАССИВ

{4} z[v4_1, i]:= v[37, i] + v[38, i];

z[v4, i]:= z[v4_1, i] + v[39, i];

{5} z[v5_1, i]:= v[40, i] + v[41, i];

z[v5_2, i]:= v[42, i] + v[43, i] + v[44, i] + v[45, i] + v[46, i] + v[47, i] +

v[48, i] + v[49, i];

z[v5, i]:= z[v5_1, i] + z[v5_2, i] + v[50, i] + v[51, i];

{3} z[v3_3, i]:= v[35, i] + v[36, i];

z[v3_4, i]:= z[vI, i] - v[33, i] - v[34, i] - z[v3_3, i] - z[v4, i] - z[v5, i];

z[v3, i]:= v[33, i] + v[34, i] + z[v3_3, i] + z[v3_4, i];

z[vII, i]:= z[v3, i] + z[v4, i] + z[v5, i];

end;

Form5.Show;

end;

end;

// 2) Показатели ликвидности

procedure TForm4.Action7Execute(Sender: TObject);

Var

i, k, g: Byte;

Begin

knop:= 2; // определяем, что для данного алгоритма нужно выполнять 1ую проверку

Proverka; // вызываем процедуру проверки ячеек таблицы

if prov = True then // если всё хорошо, то можно выполнять алгоритм

Begin

{____ 1) Читаем все заполняемые пользователем переменные из таблицы: ____}

// i - № периода и столбца, k - № элемента в массиве, g - № строчки

for i:= 1 to 3 do

Begin

k:= 1; g:= 4; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 5; g:= 9; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 8; g:= 13; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 10; g:= 16; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 15; g:= 23; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 20; g:= 30; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 27; g:= 38; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 30; g:= 42; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 47; g:= 68; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 50; g:= 71; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

end;

{____ 2) Считаем значения, которые опираются на выше рассчитанные переменные: ____}

for i:= 1 to 3 do

Begin

// АКТИВ

{1} z[v1_1, i]:= v[ 1, i] + v[ 2, i] + v[ 3, i] + v[ 4, i];

z[v1_2, i]:= v[ 5, i] + v[ 6, i] + v[ 7, i];

z[v1_3, i]:= v[ 8, i] + v[ 9, i];

z[v1_4, i]:= v[10, i] + v[11, i] + v[12, i] + v[13, i] + v[14, i];

z[v1, i]:= z[v1_1, i] + z[v1_2, i] + z[v1_3, i] + z[v1_4, i];

{2} z[v2_3_1, i]:= v[20, i] + v[21, i];

z[v2_1, i]:= v[15, i] + v[16, i] + v[17, i] + v[18, i];

z[v2_3, i]:= z[v2_3_1, i] + v[22, i] + v[23, i] + v[24, i] + v[25, i] + v[26, i];

z[v2_4, i]:= v[27, i] + v[28, i] + v[29, i];

z[v2_5, i]:= v[30, i] + v[31, i] + v[32, i];

z[v2, i]:= z[v2_1, i] + v[19, i] + z[v2_3, i] + z[v2_4, i] + z[v2_5, i];

{I} z[vI, i]:= z[v1, i] + z[v2, i];

end;

{____ 3) Считаем переменные-буквы: ____}

for i:= 1 to 3 do

b[SA, i]:= z[vI, i];

Form6.Show;

end;

end;

// 3) Кредитоспособность заёмщика

procedure TForm4.Action8Execute(Sender: TObject);

Var

i, k, g: Byte;

Begin

knop:= 3; // определяем, что для данного алгоритма нужно выполнять 1ую проверку

Proverka; // вызываем процедуру проверки ячеек таблицы

if prov = True then // если всё хорошо, то можно выполнять алгоритм

Begin

{________1) Читаем все заполняемые пользователем переменные из таблицы:________}

// i - № периода и столбца, k - № элемента в массиве, g - № строчки

for i:= 1 to 3 do

Begin

k:= 1; g:= 4; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 5; g:= 9; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 8; g:= 13; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 10; g:= 16; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 15; g:= 23; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 20; g:= 30; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 27; g:= 38; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 30; g:= 42; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 33; g:= 47; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 35; g:= 50; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 37; g:= 55; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 40; g:= 60; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 42; g:= 63; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 56; g:= 78; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 60; g:= 83; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

end;

{____ 2) Считаем значения, которые опираются на вышерасчитанные переменные: ____}

for i:= 1 to 3 do

Begin

// АКТИВ

{1} z[v1_1, i]:= v[ 1, i] + v[ 2, i] + v[ 3, i] + v[ 4, i];

z[v1_2, i]:= v[ 5, i] + v[ 6, i] + v[ 7, i];

z[v1_3, i]:= v[ 8, i] + v[ 9, i];

z[v1_4, i]:= v[10, i] + v[11, i] + v[12, i] + v[13, i] + v[14, i];

z[v1, i]:= z[v1_1, i] + z[v1_2, i] + z[v1_3, i] + z[v1_4, i];

{2} z[v2_3_1, i]:= v[20, i] + v[21, i];

z[v2_1, i]:= v[15, i] + v[16, i] + v[17, i] + v[18, i];

z[v2_3, i]:= z[v2_3_1, i] + v[22, i] + v[23, i] + v[24, i] + v[25, i] + v[26, i];

z[v2_4, i]:= v[27, i] + v[28, i] + v[29, i];

z[v2_5, i]:= v[30, i] + v[31, i] + v[32, i];

z[v2, i]:= z[v2_1, i] + v[19, i] + z[v2_3, i] + z[v2_4, i] + z[v2_5, i];

{I} z[vI, i]:= z[v1, i] + z[v2, i];

// ПАССИВ

{4} z[v4_1, i]:= v[37, i] + v[38, i];

z[v4, i]:= z[v4_1, i] + v[39, i];

{5} z[v5_1, i]:= v[40, i] + v[41, i];

z[v5_2, i]:= v[42, i] + v[43, i] + v[44, i] + v[45, i] + v[46, i] + v[47, i] +

v[48, i] + v[49, i];

z[v5, i]:= z[v5_1, i] + z[v5_2, i] + v[50, i] + v[51, i];

{3} z[v3_3, i]:= v[35, i] + v[36, i];

z[v3_4, i]:= z[vI, i] - v[33, i] - v[34, i] - z[v3_3, i] - z[v4, i] - z[v5, i];

z[v3, i]:= v[33, i] + v[34, i] + z[v3_3, i] + z[v3_4, i];

// РАСКРЫТИЕ ИНФОРМАЦИИ О ДОХОДАХ, РАСХОДАХ ПРИБЫЛИ ПРЕДПРИЯТИЯ

{9} z[v9, i]:= v[60, i] - v[61, i];

{12} z[v12, i]:= z[v9, i] - v[62, i] - v[63, i];

end;

{____ 3) Считаем переменные-буквы: ____}

for i:= 1 to 3 do

Begin

b[NLOA, i]:= z[v2_4, i] - v[28, i] + z[v2_5, i];

b[KDZ, i]:= z[v2_3, i] - v[21, i] - v[24, i];

b[LA, i]:= b[NLOA, i] + b[KDZ, i];

b[TKO, i]:= z[v5_1, i] + z[v5_2, i];

b[OA, i]:= z[v2, i];

_OA:= (z[v2, 2] + z[v2, 1]) / 2;

b[SS, i]:= z[v3, i] + v[50, i] + v[51, i];

b[VOA, i]:= z[v1, i];

b[DZ, i]:= z[v2_3, i];

b[Ppr, i]:= z[v12, i];

b[Vpr, i]:= v[60, i];

b[R, i]:= v[56, i];

b[Kpr, i]:= v[57, i];

end;

Form7.Show;

end;

end;

// 4) Финансовая устойчивость

procedure TForm4.Action9Execute(Sender: TObject);

Var

i, k, g: Byte;

Begin

knop:= 4; // определяем, что для данного алгоритма нужно выполнять 1ую проверку

Proverka; // вызываем процедуру проверки ячеек таблицы

if prov = True then // если всё хорошо, то можно выполнять алгоритм

Begin

{________1) Читаем все заполняемые пользователем переменные из таблицы:________}

// i - № периода и столбца, k - № элемента в массиве, g - № строчки

for i:= 1 to 3 do

Begin

k:= 1; g:= 4; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 5; g:= 9; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 8; g:= 13; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 10; g:= 16; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 15; g:= 23; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 20; g:= 30; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 27; g:= 38; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 30; g:= 42; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 33; g:= 47; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 35; g:= 50; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 37; g:= 55; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 40; g:= 60; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 42; g:= 63; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 60; g:= 83; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 63; g:= 87; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

end;

{____ 2) Считаем значения, которые опираются на вышерасчитанные переменные: ____}

for i:= 1 to 3 do

Begin

// АКТИВ

{1} z[v1_1, i]:= v[ 1, i] + v[ 2, i] + v[ 3, i] + v[ 4, i];

z[v1_2, i]:= v[ 5, i] + v[ 6, i] + v[ 7, i];

z[v1_3, i]:= v[ 8, i] + v[ 9, i];

z[v1_4, i]:= v[10, i] + v[11, i] + v[12, i] + v[13, i] + v[14, i];

z[v1, i]:= z[v1_1, i] + z[v1_2, i] + z[v1_3, i] + z[v1_4, i];

{2} z[v2_3_1, i]:= v[20, i] + v[21, i];

z[v2_1, i]:= v[15, i] + v[16, i] + v[17, i] + v[18, i];

z[v2_3, i]:= z[v2_3_1, i] + v[22, i] + v[23, i] + v[24, i] + v[25, i] + v[26, i];

z[v2_4, i]:= v[27, i] + v[28, i] + v[29, i];

z[v2_5, i]:= v[30, i] + v[31, i] + v[32, i];

z[v2, i]:= z[v2_1, i] + v[19, i] + z[v2_3, i] + z[v2_4, i] + z[v2_5, i];

{I} z[vI, i]:= z[v1, i] + z[v2, i];

// ПАССИВ

{4} z[v4_1, i]:= v[37, i] + v[38, i];

z[v4, i]:= z[v4_1, i] + v[39, i];

{5} z[v5_1, i]:= v[40, i] + v[41, i];

z[v5_2, i]:= v[42, i] + v[43, i] + v[44, i] + v[45, i] + v[46, i] + v[47, i] +

v[48, i] + v[49, i];

z[v5, i]:= z[v5_1, i] + z[v5_2, i] + v[50, i] + v[51, i];

{3} z[v3_3, i]:= v[35, i] + v[36, i];

z[v3_4, i]:= z[vI, i] - v[33, i] - v[34, i] - z[v3_3, i] - z[v4, i] - z[v5, i];

z[v3, i]:= v[33, i] + v[34, i] + z[v3_3, i] + z[v3_4, i];

// РАСКРЫТИЕ ИНФОРМАЦИИ О ДОХОДАХ, РАСХОДАХ ПРИБЫЛИ ПРЕДПРИЯТИЯ

{9} z[v9, i]:= v[60, i] - v[61, i];

{12} z[v12, i]:= z[v9, i] - v[62, i] - v[63, i];

end;

{____ 3) Считаем переменные-буквы: ____}

for i:= 1 to 3 do

Begin

b[SA, i]:= z[vI, i];

b[SS, i]:= z[v3, i] + v[50, i] + v[51, i];

b[VOA, i]:= z[v1, i];

b[Vpr, i]:= v[60, i];

b[SOS, i]:= z[v3, i] - z[v1, i];

b[ZZ, i]:= z[v2_1, i] + v[19, i];

b[DOO, i]:= z[v4, i];

b[FKo, i]:= b[SOS, i] + b[DOO, i];

b[KZiK, i]:= z[v4_1, i];

b[WI, i]:= b[FKo, i] + b[KZiK, i];

b[KiR, i]:= z[v3, i];

b[OD, i]:= z[v4, i] + z[v5, i] - v[50, i] - v[51, i];

b[FK, i]:= b[SS, i] + z[v4, i];

b[Ri, i]:= z[v1_2, i] + v[15, i] + v[16, i];

_ZZ:= (z[v2_1, 2] + v[19, 2] + z[v2_1, 1] + v[19, 1]) / 2;

_DZ:= (z[v2_3, 2] + z[v2_3, 1]) / 2;

end;

Form10.Show;

end;

end;

// 5) Золотое правило экономики

procedure TForm4.Action10Execute(Sender: TObject);

Var

i, k, g: Byte;

Begin

knop:= 5; // определяем, что для данного алгоритма нужно выполнять 1ую проверку

Proverka; // вызываем процедуру проверки ячеек таблицы

if prov = True then // если всё хорошо, то можно выполнять алгоритм

Begin

{________1) Читаем все заполняемые пользователем переменные из таблицы:________}

// i - № периода и столбца, k - № элемента в массиве, g - № строчки

for i:= 1 to 3 do

Begin

k:= 1; g:= 4; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 5; g:= 9; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 8; g:= 13; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 10; g:= 16; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 15; g:= 23; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 20; g:= 30; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 27; g:= 38; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 30; g:= 42; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

k:= 60; g:= 83; v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);

inc(k); inc(g); v[k, i]:= StrToFloat(StringGrid1.Cells[i, g]);


Дата добавления: 2015-10-13; просмотров: 76 | Нарушение авторских прав


Читайте в этой же книге: Описание главной формы | СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ | Private | Implementation | Interface | Interface | Interface | Implementation 1 страница | Else begin | Interface |
<== предыдущая страница | следующая страница ==>
Implementation 2 страница| Implementation 4 страница

mybiblioteka.su - 2015-2024 год. (0.058 сек.)