Язык программирования - PascalABC.NET. Если у Вас иная версия - проверьте наличие в ней функции арккосинуса.
var a,b,c,h,S,alpha,beta,gamma,pi:real; begin Writeln('Введите длины двух сторон треугольника и угол между ними'); Read(a,b,gamma); pi:=3.14; c:=sqrt(a*a+b*b-2*a*b*cos(pi*gamma/180)); alpha:=arccos((b*b+c*c-a*a)/(2*b*c))*180/pi; beta:=180-alpha-gamma; h:=b*sin(alpha*pi/180); S:=c*h/2; Writeln('с=',c:0:4,', alpha=',alpha:0:2,', beta=',beta:0:2); Writeln('h=',h:0:4,' S=',s:0:3) end.
Пример Введите длины двух сторон треугольника и угол между ними 11.7 15.9 58 с=13.8700, alpha=45.68, beta=76.32 h=11.3707 S=78.856
версия - проверьте наличие в ней функции арккосинуса.
var
a,b,c,h,S,alpha,beta,gamma,pi:real;
begin
Writeln('Введите длины двух сторон треугольника и угол между ними');
Read(a,b,gamma);
pi:=3.14;
c:=sqrt(a*a+b*b-2*a*b*cos(pi*gamma/180));
alpha:=arccos((b*b+c*c-a*a)/(2*b*c))*180/pi;
beta:=180-alpha-gamma;
h:=b*sin(alpha*pi/180);
S:=c*h/2;
Writeln('с=',c:0:4,', alpha=',alpha:0:2,', beta=',beta:0:2);
Writeln('h=',h:0:4,' S=',s:0:3)
end.
Пример
Введите длины двух сторон треугольника и угол между ними
11.7 15.9 58
с=13.8700, alpha=45.68, beta=76.32
h=11.3707 S=78.856
Во вложении даны необходимые пояснения.
Program n1;
var x,y,z:real;
function arccos(x : real) : real; {это понадобится для теор. кос.}
begin
arccos := 2 * arctan(sqrt((1 - x) / (1 + x)));
end;
procedure ygl( a,b,c: real); {процедура для удобства}
var ga: real;
begin
ga:=arccos((sqr(a) + sqr(b) - sqr(c))/(2 * a* b)) * 180 / pi; {сама теор. кос.}
writeln('угол С= ',ga:5:2);
end;
begin
write('введите сторону а: ');
readln(x);
write('введите сторону b: ');
readln(y);
write('введите сторону c: ');
readln(z);
if(x>=y+z)or(y>=x+z)or(z>=x+y)then writeln('Это не треугольник')
else if x*x+y*y=z*z then {теорема пифагора}
writeln('Это прямоугольный треугольник')
else if (x*x+y*y>z*z)and(x*x+z*z>y*y)and(z*z+y*y>x*x)
then
begin
writeln('Это остроугольный треугольник');
ygl(x,y,z); {вызываем процедуру}
end
else
begin
writeln('Это тупоугольный треугольник');
ygl(x,y,z);
end;
end.