Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.11.21;
Скачать: CL | DM;

Вниз

Как программно вычислить tg и ctg   Найти похожие ветки 

 
Тень   (2002-11-10 04:35) [0]

Как программно вычислить tg и ctg?


 
Николай Быков ©   (2002-11-10 05:21) [1]

ну это совсем просто

var
tg_alpha,ctg_alpha:real;
alpha:real; //угол альфа задается в радианах
...........
begin
tg_alpha:=sin(alpha)/cos(alpha);
ctg_alpha:=cos(alpha)/sin(alpha);
end;


 
mmb ©   (2002-11-10 09:12) [2]

можно ещё проще

tg_alpha := Tan(alpha);
ctg_alpha:= 1 / tg_alpha;

либо воспользуйся
SinCos(alpha, Sin_alpha, Cos_alpha);


 
AndreyAG ©   (2002-11-10 09:59) [3]

Код Николая Быкова нужно уточнить:
var
tg_alpha,ctg_alpha:real;
alpha:real; //угол альфа задается в радианах
...........
begin
if cos(alpha)<>0 then
tg_alpha:=sin(alpha)/cos(alpha)
else
tg_alpha:=High(tg_alpha);
if sin(alpha)<>0 then
ctg_alpha:=cos(alpha)/sin(alpha)
else
ctg_alpha:=High(ctg_alpha);

end;


 
Alx2 ©   (2002-11-10 10:28) [4]

>AndreyAG © (10.11.02 09:59)
>if cos(alpha)<>0 then
>if sin(alpha)<>0 then

if abs(cos(alpha))>eps then ..
if abs(sin(alpha))>eps then ..
где eps достаточно малая величина > машинного нуля


 
mmb ©   (2002-11-10 11:39) [5]

Вы не поняли есть готовая функция
вот её код
function Tan(const X: Extended): Extended;
{ Tan := Sin(X) / Cos(X) }
asm
FLD X
FPTAN
FSTP ST(0) { FPTAN pushes 1.0 after result }
FWAIT
end;




 
mmb ©   (2002-11-10 11:40) [6]

находится в unit Math;


 
Alx2 ©   (2002-11-10 11:46) [7]

>mmb © (10.11.02 11:39)
С моей стороны речь была не о tan



Страницы: 1 вся ветка

Текущий архив: 2002.11.21;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.015 c
3-69150
orlando
2002-10-31 12:41
2002.11.21
TSession


7-69602
antonioxxx
2002-09-13 23:35
2002.11.21
Где установлен Windows?


14-69503
symbol
2002-11-02 08:21
2002.11.21
EhLib


3-69131
Explorer
2002-10-30 08:33
2002.11.21
StoredProc


6-69456
imbecil
2002-09-25 16:58
2002.11.21
Как отличить имя хоста от IP адреса ?