ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 16.09.2024

Просмотров: 25

Скачиваний: 0

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

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

#include <vcl.h>

#pragma hdrstop

#include "SumUnit.h"

#include "FracUnit.h"

#include "CalculateFrac.h"

#include "Math.h"

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

void __fastcall TSumForm::Button2Click(TObject *Sender)

{Label3->Hide(); Label6->Hide();

Edit5->Hide(); Edit6->Hide(); Edit7->Hide();

Edit1->Clear(); Edit2->Clear(); Edit3->Clear(); Edit4->Clear(); Edit5->Clear();

Edit6->Clear(); Edit7->Clear();

Button1->Enabled=true;

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

void __fastcall TSumForm::Button3Click(TObject *Sender)

{ SumForm->Close();

MainForm->Show();}

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

void __fastcall TSumForm::Button1Click(TObject *Sender)

{ int a,b,c,d;

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

((Edit3->Text).Length()==0)||((Edit4->Text).Length()==0))

{

ShowMessage("Заповніть всі поля!");

return;

}

a=StrToInt(Edit1->Text);

b=StrToInt(Edit2->Text);

c=StrToInt(Edit3->Text);

d=StrToInt(Edit4->Text);

if((d==0)||(b==0))

{

ShowMessage("Ділення на нуль!!");

return;

}

Button1->Enabled=false; Label3->Show();

CalculateFrac *Calculate=new CalculateFrac;

Calculate->SubFrac(a,b,c,d);

if(Calculate->GetA()!=0)

{

Edit5->Show();

Edit5->Text=IntToStr(Calculate->GetA());

}

if(Calculate->GetP()!=0)

{

Edit6->Show(); Edit7->Show(); Label6->Show();

Edit6->Text=IntToStr(Calculate->GetP());

Edit7->Text=IntToStr(Calculate->GetQ());

}

if((Calculate->GetA()==0)&&(Calculate->GetP()==0))

{

Edit5->Show();

Edit5->Text="0";

}

}

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

#include <vcl.h>

#pragma hdrstop

#include "MultUnit.h"

#include "FracUnit.h"

#include "CalculateFrac.h"

#include "Math.h"

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

void __fastcall TSumForm::Button2Click(TObject *Sender)

{Label3->Hide(); Label6->Hide();

Edit5->Hide(); Edit6->Hide(); Edit7->Hide();

Edit1->Clear(); Edit2->Clear(); Edit3->Clear(); Edit4->Clear(); Edit5->Clear();

Edit6->Clear(); Edit7->Clear();

Button1->Enabled=true;

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

void __fastcall TSumForm::Button3Click(TObject *Sender)

{ SumForm->Close();

MainForm->Show();}

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

void __fastcall TSumForm::Button1Click(TObject *Sender)

{ int a,b,c,d;

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

((Edit3->Text).Length()==0)||((Edit4->Text).Length()==0))

{

ShowMessage("Заповніть всі поля!");

return;

}

a=StrToInt(Edit1->Text);

b=StrToInt(Edit2->Text);

c=StrToInt(Edit3->Text);

d=StrToInt(Edit4->Text);

if((d==0)||(b==0))

{

ShowMessage("Ділення на нуль!!");

return;

}

Button1->Enabled=false; Label3->Show();

CalculateFrac *Calculate=new CalculateFrac;

Calculate->Mult(a,b,c,d);

if(Calculate->GetA()!=0)

{

Edit5->Show();

Edit5->Text=IntToStr(Calculate->GetA());

}

if(Calculate->GetP()!=0)

{

Edit6->Show(); Edit7->Show(); Label6->Show();

Edit6->Text=IntToStr(Calculate->GetP());

Edit7->Text=IntToStr(Calculate->GetQ());


}

if((Calculate->GetA()==0)&&(Calculate->GetP()==0))

{

Edit5->Show();

Edit5->Text="0";

}

}


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

#include <vcl.h>

#pragma hdrstop

#include "DivUnit.h"

#include "FracUnit.h"

#include "CalculateFrac.h"

#include "Math.h"

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

void __fastcall TSumForm::Button2Click(TObject *Sender)

{Label3->Hide(); Label6->Hide();

Edit5->Hide(); Edit6->Hide(); Edit7->Hide();

Edit1->Clear(); Edit2->Clear(); Edit3->Clear(); Edit4->Clear(); Edit5->Clear();

Edit6->Clear(); Edit7->Clear();

Button1->Enabled=true;

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

void __fastcall TSumForm::Button3Click(TObject *Sender)

{ SumForm->Close();

MainForm->Show();}

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

void __fastcall TSumForm::Button1Click(TObject *Sender)

{ int a,b,c,d;

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

((Edit3->Text).Length()==0)||((Edit4->Text).Length()==0))

{

ShowMessage("Заповніть всі поля!");

return;

}

a=StrToInt(Edit1->Text);

b=StrToInt(Edit2->Text);

c=StrToInt(Edit3->Text);

d=StrToInt(Edit4->Text);

if((d==0)||(b==0))

{

ShowMessage("Ділення на нуль!!");

return;

}

Button1->Enabled=false; Label3->Show();

CalculateFrac *Calculate=new CalculateFrac;

Calculate->DivFrac(a,b,c,d);

if(Calculate->GetA()!=0)

{

Edit5->Show();

Edit5->Text=IntToStr(Calculate->GetA());

}

if(Calculate->GetP()!=0)

{

Edit6->Show(); Edit7->Show(); Label6->Show();

Edit6->Text=IntToStr(Calculate->GetP());

Edit7->Text=IntToStr(Calculate->GetQ());

}

if((Calculate->GetA()==0)&&(Calculate->GetP()==0))

{

Edit5->Show();

Edit5->Text="0";

}

}

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

#include "SumMasivUnit.h"

#include "FracUnit.h"

#include "CalculateFrac.h"

#include "Math.h"

int count=11,i;

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

void __fastcall TSumMassivForm::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)

{ ShowMessage("Допустима розмірність: більше '1'!");

return; }

count++;

StringGrid1->ColCount=count;

}

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

void __fastcall TSumMassivForm::Button2Click(TObject *Sender)

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

count=11;

StringGrid1->ColCount=count;

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

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

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

Edit1->Clear(); Edit2->Clear(); Edit3->Clear(); Edit4->Clear();}

void __fastcall TSumMassivForm::Button1Click(TObject *Sender)

{

int a,b,A=0,h=0,e=1;

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++)

{

a=StrToInt(StringGrid1->Cells[i][0]);

b=StrToInt(StringGrid1->Cells[i][1]);

if(b==0)

{

ShowMessage("Ділення на нуль!!");

return;

}

Calculate->AddFrac(a,b,h,e);


A+=Calculate->GetA(); h=Calculate->GetP(); e=Calculate->GetQ();

}

if(A!=0)

Edit4->Text=IntToStr(A);

if(h!=0)

{ Edit2->Text=IntToStr(h); Edit3->Text=IntToStr(e); }

if((A==0)&&(h==0)) Edit4->Text="0";

double S=A*e+h; double SA=S/e; SA/=(count-1);

Edit5->Text=FloatToStrF(SA,ffFixed,5,3);

Button1->Enabled=false;

}


Додаток з Лістинг модуля 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]); }

}

}