Помогите пожалуйста сделать программу ** С++.Даны отрезки a,b,c,d. Для каждой тройки этих...

0 голосов
30 просмотров

Помогите пожалуйста сделать программу на С++.
Даны отрезки a,b,c,d. Для каждой тройки этих отрезков, из которых можно построить треугольник, найти площадь данного треугольника. использовать функцию определения площади треугольника по длинам его сторон.


Информатика (44 баллов) | 30 просмотров
0

хорошо, сделаю

Дано ответов: 2
0 голосов
Правильный ответ

#include

using namespace std;


void TriangleArea(double a, double b, double c)
{
  double p = (a + b + c) / 2;
  double ss = p * (p - a) * (p - b) * (p - c);  // Using Heron's formula
  if (ss > 0)
    cout << "Area of triangle = " << sqrt(ss);<br>  else
    cout << "The three sides will not form a triangle.";<br>}

void main()
{
  double a, b, c, d;
  cout << "a = ";</span>
  cin >> a;
  cout << "b = ";<br>  cin >> b;
  cout << "c = ";<br>  cin >> c;
  cout << "d = ";<br>  cin >> d;

  cout << "\n\nThree side lengths to a triangle (a, b, c):\n";<br>  TriangleArea(a, b, c);
  cout << "\n\nThree side lengths to a triangle (a, b, d):\n";</span>
  TriangleArea(a, b, d);
  cout << "\n\nThree side lengths to a triangle (b, c, d):\n";<br>  TriangleArea(b, c, d);
  cout << "\n\nThree side lengths to a triangle (a, c, d):\n";<br>  TriangleArea(a, c, d);
  cout << "\n\n";<br>}

(598 баллов)
0 голосов

Добрый день! К сожалению я не работаю с C++, но если это поможет, то вот эта задача в Pascal
VAR a,b,c,d:REAL;
PROCEDURE Print_S(x,y,z:REAL);
 VAR  p,S:REAL;
 begin  If ((x+y)>z) and ((x+z)>y) and ((y+z)>x) then 
 begin   
p:=x+y+z;
S:=SQRT(p*(p-x)*(p-y)*(p-z));
WriteLn('S= ',S);
end
 else
Writeln('Треугольник не существует!');
end;
BEGIN Write('a= ');
ReadLn(a);
 Write('b= ');
 ReadLn(b);
 Write('c= ');
 ReadLn(c);
 Write('d= ');
 ReadLn(d);
 WriteLn;
 WriteLn('Стороны ',a,'; ',b,'; ',c);
 Print_S(a,b,c);
 WriteLn;
 WriteLn('Стороны ',a,'; ',b,'; ',d);
 Print_S(a,b,d);
 WriteLn;
 WriteLn('Стороны ',a,'; ',c,'; ',d); 
Print_S(a,c,d);
 WriteLn;
 WriteLn('Стороны ',b,'; ',c,'; ',d);
 Print_S(b,c,d);
END.

(2.7k баллов)
0

полупериметр неправильно считаешь