Помогите!!!! Кто знает С++?Прокомментируйте плиз прогу, завтра сдавать (((
//---------------------------------------------------------------------------
#include
#include
#pragma hdrstop
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
int i,j;
int ish[20][20];
int kk=0,
nr=4,
nd=4;
struct rez{
int val;
int down;
int up;
int par;
int sovp;
};
struct rank{
int x;
float k;
};
rez pt[5];
rank rang1[7],rang2[7],rang3[7],rang4[7],rang5[7],b;
int factorial(int n);
float vvv=0,v1,v2,skiz=0,sksc=0,ksush=0;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
void __fastcall TForm1::FormCreate(TObject *Sender)
{
for(i=0;i<5;i++)
pt.val=0;
for (i=1;i < (StringGrid1->ColCount)-1;i++)
StringGrid1->Cells[0]=i;
for(i=0;i<(StringGrid1->ColCount);i++)
{
for(j=1;j<=StringGrid1->RowCount;j++) StringGrid1->Cells[j]="0";
}
StringGrid1->Cells[0][0]="T";
StringGrid1->Cells[(StringGrid1->ColCount)-1][0]="Y";
StringGrid2->Cells[0][0]="K??";
StringGrid3->Cells[0][0]="????";
StringGrid4->Cells[0][0]="????";
for(i=0;i<8;i++)
{
rang1.k=0;
rang2.k=0;
rang3.k=0;
rang4.k=0;
rang5.k=1;
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::BitBtn1Click(TObject *Sender)
{
sksc=0;
int k=0;
for(i=1;i
{
for(j=1;j
{
if(StringGrid1->Cells[j]=="") k=1;
}
}
if(k==0)
{
for(i=1;i
{
for(j=1;j
{
ish[j]=StrToInt(StringGrid1->Cells[j]);
if(j!=7)
{
if(ish[j]==StrToInt(ComboBox1->Text)) ish[j]=StrToInt(ComboBox2->Text);
if(ish[j]==StrToInt(ComboBox3->Text)) ish[j]=StrToInt(ComboBox4->Text);
}
Label1->Caption="";
}
//kk=1;
}
}
else Label1->Caption="????";
//----------------------------------------------------
//for(j=1;j<=11;j++) if(ish[7][j]==1) StringGrid2->Cells[0][j]=IntToStr(ish[7][j]);
for(i=1;i
for(j=1;j<=StringGrid1->RowCount;j++)
{
pt[(ish[j][7])].val++;
if(j==1) pt[ish[j][7]].down=j;
if(ish[j][7]!=ish[j-1][7])
{
pt[ish[j][7]].down=j;
pt[ish[j-1][7]].up=j-1;
}
//if(j+==(StringGrid1->RowCount)) pt[ish[j][7]].up=j;
}
//float *ksc = new float[StringGrid1->RowCount];
float ksc;
//-------------------------------------------------------------
int ii,jj;
for(ii=1;ii
{
for(i=1;i<5;i++)
{
pt.par=0;
pt.sovp=0;
}
for(i=1;i<5;i++)
{
if(pt.val>1)
{
pt.par=factorial(pt.val)/(2*factorial(pt.val-2));
//------
for(j=pt.down;j<=pt.up;j++)
{
for(jj=pt.down;jj<=pt.up;jj++)
{
if(jj!=j)
{
if(ish[j][ii]==ish[jj][ii]) pt.sovp++;
}
}
}
pt.sovp=(pt.sovp)/2;
//------------------
}
else
{
pt.par=0;
pt.sovp=0;
}
}
//------------------------------------------------------------
ksc=0;
j=0;
ksc=0;
for(i=1;i<5;i++)
{
if(pt.par>0)
{
v1=pt.sovp;
v2=pt.par;
vvv=v1/v2;
ksc=ksc+vvv;
j++;
}
}
if(j!=0) ksc=ksc/j;
StringGrid2->Cells[ii][0]=ksc;
sksc=sksc+ksc;
}
//---------------------------------------------------
//-----------------------------------------------------
}
//---------------------------------------------------------------------------
int factorial(int n)
{
if(n==0) return 1;
else return n*factorial(n-1);
};
//============================