Archived
Работы по программированию
This commit is contained in:
@@ -0,0 +1,51 @@
|
||||
#include <iostream>
|
||||
#include <cmath>
|
||||
#include <graphics.h>
|
||||
|
||||
using namespace std;
|
||||
|
||||
int main() {
|
||||
// Установка графического режима
|
||||
int gd = DETECT, gm;
|
||||
initgraph(&gd, &gm, "");
|
||||
|
||||
// Параметры задачи
|
||||
const double AB = 16; // Боковая сторона AB
|
||||
const double CD = 34; // Боковая сторона CD
|
||||
const double BC = 2; // Основание BC
|
||||
|
||||
// Вычисление высоты трапеции
|
||||
double h = AB / 2; // Высота равна половине боковой стороны AB
|
||||
|
||||
// Вычисление площади трапеции
|
||||
double S = (AB + CD) * h / 2;
|
||||
|
||||
// Вывод условия задачи в графическом виде
|
||||
setcolor(WHITE);
|
||||
outtextxy(10, 10, "Боковые стороны AB и CD трапеции ABCD равны соответственно 16 и 34, а основание BC равно 2.");
|
||||
outtextxy(10, 30, "Биссектриса угла ADC проходит через середину стороны AB. Найти площадь трапеции.");
|
||||
|
||||
// Рисование трапеции
|
||||
int x0 = 100, y0 = 300; // Вершина A
|
||||
int x1 = x0 + AB, y1 = y0; // Вершина B
|
||||
int x2 = x1 - BC, y2 = y0 - h; // Вершина C
|
||||
int x3 = x2 - (CD - AB), y3 = y2; // Вершина D
|
||||
line(x0, y0, x1, y1);
|
||||
line(x1, y1, x2, y2);
|
||||
line(x2, y2, x3, y3);
|
||||
line(x3, y3, x0, y0);
|
||||
|
||||
// Рисование биссектрисы
|
||||
line(x3, y3, x0 + AB / 2, y0);
|
||||
|
||||
// Вывод ответа
|
||||
char text[50];
|
||||
sprintf(text, "Площадь трапеции: %.2f", S);
|
||||
outtextxy(10, 50, text);
|
||||
|
||||
getch();
|
||||
closegraph();
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user