Funktionen asin () returnerer bue sinus (invers sinus) for et tal i radianer.
Den asin()
funktion tager et enkelt argument (1 ≧ x ≧ -1), og returnerer den inverse sinus i radianer.
Den asin()
funktion er inkluderet i header fil.
asin () Prototype
dobbelt asin (dobbelt x);
For at finde buesinus af typen int
, float
eller long double
, kan du eksplicit konvertere typen til double
ved hjælp af cast-operator.
int x = 0; dobbelt resultat; resultat = asin (dobbelt (x));
Der blev også introduceret to funktioner asinf () og asinl () i C99 for at arbejde specifikt med henholdsvis type float
og type long double
.
flyde asinf (flyde x); lang dobbelt asinl (lang dobbelt x);
asin () Parameter
Den asin()
funktion tager et enkelt argument i intervallet (-1, +1). Det er fordi værdien af sinus er i området 1 og -1.
Parameter | Beskrivelse |
---|---|
dobbelt værdi | Påkrævet. En dobbelt værdi mellem - 1 og +1 inklusive. |
asin () Return Value
De asin()
funktioner returnerer værdien i intervallet (-π / 2, + n / 2) i radianer. Hvis parameteren, der sendes til asin()
funktionen, er mindre end -1 eller større end 1, returnerer funktionen NaN (ikke et tal).
Parameter (x) | Returneringsværdi |
---|---|
x = (-1, +1) | (-π / 2, + π / 2) i radianer |
-1> x eller x> 1 | NaN (ikke et tal) |
Eksempel 1: funktion asin () med forskellige parametre
#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; )
Produktion
Omvendt for synd (-0,50) = -0,52 i radianer Omvendt for synd (-0,50) = -30,00 i grader Omvendt for synd (1,20) = nan
Eksempel 2: funktion asinf () og 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; )
Produktion
asinf (x) = -0,529851 i radianer asinl (x) = -0,529852 i radianer