std::log10, std::log10f, std::log10l
De cppreference.com
Definido en el archivo de encabezado <cmath>
|
||
(1) | ||
float log10 ( float arg ); |
||
float log10f( float arg ); |
(desde C++11) | |
double log10 ( double arg ); |
(2) | |
(3) | ||
long double log10 ( long double arg ); |
||
long double log10l( long double arg ); |
(desde C++11) | |
double log10 ( TipoEntero arg ); |
(4) | (desde C++11) |
1-3) Calcula el logaritmo común (base 10) 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).
Contenido |
[editar] Parámetros
arg | - | Valor de un tipo de punto flotante o un tipo entero. |
[editar] Valor de retorno
Si no se producen errores, el logaritmo común (base 10) de arg
(log
10(arg) o lg(arg)).
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 de polo, se devuelve -HUGE_VAL, -HUGE_VALF
, o -HUGE_VALL
.
[editar] Manejo de errores
Los errores se informan como se especifica en math_errhandling.
Se produce un error de dominio si arg
es menor que cero.
Se puede producir un error de polo si arg
es cero.
Si la implementación admite la aritmética de punto flotante IEEE (IEC 60559):
- Si el argumento es + 0 o -0, se devuelve -∞ y se genera FE_DIVBYZERO.
- Si el argumento es 1, se devuelve +0.
- Si el argumento es negativo, se devuelve NaN y se genera FE_INVALID.
- Si el argumento es +∞, se devuelve +∞.
- Si el argumento es NaN, se devuelve NaN.
[editar] Ejemplo
Ejecuta este código
#include <iostream> #include <cmath> #include <cerrno> #include <cstring> #include <cfenv> // #pragma STDC FENV_ACCESS ON int main() { std::cout << "log10(1000) = " << std::log10(1000) << '\n' << "log10(0.001) = " << std::log10(0.001) << '\n' << "base-5 logarithm of 125 = " << std::log10(125)/std::log10(5) << '\n'; // valores especiales std::cout << "log10(1) = " << std::log10(1) << '\n' << "log10(+Inf) = " << std::log10(INFINITY) << '\n'; // manejo de errores errno = 0; std::feclearexcept(FE_ALL_EXCEPT); std::cout << "log10(0) = " << std::log10(0) << '\n'; if (errno == ERANGE) std::cout << " errno == ERANGE: " << std::strerror(errno) << '\n'; if (std::fetestexcept(FE_DIVBYZERO)) std::cout << " Se generó FE_DIVBYZERO\n"; }
Posible salida:
log10(1000) = 3 log10(0.001) = -3 base-5 logarithm of 125 = 3 log10(1) = 0 log10(+Inf) = inf log10(0) = -inf errno == ERANGE: Resultado numérico fuera de rango Se generó FE_DIVBYZERO
[editar] Véase también
(C++11)(C++11) |
Calcula el logaritmo natural (base e) (ln(x)) (función) |
(C++11)(C++11)(C++11) |
Logaritmo de base 2 del número dado (log2(x)) (función) |
(C++11)(C++11)(C++11) |
Logaritmo natural (a base e) de 1 más el número dado (ln(1+x)) (función) |
Logaritmo común complejo con los cortes de ramificaciones a lo largo del eje real negativo. (plantilla de función) | |
se aplica la std::log10 función a cada elemento de valarray Original: applies the function std::log10 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 log10
|