Code:
#include<iostream.h>
#include<time.h>
#include<stdlib.h>
void assignrow1();
void checkrow1();
void assignrow2();
void checkrow2();
void assignrow3();
void checkrow3();
void assignrow4();
void checkrow4();
void assignrow5();
void checkrow5();
void assignrow6();
void checkrow6();
void checkcol1();
void checkcol2();
void checkcol3();
void checkcol4();
void checkcol5();
void checkcol6();
int col1num1, col1num2, col1num3, col1num4, col1num5, col1num6;
int col2num1, col2num2, col2num3, col2num4, col2num5, col2num6;
int col3num1, col3num2, col3num3, col3num4, col3num5, col3num6;
int col4num1, col4num2, col4num3, col4num4, col4num5, col4num6;
int col5num1, col5num2, col5num3, col5num4, col5num5, col5num6;
int col6num1, col6num2, col6num3, col6num4, col6num5, col6num6;
int row1[6];
int row2[6];
int row3[6];
int row4[6];
int row5[6];
int row6[6];
int row1num1, row1num2, row1num3, row1num4, row1num5, row1num6;
int row2num1, row2num2, row2num3, row2num4, row2num5, row2num6;
int row3num1, row3num2, row3num3, row3num4, row3num5, row3num6;
int row4num1, row4num2, row4num3, row4num4, row4num5, row4num6;
int row5num1, row5num2, row5num3, row5num4, row5num5, row5num6;
int row6num1, row6num2, row6num3, row6num4, row6num5, row6num6;
int counter=0;
int main()
{
srand(time(0));
assignrow1();
cout<<row1num1<<row1num2<<row1num3<<row1num4<<row1num5<<row1num6<<endl;
cout<<row2num1<<row2num2<<row2num3<<row2num4<<row2num5<<row2num6<<endl;
cout<<row3num1<<row3num2<<row3num3<<row3num4<<row3num5<<row3num6<<endl;
cout<<row4num1<<row4num2<<row4num3<<row4num4<<row4num5<<row4num6<<endl;
cout<<row5num1<<row5num2<<row5num3<<row5num4<<row5num5<<row5num6<<endl;
cout<<row6num1<<row6num2<<row6num3<<row6num4<<row6num5<<row6num6<<endl;
cout<<"It took "<<counter<<" tries."<<endl;
return 0;
}
void assignrow1()
{
counter=counter+1;
for (int x=0;x<6;x=x++)
{
row1[x]=rand()%36+1;
}
checkrow1();
}
void checkrow1()
{
row1num1=row1[0];
row1num2=row1[1];
row1num3=row1[2];
row1num4=row1[3];
row1num5=row1[4];
row1num6=row1[5];
if(row1num1+row1num2+row1num3+row1num4+row1num5+row1num6==36)
{
assignrow2();
}
else
{
assignrow1();
}
}
void assignrow2()
{
for (int y=0;y<6;y=y++)
{
row2[y]=rand()%36+1;
}
checkrow2();
}
void checkrow2()
{
row2num1=row2[0];
row2num2=row2[1];
row2num3=row2[2];
row2num4=row2[3];
row2num5=row2[4];
row2num6=row2[5];
if(row2num1+row2num2+row2num3+row2num4+row2num5+row2num6==36)
{
assignrow3();
}
else
{
assignrow2();
}
}
void assignrow3()
{
for (int z=0;z<6;z=z++)
{
row3[z]=rand()%36+1;
}
checkrow3();
}
void checkrow3()
{
row3num1=row3[0];
row3num2=row3[1];
row3num3=row3[2];
row3num4=row3[3];
row3num5=row3[4];
row3num6=row3[5];
if(row3num1+row3num2+row3num3+row3num4+row3num5+row3num6==36)
{
assignrow4();
}
else
{
assignrow3();
}
}
void assignrow4()
{
for (int a=0;a<6;a=a++)
{
row4[a]=rand()%36+1;
}
checkrow4();
}
void checkrow4()
{
row4num1=row4[0];
row4num2=row4[1];
row4num3=row4[2];
row4num4=row4[3];
row4num5=row4[4];
row4num6=row4[5];
if(row4num1+row4num2+row4num3+row4num4+row4num5+row4num6==36)
{
assignrow5();
}
else
{
assignrow4();
}
}
void assignrow5()
{
for (int b=0;b<6;b=b++)
{
row5[b]=rand()%36+1;
}
checkrow5();
}
void checkrow5()
{
row5num1=row5[0];
row5num2=row5[1];
row5num3=row5[2];
row5num4=row5[3];
row5num5=row5[4];
row5num6=row5[5];
if(row5num1+row5num2+row5num3+row5num4+row5num5+row5num6==36)
{
assignrow6();
}
else
{
assignrow5();
}
}
void assignrow6()
{
for (int c=0;c<6;c=c++)
{
row6[c]=rand()%36+1;
}
checkrow6();
}
void checkrow6()
{
row6num1=row6[0];
row6num2=row6[1];
row6num3=row6[2];
row6num4=row6[3];
row6num5=row6[4];
row6num6=row6[5];
if(row6num1+row6num2+row6num3+row6num4+row6num5+row6num6==36)
{
checkcol1();
}
else
{
assignrow6();
}
}
void checkcol1()
{
col1num1=row1num1;
col1num2=row2num1;
col1num3=row3num1;
col1num4=row4num1;
col1num5=row5num1;
col1num6=row6num1;
if(col1num1+col1num2+col1num3+col1num4+col1num5+col1num6==36)
{
checkcol2();
}
else
{
assignrow1();
}
}
void checkcol2()
{
col2num1=row1num2;
col2num2=row2num2;
col2num3=row3num2;
col2num4=row4num2;
col2num5=row5num2;
col2num6=row6num2;
if(col2num1+col2num2+col2num3+col2num4+col2num5+col2num6==36)
{
checkcol3();
}
else
{
assignrow1();
}
}
void checkcol3()
{
col3num1=row1num3;
col3num2=row2num3;
col3num3=row3num3;
col3num4=row4num3;
col3num5=row5num3;
col3num6=row6num3;
if(col3num1+col3num2+col3num3+col3num4+col3num5+col3num6==36)
{
checkcol4();
}
else
{
assignrow1();
}
}
void checkcol4()
{
col4num1=row1num4;
col4num2=row2num4;
col4num3=row3num4;
col4num4=row4num4;
col4num5=row5num4;
col4num6=row6num4;
if(col4num1+col4num2+col4num3+col4num4+col4num5+col4num6==36)
{
checkcol5();
}
else
{
assignrow1();
}
}
void checkcol5()
{
col5num1=row1num5;
col5num2=row2num5;
col5num3=row3num5;
col5num4=row4num5;
col5num5=row5num5;
col5num6=row6num5;
if(col5num1+col5num2+col5num3+col5num4+col5num5+col5num6==36)
{
checkcol6();
}
else
{
assignrow1();
}
}
void checkcol6()
{
col6num1=row1num6;
col6num2=row2num6;
col6num3=row3num6;
col6num4=row4num6;
col6num5=row5num6;
col6num6=row6num6;
if(col6num1+col6num2+col6num3+col6num4+col6num5+col6num6==36)
{
}
else
{
assignrow1();
}
}