Funkcia asin () vráti oblúkový sínus (inverzný sínus) čísla v radiánoch.
asin()
Funkcia má jediný parameter (1 ≧ x ≧ 1), a vracia arkussínus v radiánoch.
Táto asin()
funkcia je zahrnutá v hlavičkovom súbore.
asin () prototyp
dvojitý asin (dvojitý x);
Ak chcete nájsť sínusový oblúk typu int
, float
alebo long double
, môžete typ explicitne previesť na double
pomocou operátora cast.
int x = 0; dvojitý výsledok; výsledok = asin (double (x));
Tiež dve funkcie asinf () a asinl () boli zavedené v C99 do práce najmä s typom float
a long double
v tomto poradí.
float asinf (float x); dlhý dvojitý asinl (dlhý dvojitý x);
asin () Parameter
asin()
Funkcia má jediný parameter v rozsahu (-1, +1). Je to preto, lebo hodnota sínusu je v rozmedzí od 1 do -1.
Parameter | Popis |
---|---|
dvojnásobná hodnota | Požadovaný. Dvojitá hodnota medzi - 1 a +1 vrátane. |
návratová hodnota asin ()
Tieto asin()
funkcie vracia hodnotu v rozmedzí od (-π / 2, + n / 2) v radiánoch. Ak je parameter odovzdaný asin()
funkcii menší ako -1 alebo väčší ako 1, funkcia vráti NaN (nie číslo).
Parameter (x) | Návratová hodnota |
---|---|
x = (-1; +1) | (-π / 2, + π / 2) v radiánoch |
-1> x alebo x> 1 | NaN (nie číslo) |
Príklad 1: funkcia asin () s rôznymi parametrami
#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ýkon
Inverzia hriechu (-0,50) = -0,52 v radiánoch Inverzia hriechu (-0,50) = -30,00 v stupňoch Inverzia hriechu (1,20) = nan
Príklad 2: funkcia 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ýkon
asinf (x) = -0,529851 v radiánoch asinl (x) = -0,529852 v radiánoch