Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2007.11.25;
Скачать: [xml.tar.bz2];

Вниз

Как вычислить arccos через arctan?   Найти похожие ветки 

 
Pweq   (2007-10-24 17:10) [0]

Подскажите, пожалуйста!


 
Сергей М. ©   (2007-10-24 17:11) [1]

Студент ?)


 
palva ©   (2007-10-24 17:17) [2]

{$APPTYPE CONSOLE}
uses Math;
var d: Double;
begin
 d := 0.2;
 writeln(arctan(sqrt(1-sqr(d))/d)); //  1.36943840600457E+0000
 // Проверяем:
 writeln(arccos(d));                //  1.36943840600457E+0000
 // Совпадает
end.


 
Pweq   (2007-10-24 17:48) [3]

А если d = 0?


 
@!!ex ©   (2007-10-24 17:54) [4]

> [3] Pweq   (24.10.07 17:48)

Сам не догадаешься?


 
Dmitry S ©   (2007-10-24 17:54) [5]

А когда косинус равен нулю?:)


 
palva ©   (2007-10-24 17:56) [6]

Тогда исправим код.
{$APPTYPE CONSOLE}
uses Math;
var d: Double;
begin
 d := 0.2;
 writeln(arctan2(sqrt(1-sqr(d)), d)); //  1.36943840600457E+0000
 d := 0.0;
 writeln(arctan2(sqrt(1-sqr(d)), d)); //  1.57079632679490E+0000
end.


 
tesseract ©   (2007-10-24 17:57) [7]


> А если d = 0?


pi/2


 
Jeer ©   (2007-10-24 18:03) [8]

<
> tesseract ©   (24.10.07 17:57) [7]


А если военное время и PI равно бесконечности ?
У студента и так уже заворот мозгов.


 
oldman ©   (2007-10-24 18:22) [9]


> Dmitry S ©   (24.10.07 17:54) [5]
> А когда косинус равен нулю?


В военное время при отсутствии прапорщиков...


 
Jimmy   (2007-10-24 19:31) [10]

Кстати, недавно столкнулся с тем, что ArcCos из модуля Math при аргументе чуть большем 1 выдает какое-то громадное число. Пришлось написать свой:
Function ArcCosMy(x:Real):Real;
begin
if x>=1  then x:=1;
if x<=-1 then x:=-1;
Result:=ArcCos(x);
end;
Будуте смеятнся надо мной или над ArcCos?


 
@!!ex ©   (2007-10-24 19:35) [11]

> [10] Jimmy   (24.10.07 19:31)

Над вами, ибо Cos не может принимать значения меньше -1 и больше 1, соответственно и ArcCos обрабатывать такие значения не должен.


 
Jimmy   (2007-10-24 19:41) [12]

Ей-Богу, не вру!


 
Petr V.Abramov   (2007-10-24 21:56) [13]

написать ф-цию arctan2arccos
как - в учебнике


 
@!!ex ©   (2007-10-25 21:32) [14]

Кстати, вот в целях общего развития сегодня написал. Работает на 30% быстрее стандартной реализации.
function FastArcCos(const X: Extended): Extended;
asm
 fld    X
 fld    X
 fmul
 fld1
 fsubr
 fsqrt
 fld    X
 fpatan
 fwait
end;



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

Форум: "Прочее";
Текущий архив: 2007.11.25;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.055 c
1-1189049650
Nikfel
2007-09-06 07:34
2007.11.25
Добавление пункта в системное контекстное меню эксплорера


6-1174560382
zero
2007-03-22 13:46
2007.11.25
Проблема с компонентом idFtp


15-1192817453
Ekzot
2007-10-19 22:10
2007.11.25
Где IE хранит иконки кнопок навигации.


2-1194006343
Nike85
2007-11-02 15:25
2007.11.25
Добавление объектов в ComboBox (Tobject(string))


15-1193393342
Kerk
2007-10-26 14:09
2007.11.25
Синхронизация потоков





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский