◐ Shell
clean mode source ↗

std::asin, std::asinf, std::asinl - cppreference.com

De cppreference.com

</tbody> <tbody class="t-dcl-rev t-dcl-rev-num "> </tbody><tbody> </tbody> <tbody class="t-dcl-rev t-dcl-rev-num "> </tbody><tbody>

Definido en el archivo de encabezado <cmath>

(1)

float asin ( float arg );

float asinf( float arg );

(desde C++11)

double asin ( double arg );

(2)
(3)

long double asin ( long double arg );

long double asinl( long double arg );

(desde C++11)

double asin ( TipoEntero arg );

(4) (desde C++11)

1-3) Calcula el valor principal del arco seno de arg.

4) Un conjunto de sobrecargas o una plantilla de función que acepta un argumento de cualquier tipo entero. Equivalente a (2) (el argumento se convierte a double).

Parámetros

arg - Valor de un tipo de punto flotante o un tipo entero.

Valor de retorno

Si no se producen errores, se devuelve el arco seno de arg (arcsin(arg)) en el rango

[- , +]

.

Si se produce un error de dominio, se devuelve un valor definido por la implementación (NaN donde se dé apoyo).

Si se produce un error debido a subdesbordamiento, se devuelve el resultado correcto (después del redondeo).

Manejo de errores

Los errores se informan como se especifica en math_errhandling.

Se produce un error de dominio si arg está fuera del rango [-1.0, 1.0]

Si la implementación admite la aritmética de punto flotante IEEE (IEC 60559),

  • Si el argumento es +0 o -0, se devuelve +0 o -0, respectivamente.
  • Si |arg| > 1, se produce un error de dominio y se devuelve NaN.
  • Si el argumento es NaN, se devuelve NaN.

Ejemplo

#include <cmath>
#include <iostream>
#include <cerrno>
#include <cfenv>
#include <cstring>

#pragma STDC FENV_ACCESS ON
int main()
{
    std::cout << "asin(1.0) = " << asin(1) << '\n'
              << "2*asin(1.0) = " << 2*asin(1) << '\n'
              << "asin(-0.5) = " << asin(-0.5) << '\n'
              << "6*asin(-0.5) =" << 6*asin(-0.5) << '\n';
    // valores especiales
    std::cout << "asin(0.0) = " << asin(0) << " asin(-0.0)=" << asin(-0.0) << '\n';
    // manejo de errores
    errno = 0;
    std::feclearexcept(FE_ALL_EXCEPT);
    std::cout << "asin(1.1) = " << asin(1.1) << '\n';
    if (errno == EDOM)
        std::cout << "    errno == EDOM: " << std::strerror(errno) << '\n';
    if (std::fetestexcept(FE_INVALID))
        std::cout << "    Se generó FE_INVALID" << '\n';
}

Posible salida:

asin(1.0) = 1.5708
2*asin(1.0) = 3.14159
asin(-0.5) = -0.523599
6*asin(-0.5) = -3.14159
asin(0.0) = 0 asin(-0.0)=-0
asin(1.1) = nan
    errno == EDOM: Argumento numérico fuera de dominio
    Se generó FE_INVALID

Véase también

(C++11)(C++11)

Calcula el arco coseno (arccos(x))
(función) [editar]

(C++11)(C++11)

Calcula el arco tangente (arctan(x))
(función) [editar]

(C++11)(C++11)

El arco tangente, usando signos para determinar cuadrantes.
(función) [editar]

(C++11)(C++11)

Calcula el seno (sin(x))
(función) [editar]
Calcula el arco seno de un número complejo (arcsin(z)).
(plantilla de función) [editar]

se aplica la std::asin función a cada elemento de valarray

Original:

applies the function std::asin to each element of valarray

The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.


(plantilla de función) [editar]