Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.016 c
3-69127
Shatun
2002-11-01 09:40
2002.11.21
Помогите с подставными полями d DBGrid.


7-69595
isc
2002-09-20 18:36
2002.11.21
Работа с LPT портом


14-69487
blackweber
2002-11-05 00:50
2002.11.21
GUID


3-69117
SasaR
2002-11-04 10:23
2002.11.21
Создание временной таблицы в SP-Interbase


3-69203
Alek_1
2002-10-23 01:44
2002.11.21
Индексы в парадоксе!




   Наверх