A função asin () retorna o arco seno (seno inverso) de um número em radianos.
A asin()
função recebe um único argumento (1 ≧ x ≧ -1) e retorna o arco seno em radianos.
A asin()
função está incluída no arquivo de cabeçalho.
protótipo asin ()
duplo asin (duplo x);
Para localizar o arco seno do tipo int
, float
ou long double
, você pode converter explicitamente o tipo double
usando o operador de conversão .
int x = 0; resultado duplo; resultado = asin (double (x));
Além disso, duas funções asinf () e asinl () foram introduzidas no C99 para trabalhar especificamente com type float
e long double
respectivamente.
float asinf (float x); long double asinl (long double x);
Parâmetro asin ()
A asin()
função aceita um único argumento no intervalo de (-1, +1). É porque o valor de seno está na faixa de 1 e -1.
Parâmetro | Descrição |
---|---|
valor duplo | Requeridos. Um valor duplo entre - 1 e +1 inclusive. |
asin () Valor de Retorno
A asin()
função retorna o valor no intervalo de (-π / 2, + π / 2) em radianos. Se o parâmetro passado para a asin()
função for menor que -1 ou maior que 1, a função retornará NaN (não um número).
Parâmetro (x) | Valor de retorno |
---|---|
x = (-1, +1) | (-π / 2, + π / 2) em radianos |
-1> x ou x> 1 | NaN (não é um número) |
Exemplo 1: função asin () com parâmetros diferentes
#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; )
Resultado
Inverso de sin (-0,50) = -0,52 em radianos Inverso de sin (-0,50) = -30,00 em graus Inverso de sin (1,20) = nan
Exemplo 2: função asinf () e 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; )
Resultado
asinf (x) = -0,529851 em radianos asinl (x) = -0,529852 em radianos