Funkce asin () vrací sinus oblouku (inverzní sinus) čísla v radiánech.
asin()
Funkce má jediný parametr (1 ≧ x ≧ 1), a vrací arkussinus v radiánech.
asin()
Funkce je zahrnuta v záhlaví souboru.
asin () Prototyp
dvojitý asin (dvojitý x);
Chcete-li najít sinusový oblouk typu int
, float
nebo long double
můžete explicitně převést typ na double
operátor přetypování.
int x = 0; dvojitý výsledek; result = asin (double (x));
Také dvě funkce asinf () a asinl () byly zavedeny v C99 do práce zejména s typem float
a long double
v tomto pořadí.
float asinf (float x); dlouhý dvojitý asinl (dlouhý dvojitý x);
asin () Parametr
asin()
Funkce má jediný parametr v rozsahu (-1, +1). Je to proto, že hodnota sinu je v rozsahu 1 a -1.
Parametr | Popis |
---|---|
dvojnásobná hodnota | Požadované. Dvojitá hodnota mezi - 1 a +1 včetně. |
asin () návratová hodnota
Tyto asin()
funkce vrací hodnotu v rozmezí od (-π / 2, + n / 2) v radiánech. Pokud je parametr předaný asin()
funkci menší než -1 nebo větší než 1, vrátí funkce NaN (ne číslo).
Parametr (x) | Návratová hodnota |
---|---|
x = (-1, +1) | (-π / 2, + π / 2) v radiánech |
-1> x nebo x> 1 | NaN (ne číslo) |
Příklad 1: funkce asin () s různými parametry
#include #include int main() ( // constant PI is defined const double PI = 3.1415926; double x, result; x = -0.5; result = asin(x); printf("Inverse of sin(%.2f) = %.2lf in radians", x, result); // converting radians to degree result = asin(x)*180/PI; printf("Inverse of sin(%.2f) = %.2lf in degrees", x, result); // paramter not in range x = 1.2; result = asin(x); printf("Inverse of sin(%.2f) = %.2lf", x, result); return 0; )
Výstup
Inverze hříchu (-0,50) = -0,52 v radiánech Inverze hříchu (-0,50) = -30,00 ve stupních Inverze hříchu (1,20) = nan
Příklad 2: funkce asinf () a asinl ()
#include #include int main() ( float fx, fasinx; long double lx, ldasinx; // arc sinine of type float fx = -0.505405; fasinx = asinf(fx); // arc sinine of type long double lx = -0.50540593; ldasinx = asinf(lx); printf("asinf(x) = %f in radians", fasinx); printf("asinl(x) = %Lf in radians", ldasinx); return 0; )
Výstup
asinf (x) = -0,529851 v radiánech asinf (x) = -0,529852 v radiánech