#include <stdio.h>
#define N 15
#define M 13
void transform(int *buf, int **matr, int n, int m);
void make_picture(int **picture, int n, int m);
void reset_picture(int **picture, int n, int m);
int main() {
int picture_data[N][M];
int *picture[N];
transform(picture_data, picture, N, M);
make_picture(picture, N, M);
// Вывод картинки
for (int i = 0; i < N; i++) {
for (int j = 0; j < M; j++) {
}
}
return 0;
}
void make_picture(int **picture, int n, int m) {
int frame_w[] = { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 };
int tree_trunk[] = { 7, 7, 7, 7 };
int tree_foliage[] = { 3, 3, 3, 3 };
int sun_data[6][5] = { { 0, 6, 6, 6, 6 },
{ 0, 0, 6, 6, 6 },
{ 0, 0, 6, 6, 6 },
{ 0, 6, 0, 0, 6 },
{ 0, 0, 0, 0, 0 },
{ 0, 0, 0, 0, 0 } };
reset_picture(picture, n, m);
// Рисуем рамку
for (int i = 0; i < m; i++) {
picture[0][i] = frame_w[i]; // верхняя рамка
picture[N - 1][i] = frame_w[i]; // нижняя рамка
}
for (int i = 1; i < N - 1; i++) {
picture[i][0] = 1; // левая рамка
picture[i][M - 1] = 1; // правая рамка
}
// Рисуем элементы на стене
picture[1][1] = 0; picture[1][2] = 0; picture[1][3] = 0; picture[1][4] = 0;
picture[1][5] = 0; picture[1][6] = 1; picture[1][7] = 0; picture[1][8] = 6;
picture[1][9] = 6; picture[1][10] = 6; picture[1][11] = 6; picture[1][12] = 1;
picture[2][1] = 0; picture[2][2] = 0; picture[2][3] = 3; picture[2][4] = 3;
picture[2][5] = 0; picture[2][6] = 1; picture[2][7] = 0; picture[2][8] = 0;
picture[2][9] = 6; picture[2][10] = 6; picture[2][11] = 6; picture[2][12] = 1;
picture[3][1] = 0; picture[3][2] = 3; picture[3][3] = 3; picture[3][4] = 3;
picture[3][5] = 3; picture[3][6] = 1; picture[3][7] = 0; picture[3][8] = 0;
picture[3][9] = 6; picture[3][10] = 6; picture[3][11] = 6; picture[3][12] = 1;
picture[4][1] = 0; picture[4][2] = 3; picture[4][3] = 3; picture[4][4] = 3;
picture[4][5] = 3; picture[4][6] = 1; picture[4][7] = 0; picture[4][8] = 6;
picture[4][9] = 0; picture[4][10] = 0; picture[4][11] = 6; picture[4][12] = 1;
picture[5][1] = 0; picture[5][2] = 0; picture[5][3] = 3; picture[5][4] = 3;
picture[5][5] = 0; picture[5][6] = 1; picture[5][7] = 0; picture[5][8] = 0;
picture[5][9] = 0; picture[5][10] = 0; picture[5][11] = 0; picture[5][12] = 1;
picture[6][1] = 0; picture[6][2] = 0; picture[6][3] = 7; picture[6][4] = 7;
picture[6][5] = 0; picture[6][6] = 1; picture[6][7] = 0; picture[6][8] = 0;
picture[6][9] = 0; picture[6][10] = 0; picture[6][11] = 0; picture[6][12] = 1;
picture[7][1] = 1; picture[7][2] = 1; picture[7][3] = 1; picture[7][4] = 1;
picture[7][5] = 1; picture[7][6] = 1; picture[7][7] = 1; picture[7][8] = 1;
picture[7][9] = 1; picture[7][10] = 1; picture[7][11] = 1; picture[7][12] = 1;
picture[8][1] = 0; picture[8][2] = 0; picture[8][3] = 7; picture[8][4] = 7;
picture[8][5] = 0; picture[8][6] = 1; picture[8][7] = 0; picture[8][8] = 0;
picture[8][9] = 0; picture[8][10] = 0; picture[8][11] = 0; picture[8][12] = 1;
picture[9][1] = 0; picture[9][2] = 0; picture[9][3] = 7; picture[9][4] = 7;
picture[9][5] = 0; picture[9][6] = 1; picture[9][7] = 0; picture[9][8] = 0;
picture[9][9] = 0; picture[9][10] = 0; picture[9][11] = 0; picture[9][12] = 1;
picture[10][1] = 0; picture[10][2] = 7; picture[10][3] = 7; picture[10][4] = 7;
picture[10][5] = 7; picture[10][6] = 1; picture[10][7] = 0; picture[10][8] = 0;
picture[10][9] = 0; picture[10][10] = 0; picture[10][11] = 0; picture[10][12] = 1;
picture[11][1] = 0; picture[11][2] = 0; picture[11][3] = 0; picture[11][4] = 0;
picture[11][5] = 0; picture[11][6] = 1; picture[11][7] = 0; picture[11][8] = 0;
picture[11][9] = 0; picture[11][10] = 0; picture[11][11] = 0; picture[11][12] = 1;
picture[12][1] = 0; picture[12][2] = 0; picture[12][3] = 0; picture[12][4] = 0;
picture[12][5] = 0; picture[12][6] = 1; picture[12][7] = 0; picture[12][8] = 0;
picture[12][9] = 0; picture[12][10] = 0; picture[12][11] = 0; picture[12][12] = 1;
picture[13][1] = 0; picture[13][2] = 0; picture[13][3] = 0; picture[13][4] = 0;
picture[13][5] = 0; picture[13][6] = 1; picture[13][7] = 0; picture[13][8] = 0;
picture[13][9] = 0; picture[13][10] = 0; picture[13][11] = 0; picture[13][12] = 1;
// Рисуем верхнюю рамку
for (int i = 0; i < m; i++) {
picture[N - 1][i] = 1; // нижняя рамка
}
}
void reset_picture(int **picture, int n, int m) {
for (int i = 0; i < n; i++) {
for (int j = 0; j < m; j++) {
picture[i][j] = 0;
}
}
}
void transform(int *buf, int **matr, int n, int m) {
for (int i = 0; i < n; i++) {
matr[i] = buf + i * m;
}
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNkZWZpbmUgTiAxNQojZGVmaW5lIE0gMTMKCnZvaWQgdHJhbnNmb3JtKGludCAqYnVmLCBpbnQgKiptYXRyLCBpbnQgbiwgaW50IG0pOwp2b2lkIG1ha2VfcGljdHVyZShpbnQgKipwaWN0dXJlLCBpbnQgbiwgaW50IG0pOwp2b2lkIHJlc2V0X3BpY3R1cmUoaW50ICoqcGljdHVyZSwgaW50IG4sIGludCBtKTsKCmludCBtYWluKCkgewogICAgaW50IHBpY3R1cmVfZGF0YVtOXVtNXTsKICAgIGludCAqcGljdHVyZVtOXTsKICAgIHRyYW5zZm9ybShwaWN0dXJlX2RhdGEsIHBpY3R1cmUsIE4sIE0pOwoKICAgIG1ha2VfcGljdHVyZShwaWN0dXJlLCBOLCBNKTsKCiAgICAvLyDQktGL0LLQvtC0INC60LDRgNGC0LjQvdC60LgKICAgIGZvciAoaW50IGkgPSAwOyBpIDwgTjsgaSsrKSB7CiAgICAgICAgZm9yIChpbnQgaiA9IDA7IGogPCBNOyBqKyspIHsKICAgICAgICAgICAgcHJpbnRmKCIlZCAiLCBwaWN0dXJlW2ldW2pdKTsKICAgICAgICB9CiAgICAgICAgcHJpbnRmKCJcbiIpOwogICAgfQoKICAgIHJldHVybiAwOwp9Cgp2b2lkIG1ha2VfcGljdHVyZShpbnQgKipwaWN0dXJlLCBpbnQgbiwgaW50IG0pIHsKICAgIGludCBmcmFtZV93W10gPSB7IDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEgfTsKICAgIGludCB0cmVlX3RydW5rW10gPSB7IDcsIDcsIDcsIDcgfTsKICAgIGludCB0cmVlX2ZvbGlhZ2VbXSA9IHsgMywgMywgMywgMyB9OwogICAgaW50IHN1bl9kYXRhWzZdWzVdID0geyB7IDAsIDYsIDYsIDYsIDYgfSwgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7IDAsIDAsIDYsIDYsIDYgfSwgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7IDAsIDAsIDYsIDYsIDYgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsgMCwgNiwgMCwgMCwgNiB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgeyAwLCAwLCAwLCAwLCAwIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7IDAsIDAsIDAsIDAsIDAgfSB9OwoKICAgIHJlc2V0X3BpY3R1cmUocGljdHVyZSwgbiwgbSk7CgogICAgLy8g0KDQuNGB0YPQtdC8INGA0LDQvNC60YMKICAgIGZvciAoaW50IGkgPSAwOyBpIDwgbTsgaSsrKSB7CiAgICAgICAgcGljdHVyZVswXVtpXSA9IGZyYW1lX3dbaV07IC8vINCy0LXRgNGF0L3Rj9GPINGA0LDQvNC60LAKICAgICAgICBwaWN0dXJlW04gLSAxXVtpXSA9IGZyYW1lX3dbaV07IC8vINC90LjQttC90Y/RjyDRgNCw0LzQutCwCiAgICB9CiAgICBmb3IgKGludCBpID0gMTsgaSA8IE4gLSAxOyBpKyspIHsKICAgICAgICBwaWN0dXJlW2ldWzBdID0gMTsgLy8g0LvQtdCy0LDRjyDRgNCw0LzQutCwCiAgICAgICAgcGljdHVyZVtpXVtNIC0gMV0gPSAxOyAvLyDQv9GA0LDQstCw0Y8g0YDQsNC80LrQsAogICAgfQoKICAgIC8vINCg0LjRgdGD0LXQvCDRjdC70LXQvNC10L3RgtGLINC90LAg0YHRgtC10L3QtQogICAgcGljdHVyZVsxXVsxXSA9IDA7IHBpY3R1cmVbMV1bMl0gPSAwOyBwaWN0dXJlWzFdWzNdID0gMDsgcGljdHVyZVsxXVs0XSA9IDA7IAogICAgcGljdHVyZVsxXVs1XSA9IDA7IHBpY3R1cmVbMV1bNl0gPSAxOyBwaWN0dXJlWzFdWzddID0gMDsgcGljdHVyZVsxXVs4XSA9IDY7IAogICAgcGljdHVyZVsxXVs5XSA9IDY7IHBpY3R1cmVbMV1bMTBdID0gNjsgcGljdHVyZVsxXVsxMV0gPSA2OyBwaWN0dXJlWzFdWzEyXSA9IDE7CgogICAgcGljdHVyZVsyXVsxXSA9IDA7IHBpY3R1cmVbMl1bMl0gPSAwOyBwaWN0dXJlWzJdWzNdID0gMzsgcGljdHVyZVsyXVs0XSA9IDM7IAogICAgcGljdHVyZVsyXVs1XSA9IDA7IHBpY3R1cmVbMl1bNl0gPSAxOyBwaWN0dXJlWzJdWzddID0gMDsgcGljdHVyZVsyXVs4XSA9IDA7IAogICAgcGljdHVyZVsyXVs5XSA9IDY7IHBpY3R1cmVbMl1bMTBdID0gNjsgcGljdHVyZVsyXVsxMV0gPSA2OyBwaWN0dXJlWzJdWzEyXSA9IDE7CgogICAgcGljdHVyZVszXVsxXSA9IDA7IHBpY3R1cmVbM11bMl0gPSAzOyBwaWN0dXJlWzNdWzNdID0gMzsgcGljdHVyZVszXVs0XSA9IDM7IAogICAgcGljdHVyZVszXVs1XSA9IDM7IHBpY3R1cmVbM11bNl0gPSAxOyBwaWN0dXJlWzNdWzddID0gMDsgcGljdHVyZVszXVs4XSA9IDA7IAogICAgcGljdHVyZVszXVs5XSA9IDY7IHBpY3R1cmVbM11bMTBdID0gNjsgcGljdHVyZVszXVsxMV0gPSA2OyBwaWN0dXJlWzNdWzEyXSA9IDE7CgogICAgcGljdHVyZVs0XVsxXSA9IDA7IHBpY3R1cmVbNF1bMl0gPSAzOyBwaWN0dXJlWzRdWzNdID0gMzsgcGljdHVyZVs0XVs0XSA9IDM7IAogICAgcGljdHVyZVs0XVs1XSA9IDM7IHBpY3R1cmVbNF1bNl0gPSAxOyBwaWN0dXJlWzRdWzddID0gMDsgcGljdHVyZVs0XVs4XSA9IDY7IAogICAgcGljdHVyZVs0XVs5XSA9IDA7IHBpY3R1cmVbNF1bMTBdID0gMDsgcGljdHVyZVs0XVsxMV0gPSA2OyBwaWN0dXJlWzRdWzEyXSA9IDE7CgogICAgcGljdHVyZVs1XVsxXSA9IDA7IHBpY3R1cmVbNV1bMl0gPSAwOyBwaWN0dXJlWzVdWzNdID0gMzsgcGljdHVyZVs1XVs0XSA9IDM7IAogICAgcGljdHVyZVs1XVs1XSA9IDA7IHBpY3R1cmVbNV1bNl0gPSAxOyBwaWN0dXJlWzVdWzddID0gMDsgcGljdHVyZVs1XVs4XSA9IDA7IAogICAgcGljdHVyZVs1XVs5XSA9IDA7IHBpY3R1cmVbNV1bMTBdID0gMDsgcGljdHVyZVs1XVsxMV0gPSAwOyBwaWN0dXJlWzVdWzEyXSA9IDE7CgogICAgcGljdHVyZVs2XVsxXSA9IDA7IHBpY3R1cmVbNl1bMl0gPSAwOyBwaWN0dXJlWzZdWzNdID0gNzsgcGljdHVyZVs2XVs0XSA9IDc7IAogICAgcGljdHVyZVs2XVs1XSA9IDA7IHBpY3R1cmVbNl1bNl0gPSAxOyBwaWN0dXJlWzZdWzddID0gMDsgcGljdHVyZVs2XVs4XSA9IDA7IAogICAgcGljdHVyZVs2XVs5XSA9IDA7IHBpY3R1cmVbNl1bMTBdID0gMDsgcGljdHVyZVs2XVsxMV0gPSAwOyBwaWN0dXJlWzZdWzEyXSA9IDE7CiAgICAKICAgIHBpY3R1cmVbN11bMV0gPSAxOyBwaWN0dXJlWzddWzJdID0gMTsgcGljdHVyZVs3XVszXSA9IDE7IHBpY3R1cmVbN11bNF0gPSAxOyAKICAgIHBpY3R1cmVbN11bNV0gPSAxOyBwaWN0dXJlWzddWzZdID0gMTsgcGljdHVyZVs3XVs3XSA9IDE7IHBpY3R1cmVbN11bOF0gPSAxOyAKICAgIHBpY3R1cmVbN11bOV0gPSAxOyBwaWN0dXJlWzddWzEwXSA9IDE7IHBpY3R1cmVbN11bMTFdID0gMTsgcGljdHVyZVs3XVsxMl0gPSAxOwogICAgCiAgICBwaWN0dXJlWzhdWzFdID0gMDsgcGljdHVyZVs4XVsyXSA9IDA7IHBpY3R1cmVbOF1bM10gPSA3OyBwaWN0dXJlWzhdWzRdID0gNzsgCiAgICBwaWN0dXJlWzhdWzVdID0gMDsgcGljdHVyZVs4XVs2XSA9IDE7IHBpY3R1cmVbOF1bN10gPSAwOyBwaWN0dXJlWzhdWzhdID0gMDsgCiAgICBwaWN0dXJlWzhdWzldID0gMDsgcGljdHVyZVs4XVsxMF0gPSAwOyBwaWN0dXJlWzhdWzExXSA9IDA7IHBpY3R1cmVbOF1bMTJdID0gMTsKICAgIAogICAgcGljdHVyZVs5XVsxXSA9IDA7IHBpY3R1cmVbOV1bMl0gPSAwOyBwaWN0dXJlWzldWzNdID0gNzsgcGljdHVyZVs5XVs0XSA9IDc7IAogICAgcGljdHVyZVs5XVs1XSA9IDA7IHBpY3R1cmVbOV1bNl0gPSAxOyBwaWN0dXJlWzldWzddID0gMDsgcGljdHVyZVs5XVs4XSA9IDA7IAogICAgcGljdHVyZVs5XVs5XSA9IDA7IHBpY3R1cmVbOV1bMTBdID0gMDsgcGljdHVyZVs5XVsxMV0gPSAwOyBwaWN0dXJlWzldWzEyXSA9IDE7CiAgICAKICAgIHBpY3R1cmVbMTBdWzFdID0gMDsgcGljdHVyZVsxMF1bMl0gPSA3OyBwaWN0dXJlWzEwXVszXSA9IDc7IHBpY3R1cmVbMTBdWzRdID0gNzsgCiAgICBwaWN0dXJlWzEwXVs1XSA9IDc7IHBpY3R1cmVbMTBdWzZdID0gMTsgcGljdHVyZVsxMF1bN10gPSAwOyBwaWN0dXJlWzEwXVs4XSA9IDA7IAogICAgcGljdHVyZVsxMF1bOV0gPSAwOyBwaWN0dXJlWzEwXVsxMF0gPSAwOyBwaWN0dXJlWzEwXVsxMV0gPSAwOyBwaWN0dXJlWzEwXVsxMl0gPSAxOwogICAgCiAgICBwaWN0dXJlWzExXVsxXSA9IDA7IHBpY3R1cmVbMTFdWzJdID0gMDsgcGljdHVyZVsxMV1bM10gPSAwOyBwaWN0dXJlWzExXVs0XSA9IDA7IAogICAgcGljdHVyZVsxMV1bNV0gPSAwOyBwaWN0dXJlWzExXVs2XSA9IDE7IHBpY3R1cmVbMTFdWzddID0gMDsgcGljdHVyZVsxMV1bOF0gPSAwOyAKICAgIHBpY3R1cmVbMTFdWzldID0gMDsgcGljdHVyZVsxMV1bMTBdID0gMDsgcGljdHVyZVsxMV1bMTFdID0gMDsgcGljdHVyZVsxMV1bMTJdID0gMTsKICAgIAogICAgcGljdHVyZVsxMl1bMV0gPSAwOyBwaWN0dXJlWzEyXVsyXSA9IDA7IHBpY3R1cmVbMTJdWzNdID0gMDsgcGljdHVyZVsxMl1bNF0gPSAwOyAKICAgIHBpY3R1cmVbMTJdWzVdID0gMDsgcGljdHVyZVsxMl1bNl0gPSAxOyBwaWN0dXJlWzEyXVs3XSA9IDA7IHBpY3R1cmVbMTJdWzhdID0gMDsgCiAgICBwaWN0dXJlWzEyXVs5XSA9IDA7IHBpY3R1cmVbMTJdWzEwXSA9IDA7IHBpY3R1cmVbMTJdWzExXSA9IDA7IHBpY3R1cmVbMTJdWzEyXSA9IDE7CiAgICAKICAgIHBpY3R1cmVbMTNdWzFdID0gMDsgcGljdHVyZVsxM11bMl0gPSAwOyBwaWN0dXJlWzEzXVszXSA9IDA7IHBpY3R1cmVbMTNdWzRdID0gMDsgCiAgICBwaWN0dXJlWzEzXVs1XSA9IDA7IHBpY3R1cmVbMTNdWzZdID0gMTsgcGljdHVyZVsxM11bN10gPSAwOyBwaWN0dXJlWzEzXVs4XSA9IDA7IAogICAgcGljdHVyZVsxM11bOV0gPSAwOyBwaWN0dXJlWzEzXVsxMF0gPSAwOyBwaWN0dXJlWzEzXVsxMV0gPSAwOyBwaWN0dXJlWzEzXVsxMl0gPSAxOwoKICAgIC8vINCg0LjRgdGD0LXQvCDQstC10YDRhdC90Y7RjiDRgNCw0LzQutGDCiAgICBmb3IgKGludCBpID0gMDsgaSA8IG07IGkrKykgewogICAgICAgIHBpY3R1cmVbTiAtIDFdW2ldID0gMTsgLy8g0L3QuNC20L3Rj9GPINGA0LDQvNC60LAKICAgIH0KfQoKdm9pZCByZXNldF9waWN0dXJlKGludCAqKnBpY3R1cmUsIGludCBuLCBpbnQgbSkgewogICAgZm9yIChpbnQgaSA9IDA7IGkgPCBuOyBpKyspIHsKICAgICAgICBmb3IgKGludCBqID0gMDsgaiA8IG07IGorKykgewogICAgICAgICAgICBwaWN0dXJlW2ldW2pdID0gMDsKICAgICAgICB9CiAgICB9Cn0KCnZvaWQgdHJhbnNmb3JtKGludCAqYnVmLCBpbnQgKiptYXRyLCBpbnQgbiwgaW50IG0pIHsKICAgIGZvciAoaW50IGkgPSAwOyBpIDwgbjsgaSsrKSB7CiAgICAgICAgbWF0cltpXSA9IGJ1ZiArIGkgKiBtOwogICAgfQp9