Главная страница
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.016 c
3-69160
MsGuns
2002-10-29 15:48
2002.11.21
Неудобоваримый LookUp или я родился баобабом


3-69191
ruslan_as
2002-11-01 11:11
2002.11.21
обновить одну запись


1-69388
123000
2002-11-10 16:19
2002.11.21
Image lists


14-69571
VDen
2002-11-04 19:24
2002.11.21
Любимый СофтАйс


1-69390
Roman_Tutov
2002-11-10 13:06
2002.11.21
Многооконное приложение