std::tan, std::tanf, std::tanl
Definido en el archivo de encabezado <cmath> | ||
(1) | ||
float tan (float arg ); | ||
float tanf(float arg ); | (desde C++11) | |
double tan (double arg ); | (2) | |
(3) | ||
longdouble tan (longdouble arg ); | ||
longdouble tanl(longdouble arg ); | (desde C++11) | |
double tan ( TipoEntero arg ); | (4) | (desde C++11) |
arg
(medida en radianes).Contenido |
[editar]Parámetros
arg | - | Valor que representa el ángulo en radianes de un tipo de punto flotante o un tipo entero. |
[editar]Valor de retorno
Si no se producen errores, se devuelve la tangente de arg
(tan(arg)).
El resultado puede tener poca o ninguna importancia si la magnitud de | (hasta C++11) |
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).
[editar]Manejo de errores
Los errores se informan como se especifica en math_errhandling.
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 el argumento es +∞ o -∞, se devuelve NaN y se genera FE_INVALID.
- Si el argumento es NaN, se devuelve NaN.
[editar]Notas
El caso en el que el argumento es infinito no se especifica como un error de dominio en C (al que difiere C++), pero se define como un error de dominio en POSIX.
La función tiene polos matemáticos en π(1/2 + n); sin embargo, ninguna representación de punto flotante común puede representar π/2 exactamente, por lo que no hay valor del argumento por el cual se produce un error de polo.
[editar]Ejemplo
#include <iostream>#include <cmath>#include <cerrno>#include <cfenv> #pragma STDC FENV_ACCESS ONconstdouble pi =std::acos(-1);int main(){// uso típicostd::cout<<"tan (pi/4) = "<< std::tan( pi/4)<<'\n'// 45 grados<<"tan(3*pi/4) = "<< std::tan(3*pi/4)<<'\n'// 135 grados<<"tan(5*pi/4) = "<< std::tan(5*pi/4)<<'\n'// -135 grados<<"tan(7*pi/4) = "<< std::tan(7*pi/4)<<'\n';// -45 grados// valores especialesstd::cout<<"tan(+0) = "<< std::tan(0.0)<<'\n'<<"tan(-0) = "<< std::tan(-0.0)<<'\n';// manejo de erroresstd::feclearexcept(FE_ALL_EXCEPT);std::cout<<"tan(INFINITY) = "<< std::tan(INFINITY)<<'\n';if(std::fetestexcept(FE_INVALID))std::cout<<" Se generó FE_INVALID\n";}
Posible salida:
tan (pi/4) = 1 tan(3*pi/4) = -1 tan(5*pi/4) = 1 tan(7*pi/4) = -1 tan(+0) = 0 tan(-0) = -0 tan(INFINITY) = -nan Se generó FE_INVALID
[editar]Véase también
(C++11)(C++11) | Calcula el seno (sin(x)) (función) |
(C++11)(C++11) | Calcula el coseno (cos(x)) (función) |
(C++11)(C++11) | Calcula el arco tangente (arctan(x)) (función) |
Calcula la tangente de un número complejo (tan(z)). (plantilla de función) | |
se aplica la std::tan función a cada elemento de valarray Original: applies the function std::tan 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) | |
Documentación de C para tan |