abdominales
1) LOGARITMOS EN CUALQUIER BASE.
Los logaritmos naturales son muy útiles, pero a menudo es necesario utilizar otras bases. Son comunes, por ejemplo, la base 2 o labase 10.
Una propiedad de los logaritmos nos dice que el logaritmo de un número x en una base b puede ser calculado como el logaritmo en una base cualquiera de x partido porel logaritmo en esa misma base de b.
Es decir,
Siendo k una base cualquiera... la que tengamos más a mano.
C# sí dispone de un método en la clase Math para obtenerlogaritmos en cualquier base. No obstante, podemos construirlo utilizando la igualdad de arriba, escogiendo e como esa base cualquiera k.
1
2
3
4
5
6
//Logaritmo de x enbase b
public static double
LogaritmoEnCualquierBase(double x, double b)
{
return Math.Log(x) / Math.Log(b);
}
2) POTENCIAS DE CUALQUIER EXPONENTEAprovechando una curiosa propiedad de los logaritmos, podemos calcular una potencia de cualquier base x y cualquier exponente y... es decir, xy.
Si llamamos k al número x elevado a y.k=xy
Podemos tomar logaritmos (en cualquier base, pero nos viene bien e) en ambas partes de la expresión y manipular un poco:
ln(k)=ln(xy)
ln(k)=ln(x)yln(k)=y · ln(x)
eln(k)=ey·ln(x)
y podemos concluir que
k=ey·ln(x)
Así pues, podemos construir una función que aproveche ésta última conclusion para obtener unapotencia a partir de logaritmos y la exponenciación de e. Nuevamente, C# dispone de un método para hallar cualquier potencia en la clase Math... pero si tuvieramos que construiruno, podría ser así:
1
2
3
4
5
6
//Potencia de x elevado a y
public static double
Potencia(double x, double y)
{
return Math.Exp(y * Math.Log(x));
}
Regístrate para leer el documento completo.