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

Додаток 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;

}

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