C/acos: Różnice pomiędzy wersjami

Usunięta treść Dodana treść
literówki
Linia 66:
 
== Opis ==
 
 
Funkcje liczą wartości odpowiednich funkcji matematycznych zgodnie z ich nazwą:
Linia 77 ⟶ 76:
* <tt>tan</tt> - tangens argumentu.
 
Przyrostki :
 
* Funkcje z przyrostkami "f" i "l" to inne wersje odpowiedniej funkcji bez przyrostka operujące na innych typach danych. Z tego powodu w poniższym opisie odwołanie do konkretnej funkcji będzie oznaczać odwołanie się do wszystkich 3 werji. Wersje funkcji z przyroskiemprzyrostkiem "f" i "l" (tzn. wersje operujące na zmiennych typu float i long double) zostały wprwoadzonewprowadzone dopiero w standardzie C99.
 
Przyrostki :
* Funkcje z przyrostkami "f" i "l" to inne wersje odpowiedniej funkcji bez przyrostka operujące na innych typach danych. Z tego powodu w poniższym opisie odwołanie do konkretnej funkcji będzie oznaczać odwołanie się do wszystkich 3 werji. Wersje funkcji z przyroskiem "f" i "l" (tzn. wersje operujące na zmiennych typu float i long double) zostały wprwoadzone dopiero w standardzie C99.
* Funkcje z przyrostkiem "h" obliczają wartości analogicznych [[w:Funkcje hiperboliczne|funkcji hiperbolicznych]] i [[w:Funkcje hiperboliczne odwrotne|funkcji area]].
 
Linia 88 ⟶ 85:
Jeżeli wartości argumentu <tt>x</tt> jest spoza przedziału <tt><nowiki>[-1; 1]</nowiki></tt> funkcje acos i asin zwracają nieokreśloną wartość na zmienna [[C/errno|errno]] ustawiona jest na [[C/EDOM|EDOM]]. Podobnie, jeżeli argumenty <tt>a</tt> i <tt>b</tt> są jednocześnie równe 0 funkcja atan2 ustawia zmienną errno na EDOM.
 
== Wartość zwracana ( ang. output)==
Wartości odpowiednich funkcji matematycznych. Dodatkowo, dla arcusów funkcji trygonometrycznych zakres zwracanych wartości jest ograniczony. Dla funkcji:
* acos jest to przedział <tt><nowiki>[0; &Pi;]</nowiki></tt>,
Linia 95 ⟶ 92:
* atan2 jest to przedział <tt><nowiki>[-&Pi;; &Pi;]</nowiki></tt>.
 
Ponadto, jeżeli wystąpi nadmairnadmiar, funkcja zwraca w wyniku [[C/HUGE_VAL|HUGE_VAL]] z odpowiednim znakiem i ustawia wartość zmeinnejzmiennej errno na [[C/ERANGE|ERANGE]]. Jeśli wystąpi niedomiar funkcja w wyniku zwraca zero, a to czy do zmiennej errno zostanie zapisana wartość ERANGE zależy od implementacji.
 
==Jak używać ==
* dyrektywa <code>#include <math.h></code>
* opcja kompilacji <code>-lm</code>
 
 
W przypadku użycia funkcji matematycznych może zaistnieć konieczność podania odpowiedneigoodpowiedniego argumentu linkerowi, aby ten połączył program z biblioteką matematyczną. Np. na systemach GNU/Linux jest to <ttcode>-lm</ttcode>.
== Przykłady ==
<source lang="c">
Linia 133 ⟶ 130:
</source>
 
Funkcja atan2:<source lang=c>
 
 
 
Funkcja atan2 :
 
<source lang=c>
#include <stdio.h>
#include <math.h>
Linia 175 ⟶ 167:
</source>
 
wynik :
 
wynik :
 
<pre>
Linia 190 ⟶ 181:
atan2 of point (x,y) = (1.0, -1.0) is atan2(y,x) = -0.785398
atan2 of point (x,y) = (1.0, -0.1) is atan2(y,x) = -0.099669
 
</pre>
 
== ŻródłaŹródła ==
<references/>