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) | ||
long double tan ( long double arg ); |
||
long double tanl( long double arg ); |
(desde C++11) | |
double tan ( TipoEntero arg ); |
(4) | (desde C++11) |
arg (medida en radianes).double).Parámetros
| arg | - | Valor que representa el ángulo en radianes de un tipo de punto flotante o un tipo entero. |
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).
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.
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.
Ejemplo
#include <iostream>
#include <cmath>
#include <cerrno>
#include <cfenv>
#pragma STDC FENV_ACCESS ON
const double pi = std::acos(-1);
int main()
{
// uso típico
std::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 especiales
std::cout << "tan(+0) = " << std::tan(0.0) << '\n'
<< "tan(-0) = " << std::tan(-0.0) << '\n';
// manejo de errores
std::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
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
| |