пятница, 19 июня 2009 г.

Построить симметричный треугольник

Дано 6 целых чисел, определяющих положение вершин треугольника, расположенного в левой половине экрана. Построить на экране этот треугольник, а также треугольник, симметричный данному относительно вертикальной прямой, проходящей через середину экрана.

#include<dos.h>
#include<graphics.h>
#include<conio.h>

main()
{
//инициализация графики
int gd = 0, gm;
initgraph(&gd, &gm,"c:\tc\bgi");

//зададим 6 значений описывающих наш треугольник
int x1 = 10;
int y1 = 10;

int x2 = 200;
int y2 = 30;

int x3 = 200;
int y3 = 200;


//рисуем исходный треугольник
line(x1, y1, x2, y2);
line(x2, y2, x3, y3);
line(x3, y3, x1, y1);

//находим ширину экрана
int x = getmaxx();

//рисуем разделяющую экран линию
line(x/2, 0, x/2, getmaxy());

// находим симетричные середине координаты x, y - не меняется
x1 = x - x1;
x2 = x - x2;
x3 = x - x3;

//рисуем симметричный треугльник
line(x1, y1, x2, y2);
line(x2, y2, x3, y3);
line(x3, y3, x1, y1);

getch(); //не выходим пока не нажмём кнопку
}


рабочий вариант можно скачать тут

Комментариев нет:

Отправить комментарий