
Гликерий
5 год назад
C++Очень срочно!!!!!!!!!!!Напишите функцию triangle_area, которая возвращает вещественное число — площадь треугольника.Функции должны даваться различные наборы параметров:double triangle_area (double a, double b, double c) — длины трёх сторон;double triangle_area (double x1, double y1, double x2, double y2, double x3, double y3) — координаты трёх точек.При проверке задачи с клавиатуры будет вводиться список параметров, которые нужно передать в функцию.Формат входных данныхВ первой строке вводится целое число p (p=3 или p=6) — количество параметров, которые следует передать в функцию.В следующей строке вводятся p вещественных чисел, не превышающих по модулю 10, и заданных с точностью не более одного знака после десятичной точки.Формат выходных данныхТребуется вывести площадь треугольника с точностью не менее 4 знаков после десятичной точки. Примеры Ввод- 33.0 4.0 5.0Вывод- 6.0000Ввод- 60.0 0.0 3.0 0.0 0.0 4.0Ввывод- 6.0000
ОТВЕТЫ

Morgan Gary
Oct 24, 2020
double triangle_area(double a, double b, double c)
{
double p = (a + b + c) / (double)2;
double s = sqrt(p*(p-a)*(p-b)*(p-c));
return s;
}
double triangle_area(double x1, double y1, double x2, double y2, double x3,
double y3)
{
double a = sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2));
double b = sqrt((x2-x3)*(x2-x3)+(y2-y3)*(y2-y3));
double c = sqrt((x3-x1)*(x3-x1)+(y3-y1)*(y3-y1));
return triangle_area(a, b, c);
}
{
double p = (a + b + c) / (double)2;
double s = sqrt(p*(p-a)*(p-b)*(p-c));
return s;
}
double triangle_area(double x1, double y1, double x2, double y2, double x3,
double y3)
{
double a = sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2));
double b = sqrt((x2-x3)*(x2-x3)+(y2-y3)*(y2-y3));
double c = sqrt((x3-x1)*(x3-x1)+(y3-y1)*(y3-y1));
return triangle_area(a, b, c);
}
431
Смежные вопросы: