Функцията asin () връща синуса на дъгата (обратния синус) на число в радиани.
На asin()
функцията се един аргумент (1 х ≧ ≧ 1), и се връща на дъга синус в радиани.
На asin()
функцията е включена в заглавния файл.
asin () Прототип
двоен асин (двоен х);
За да намерите дъгови синус от тип int
, float
или long double
можете изрично да конвертирате типа в double
използване на оператор за гласове.
int x = 0; двоен резултат; резултат = asin (двойно (x));
Също така, две функции asinf () и asinl () бяха въведени в C99, за да работят конкретно с тип float
и long double
съответно.
float asinf (float x); дълъг двоен асинл (дълъг двоен х);
asin () Параметър
На asin()
функцията се един аргумент в диапазона от (1, 1). Това е така, защото стойността на синуса е в диапазона 1 и -1.
Параметър | Описание |
---|---|
двойна стойност | Задължително. Двойна стойност между - 1 и +1 включително. |
asin () Върната стойност
На asin()
функции връща стойност в диапазон от (-π / 2 + пи / 2) в радиани. Ако параметърът, предаден на asin()
функцията, е по-малък от -1 или по-голям от 1, функцията връща NaN (не число).
Параметър (x) | Върната стойност |
---|---|
x = (-1, +1) | (-π / 2, + π / 2) в радиани |
-1> x или x> 1 | NaN (не число) |
Пример 1: функция asin () с различни параметри
#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; )
Изход
Обратно на греха (-0,50) = -0,52 в радиани Обратно на греха (-0,50) = -30,00 в градуси Обратно на греха (1,20) = нан
Пример 2: asinf () и 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; )
Изход
asinf (x) = -0,529851 в радиани asinl (x) = -0,529852 в радиани