Курсовая работа: Задача Y пентамино

//на поле расстановки

void placing(int i) //i-номер фигуры

{ const static int n=6,m=10;

struct pents

{ int shape[5][5];//формафигуры

char located; //находится на доске/не находится

} image[12]; int field[n][m];

//вспомогательные счётчики и

//признак нахождения подходящего варианта

int j1,h1,b;

//цикл нахождения всевозможных вариантов для i-ой фигуры

for(int j=1;j<=n;j++)

{ j1=j;

//просматриваем каждый столбец j-ой строки

for(int h=1;h<=m;h++)

{ h1=h;b=1;

//циклы доступа к элементам массива формата каждой фигуры

for(int k=1;k<=5;k++)

{ for(int l=1;l<=5;l++)

//если сумма элементов массива формы i-ой фигуры

//и элементов массива поля расстановки больше 1

//т.е. происходит наложение фигур друг на друга, то b присвоить значение 0

{ if (image[i].shape[k][l]+field[j1][h1]>1) b=0;

h1++;

}

j1++;h1=h;

}

//если не разу не произошло наложение фигур, т.е. фигура подходит,

//то выход из цикла поиска

К-во Просмотров: 509
Бесплатно скачать Курсовая работа: Задача Y пентамино