Решения (задачи 200-219)
Задача 205.
// Рисует олимпийский флаг #include <graphics.h> #include <stdlib.h> #include <stdio.h> #include <conio.h> #define PATHTODRIVER "с:\\borlandc\\bgi\\" void main(void) int gdriver = DETECT; // драйвер int gmode; // режим int errorcode; // код ошибки initgraph(sgdriver, Sgmode, PATHTODRIVER); errorcode = graphresult(); if (errorcode!= grOk) // ошибка инициализации // графического режима printf("Ошибка: %d\n", errorcode); puts("Для завершения программы нажмите Enter"); getch(); exit(l); // полотнище флага – сплошная заливка серым цветом setfillstyle(SOLID_FILL,LIGHTGRAY); // bar(80.80.200.135); // кольца setcolor(GREEN); // зеленое circle(100.100.15); setcolor(BLACK); // черное circle(140.100.15); setcolor(RED); // красное circle(180.100.15); setcolor(YELLOW); // желтое circle(120.115.15); setcolor(BLUE); // синее circle(160.115.15); getch(); closegraph(); // выход из графического режима
Задача 208.
// Выводит корабль (с использованием метода базовой точки) finclude <graphics.h> iinclude <stdlib.h> #include <stdio.h> #include <conio.h> #defme dx 10, '/ шаг сетки по X #define dy 10, 11 шаг сетки по Y void shipfint x, int у) // х, у – координаты базовой точки / / корпус moveto(x,у); lineto(x,y-2*dy); lineto (х+ЮМх, y-2*dy); lineto(x+ll*dx,y-3*dy); lineto(x+17*dx,y-3*dy); lineto(x+14*dx,y); lineto(x,y);. // надстройка moveto(x+3*dx,y-2*dy); lineto(x+4*dx,y-3*dy); lineto(x+4*dx,y-4*dy); lineto(x+13*dx,y-4*dy); lineto (x+13*dx,y-3*dy); line(x+5*dx,y-3*dy,x+9*dx,y-3*dy); // капитанский мостик rectangle(x+8*dx,y-4*dy,x+ll*dx,y-5*dy); // труба rectangle(x+7*dx,y-4*dy,x+8*dx,y-7*dy); // иллюминаторы circle(x+12*dx,y-2*dy,dx/2); circle(x+14*dx,y-2*dy,dx/2); // мачта line(x+10*dx,y-5*dy,x+10*dx,y-10*dy); // оснастка moveto(x+17*dx,y-3*dy); lineto(x+10*dx,y-10*dy); lineto(x,y-2*dy); fdefine PATHTODRIVER "с: WborlandcWbgiW" void main(void) int gdriver = DETECT; // драйвер. int gmode; // режим int errorcode; // код ошибки initgraph(&gdriver, &gmode, PATHTODRIVER); errorcode = graphresult(); if {errorcode!= grOk) // ошибка инициализации // граф. режима printf("Ошибка: %d\n", errorcode); puts("Для завершения программы нажмите Enter"); getch(); exit (1); ship(50.150); getch (); closegraph(); // выход из графического режима