Алгоритъм за изчисляване на дъга тангента - всичко за него, и програмиране

СЪДЪРЖАНИЕ

Страница 1 от 2

Arc тангента се изчислява чрез определяне на стесняване региона [0, пи / 12] и сближаване в тази област. Алгоритъмът е оптимизиран за плаваща запетая единична точност. Аркуссинус лесно изчислява чрез аркустангенса (от допълнително използване на квадратен корен) и аркускосинуса - след аркуссинус.

следния алгоритъм се използва за изчисляване аркустангенс:

  1. Първоначално отметка х. смените знака, като неотрицателно аргумент.
  2. Ако х> 1. я плати: x1 = 1 / х.
  3. Намаляване определяне област като се използва формулата: ATAN (х) = пи / 6 + ATAN ((х * SQRT (3) -1) / (х + SQRT (3))). Тук SQRT (3) 3. Необходимо е да се помни броя на стъпките (вероятно нула).
  4. Аркустангенса в интервала [0, пи / 12] е приблизително чрез (за единична точност двойна точност ако формулата е да се подобри!): Atan (х) = х * (0.55913709 / (1.4087812 + х 2) + 0.60310579-0.05160454 * х 2)
  5. Към получения резултат се добавя като пи / 6. колко съкращения са присъщи само на стъпки.
  6. В случай на лечение, аргумента, резултатът се изважда от пи / 2.
  7. Ако има промяна в знака, в резултат от промяна на знака.

За по-голяма точност, на мястото на формулата [0, пи / 12] трябва да се приема под формата:
ATAN (х) = х * (m0 + n0 * (х * х) + k0 / (m1 + n1 * (х * х) + k1 / (m2 + n2 * (х * х) + k2 / (.)) )),
т.е. в същата форма на верижна дроб, както и за единична точност, само с няколко други стойности m0, n0, k0; М1, N1, k1. Определяне на тези стойности ще бъдат посветени на задачата, което представлява специален случай на алгоритъма минимизиране функция на няколко променливи.

трябва да използвате връзка аркуссинус:
ASIN (х) = ATAN (х / SQRT (1-х 2)), където SQRT (х) - корен квадратен.
Аркускосинуса свързани с съотношение аркуссинус ACOS (х) = пи / 2-ASIN (х). За да се изчисли това, първо трябва да се използва аркуссинус. За двата случая е необходимо да се проследяват х = 1, х = 1 (когато е необходимо да се намери аркустангенса на безкрайност) и случаите на х извежда от областта, където се генерира грешка. В arcsin.c програма по-долу, използвайте НОРМАЛНИ литерали да покаже нормална работа и Едом да завърши с грешка.

Животът на програмиста, има случаи, когато трябва да конвертирате вътр до въглен и обратно. Тук бих искал да ви покажа някои полезни примери, Отори използвате sam.S / C ++ Включва: stdlib.h или math.hFunktsii: двойно atof (Чар * низ); вътр atoi (Чар ул *.

алгоритъм Евклид може да се разшири така, че не само ще даде GCD (а, Ь) = D, но също открива числа х и у, така че брадва + с = г. Psevdokod.NA входове: две неотрицателни числа а и б: а> = б на изхода: г = GCD (а, Ь) и цялата X, Y: брадва + с = d.1. Ако б = 0 поставени г: = А, X: = 1, Y: = 0, и връщане (D, X, Y) 2. Поз.

Първо, имайте предвид, че пръстен елемент Zn е обратимо, ако и само ако GCD (а, п) = 1. Това означава, че отговорът не е винаги. От определението на алгоритъма на обратен елемент трябва да се прави. PsevdokodNA ВХОДЯЩИЯ: и от Zn.NA Добив: обратно към пръстена и ако suschestvuet.1. Използвайте усъвършенстван алгоритъм Evk.

1. изчисли R - остатък на броя на разделяне в Ь, с = Bq + R, 0 <= r