__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
srand(time(NULL));
}
//---------------------------------------------------------------------------
void __fastcall TForm1::init_first_Table()
{
int i,j,x;
for(i=0;i<30;i++)
{
for(j=0;j<30;j++)
{
x=rand()%100+1;
if(x%2==0)
{
tab1[i][j]=1;
StringGrid1->Cells[i][j]="1";
}
else
{
tab1[i][j]=0;
StringGrid1->Cells[i][j]="O";
}
}
}
}
void __fastcall TForm1::init_second_Table()
{
int i,j;
for(i=0;i<30;i++)
for(j=0;j<30;j++)
tab2[i][j]=0;
for(i=0;i<30;i++)
{
for(j=0;j<30;j++)
{
if((i-1>-1) && tab1[i-1][j]==1)
tab2[i][j]++;
if((i-1>-1) && (j-1>=0))
if(tab1[i-1][j-1]==1)
tab2[i][j]++;
if((j-1>-1) && (tab1[i][j-1]==1))
tab2[i][j]++;
if((i+1<=30) && (j-1>-1))
if(tab1[i+1][j-1]==1)
tab2[i][j]++;
if((i+1<=30) && (tab1[i+1][j]==1))
tab2[i][j]++;
if((i+1<30) && (j+1<30))
if(tab1[i+1][j+1]==1)
tab2[i][j]++;
if((j+1<30) && (tab1[i][j+1]==1))
tab2[i][j]++;
if((i-1>-1) && (j+1<30))
if(tab1[i-1][j+1]==1)
tab2[i][j]++;
if(tab1[i][j]==1)
tab2[i][j]++;
}
}
for(i=0;i<30;i++)
for(j=0;j<30;j++)
StringGrid2->Cells[i][j]=IntToStr(tab2[i][j]);
}
void __fastcall TForm1::Button1Click(TObject *Sender)
{
init_first_Table();
init_second_Table();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
Close();
}