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

Вниз

Алгоритм функции Arctan   Найти похожие ветки 

 
Cliff   (2003-07-22 03:04) [0]

Кто нибудь знает алгоритм нахождения арктангенса на паскале ????
Помогите кто может 8)


 
default   (2003-07-22 04:37) [1]


function ArcTan_(X: Extended): Extended;
asm

FLD TBYTE PTR [X]
FLD1
FPATAN

end;

вот
из окна CPU содрано


 
default   (2003-07-22 04:42) [2]

а сама реализация алгоритма - выполняется аппаратно сопроцессором


 
default   (2003-07-22 05:16) [3]

ещё можно через арккосинус вычислить


 
Mr. API   (2003-07-22 08:45) [4]

Можно разложить в ряд.


 
default   (2003-07-22 08:47) [5]

можно и в ряд
в Тейлора что ли?
дольше считать будет только...


 
Mr. API   (2003-07-22 10:40) [6]

именно в Тейлора. глюки с точностью могут быть. сейчас как программку напишу, так выложу. Там прикол такой, что
arctg(x)=x - x^3/3 + x^5/5 +...+(-1)^((n-1)/2))*x^n/n, где n- нечетное число. ^-возведение в степень.
Т. е. чтобы выглядело как ряд.
acrtg(x)=sum((-1)^n*x^(n-1)/2*n-1,n=1..infinity);
Ну понятно, что a=0.

А проц, наверное, так же считает? или нет?


 
Mr. API   (2003-07-22 13:21) [7]

можно так.

function arctg(x: real): real;
var
s, d: real;
eps: real;
i: integer;
begin
eps:=0.0000001;
d:=x;
s:=d;
i:=2;
while abs(d)>=eps do
begin
d:=d*(-1)*x*x*(2*i-3)/(2*i-1);
s:=s+d;
inc(i);
end;
Result:=s;
end;



 
BOA_KAA   (2003-07-22 13:55) [8]

Проще залезть в модуль Math и посмотреть, как там это сделано



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

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

Наверх




Память: 0.45 MB
Время: 0.008 c
1-20586
Tornado
2003-07-24 09:43
2003.08.07
ADOQuery in DLL


14-20734
McSimm
2003-07-18 19:52
2003.08.07
Информация о конкурсе статей.


9-20375
dj karies
2003-02-08 19:02
2003.08.07
КОЛОБОК 3D


3-20380
AkaSaint
2003-07-14 18:15
2003.08.07
Как в ADOTable обновить из БД только одну запись?


1-20540
Vintik
2003-07-26 15:33
2003.08.07
Как сделать горячие клавиши?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский