Решения (задачи 220-229)
Задача 222.
// Шахматная доска #include <graphics.h> #include <stdio.h> #include <conio.h> #define PATHTODRIVER "c: WborlandcWbgiW" // шахматная доска void doska() int x0 = 100, // координаты левого верхнего угла доски у0 = 100; x,у; // координаты левого верхнего угла клетки int w = 25; // размер клетки int i,j; // номер строки и колонки х = х0; у = у0; for (i = 0; i < 8; i++) // восемь строк for (j = 0; j < 8; j++) II восемь клеток в строке // если сумма номера строки и номера // колонки, на пересечении которых находится // клетка, четная, то клетка – коричневая, // иначе – желтая if ((i+j) % 2) setfillstyle(SOLID_FILL,BROWN); else setfillstyle(SOLID_FILL,YELLOW); bar (x, y, x+w, y+w); x += w; x = x0; у += w; void main(void) int gdriver = DETECT; // драйвер int gmode; int errorcode; // режим // код ошибки initgraphUgdriver, Sgmode, PATHTODRIVER); errorcode = graphresult(); if (errorcode!= grOk) // ошибка инициализации // графического режима printf("Ошибка: %d\n", errorcode); puts("Для завершения программы нажмите Enter"); getch(); return,- doska (); getch(); closegraph(); // выход из графического режима
Задача 223.
// Флажок tinclude <graphics.h> tinclude <stdio.h> #include <conio.h> tdefine PATHTODRIVER "c: WborlandcWbgiW" 'int flagt) { int point[12]; // координаты точек флажка // задать координаты контура флажка point[0] = 100; point[1] = 100; point[2] = 160; point[3] = 100; point[4] = 140; point[5] = 120; point[6] = 160; point[7] = 140; point[8] = 100; point[9] = 140; point[10]= 100; point[11] = 100; setfillstyle(SOLID_FILL, RED); fillpoly(6, point); line(100, 140, 100, 170); void main(void) int gdriver = DETECT; // драйвер int gmode; // режим int errorcode; // код ошибки initgraph(&gdriver, sgmode, PATHTODRIVER); errorcode = graphresult(); (errorcode!= grOk) // ошибка инициализации // графического режима printf("Ошибка: %d\n", errorcode); puts("Для завершения программы нажмите Enter"); getch(); return; flag(); getch(); closegraph(); // выход из графического режима