Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
2
Добавлен:
30.05.2020
Размер:
2.01 Mб
Скачать

Додаток з Лістинг модуля SortUnit

#include <vcl.h>

#pragma hdrstop

#include "SortUnit.h"

#include "FracUnit.h"

#include "CalculateFrac.h"

#include "Math.h"

int count=11,i;

int FracMassiv[20][2];

//---------------------------------------------------------------------------

void __fastcall TSortForm::Button2Click(TObject *Sender)

{

count=11;

Button2->Enabled=false; Button1->Enabled=false; Button4->Enabled=true;

StringGrid1->ColCount=count;

StringGrid2->ColCount=count;

for(i=1;i<count;i++)

{ StringGrid1->Cells[i][0]=""; StringGrid1->Cells[i][1]=""; StringGrid2->Cells[i][0]=""; StringGrid2->Cells[i][1]="";}

Edit1->Clear();

}

//---------------------------------------------------------------------------

void __fastcall TSortForm::Button4Click(TObject *Sender)

{

Button2->Enabled=true; Button1->Enabled=true; Button4->Enabled=false;

if(Edit1->Text.Length()==0)

{ ShowMessage("Поле має бути заповненим!"); return;}

count=StrToInt(Edit1->Text);

if((count<2)||(count>20))

{ ShowMessage("Допустима розмірність: від '2' до '20'!"); return;}

count++; StringGrid1->ColCount=count; StringGrid2->ColCount=count;

}

//---------------------------------------------------------------------------

void __fastcall TSortForm::Button1Click(TObject *Sender)

{

int a,b,c,d,e,f;

for(int i=1;i<count;i++)

if((StringGrid1->Cells[i][0].Length()==0)||(StringGrid1->Cells[i][1].Length()==0))

{ ShowMessage("Заповнені не всі поля!"); return; }

CalculateFrac *Calculate=new CalculateFrac;

for(int i=1;i<count;i++)

{ FracMassiv[i][0]=StrToInt(StringGrid1->Cells[i][0]); FracMassiv[i][1]=StrToInt(StringGrid1->Cells[i][1]);}

for(int i=1;i<count;i++)

{

for(int j=1;j<count-1;j++)

{

a=FracMassiv[j][0]; b=FracMassiv[j][1];

c=FracMassiv[j+1][0]; d=FracMassiv[j+1][1];

int check=Calculate->CheckFrac(a,b,c,d);

if (check==2)

{ e=a; f=b; a=c; b=d; c=e; d=f;

FracMassiv[j][0]=a; FracMassiv[j][1]=b; FracMassiv[j+1][0]=c; FracMassiv[j+1][1]=d; }

}

for(int i=1;i<count;i++)

{ StringGrid2->Cells[i][0]=IntToStr(FracMassiv[i][0]); StringGrid2->Cells[i][1]=IntToStr(FracMassiv[i][1]); }

}

}

Соседние файлы в папке Звіт