//--------------------------------------------------------------------------- #include #pragma hdrstop #define NumZones 4 #define AllMoney 10 #include "Unit1.h" //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma resource "*.dfm" TForm1 *Form1; //--------------------------------------------------------------------------- __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { } float ProfitZone[AllMoney+1][NumZones]; //--------------------------------------------------------------------------- void __fastcall TForm1::InitData() { ProfitZone[0][0]=0; ProfitZone[0][1]=0; ProfitZone[0][2]=0; ProfitZone[0][3]=0; ProfitZone[1][0]=StrToFloat(Edit1->Text); ProfitZone[1][1]=StrToFloat(Edit2->Text); ProfitZone[1][2]=StrToFloat(Edit3->Text); ProfitZone[1][3]=StrToFloat(Edit4->Text); ProfitZone[2][0]=StrToFloat(Edit5->Text); ProfitZone[2][1]=StrToFloat(Edit6->Text); ProfitZone[2][2]=StrToFloat(Edit7->Text); ProfitZone[2][3]=StrToFloat(Edit8->Text); ProfitZone[3][0]=StrToFloat(Edit9->Text); ProfitZone[3][1]=StrToFloat(Edit10->Text); ProfitZone[3][2]=StrToFloat(Edit11->Text); ProfitZone[3][3]=StrToFloat(Edit12->Text); ProfitZone[4][0]=StrToFloat(Edit13->Text); ProfitZone[4][1]=StrToFloat(Edit14->Text); ProfitZone[4][2]=StrToFloat(Edit15->Text); ProfitZone[4][3]=StrToFloat(Edit16->Text); ProfitZone[5][0]=StrToFloat(Edit17->Text); ProfitZone[5][1]=StrToFloat(Edit18->Text); ProfitZone[5][2]=StrToFloat(Edit19->Text); ProfitZone[5][3]=StrToFloat(Edit20->Text); ProfitZone[6][0]=StrToFloat(Edit21->Text); ProfitZone[6][1]=StrToFloat(Edit22->Text); ProfitZone[6][2]=StrToFloat(Edit23->Text); ProfitZone[6][3]=StrToFloat(Edit24->Text); ProfitZone[7][0]=StrToFloat(Edit25->Text); ProfitZone[7][1]=StrToFloat(Edit26->Text); ProfitZone[7][2]=StrToFloat(Edit27->Text); ProfitZone[7][3]=StrToFloat(Edit28->Text); ProfitZone[8][0]=StrToFloat(Edit29->Text); ProfitZone[8][1]=StrToFloat(Edit30->Text); ProfitZone[8][2]=StrToFloat(Edit31->Text); ProfitZone[8][3]=StrToFloat(Edit32->Text); ProfitZone[9][0]=StrToFloat(Edit33->Text); ProfitZone[9][1]=StrToFloat(Edit34->Text); ProfitZone[9][2]=StrToFloat(Edit35->Text); ProfitZone[9][3]=StrToFloat(Edit36->Text); ProfitZone[10][0]=StrToFloat(Edit37->Text); ProfitZone[10][1]=StrToFloat(Edit38->Text); ProfitZone[10][2]=StrToFloat(Edit39->Text); ProfitZone[10][3]=StrToFloat(Edit40->Text); } //--------------------------------------------------------------------------- float PrZone[AllMoney+1]; float PrZone1[AllMoney+1]; float mmRez=0; void __fastcall TForm1::Button1Click(TObject *Sender) { InitData(); float mRez; CallSum01(); CallSum012(); mRez=CallSum0123(); Label5->Caption=FloatToStr(mRez); } //---------------------------------------------------------------------------- float __fastcall TForm1::CallSum01(void) { float s1,tmp; for(int i=0;i<=AllMoney;i++) { s1=0; for(int p=0;p<=i;p++) { tmp=ProfitZone[p][0]+ProfitZone[i-p][1]; if(tmp>s1) s1=tmp; } PrZone[i]=s1; } return s1; } //------------------------------------------------------------------------ float __fastcall TForm1::CallSum012(void) { float s1,tmp; for(int i=0;i<=AllMoney;i++) { s1=0; for(int p=0;p<=i;p++) { tmp=PrZone[p]+ProfitZone[i-p][2]; if(tmp>s1) s1=tmp; } PrZone1[i]=s1; } return s1; } //------------------------------------------------------------------------ float __fastcall TForm1::CallSum0123(void) { float s1=0,tmp; for(int p=0;p<=AllMoney;p++) { tmp=PrZone1[p]+ProfitZone[AllMoney-p][3]; if(tmp>s1) s1=tmp; } return s1; } //------------------------------------------------------------------------