Консультация № 70212
09.01.2007, 22:26
0.00 руб.
0 1 1
Здравствуйте, дорогие эксперты. Есть ли такая функция, которая отображает угол, если ее аргумент равен косинусу?

Обсуждение

Неизвестный
09.01.2007, 23:35
общий
это ответ
Здравствуйте, Bingo!
Такой функции в Pascal нет, но можно сделать её самому. Всё берётся из тригонометрии:
arcCos(a)=arcCtg(a/(1-a^2)^0.5)
В Pascal есть только функция арктангенса, но опять же поможет тригонометрия:
arcCtg(a)+arcTg(a)=pi/2
arcCtg(a)=pi/2-arcTg(a)
Но в паскале всё считается в радианах, для этого переводим их в градусы(опять же тригонометрия):
x градусов=(180*z радианов)/pi
В итоге получаем код на Pascal:


Приложение:
function arccos(a:real):real;Var t:real;Begin  if a=1 then arccos:=0  else  begin   t:=a/sqrt(1-sqr(a));   arccos:=180*(pi/2-arcTan(t))/pi;  endEnd;Var   c:real;BeginReadln(c);writeln(arccos(c):4:2);End.
Форма ответа