Даны действительные положительные числа a, b, c, которые задают длины сторон треугольника и угол между ними. Напишите программу (Паскаль), позволяющую найти длину третьей стороны треугольника и два остальных угла.

1

Ответы и объяснения

2013-11-16T18:31:22+00:00
Var
  a, b, c, aa, ab, ac : real;

function Arcsin (x : real) : real; begin Arcsin := Arctan(x/Sqrt(1-sqr(x))); end;
//магия. в паскале нет функции арксинус или арккосинус, поэтому приходится выражать через арктангенс.

begin
  read (a, b, ac);
  ac := ac  * pi / 180; // перевод в радианы
  c := sqrt (sqr (a) + sqr (b) - 2 * a * b * cos (ac));
  aa := arcsin (a * sin (ac) / c);
  ab := pi - aa - ac;
  writeln (a, ' ', b, ' ', c);
  writeln (aa * 180 / pi, ' ', ab * 180 / pi, ' ', ac * 180 / pi);
end.