Hoy veremos cómo elevar un número a determinada potencia en Java, algo que es realmente sencillo. Vamos a ver cómo elevar un número al cuadrado o elevar un número al cubo en Java.
A partir de esto vamos a elevar el número a otras potencias; a esto también se le conoce como exponenciación.
Exponenciar número en Java (elevar a potencia)
Para exponenciar números en Java utilizamos la función estática pow
de la clase Math
en Java. Veamos cómo elevar un número al cuadrado:
class Main {
public static void main(String[] args) {
double numero = 11;
double cuadrado = Math.pow(numero, 2);
System.out.println("11 elevado al cuadrado es " + cuadrado);
}
}
En este caso exponenciamos el número 11 a la potencia 2, es decir, al cuadrado. La salida es:
11 elevado al cuadrado es 121.0
Lo mismo se puede hacer para obtener el cubo de un número en Java. Simplemente cambiamos la potencia, ya que ahora se eleva a la potencia 3:
class Main {
public static void main(String[] args) {
double numero = 11;
double cubo = Math.pow(numero, 3);
System.out.println("11 elevado al cubo es " + cubo);
}
}
La salida para este caso es:
11 elevado al cubo es 1331.0
Otras potencias
A partir de lo visto anteriormente podemos decir que se puede elevar cualquier número a cualquier potencia utilizando simplemente la función llamada pow que existe dentro de Math.
Por ejemplo, así se hace para sacar la potencia 32 de 2:
class Main {
public static void main(String[] args) {
double numero = 2;
double elevado = Math.pow(numero, 32);
System.out.println("El 2 elevado a la potencia 32 es " + elevado);
}
}
Te invito a leer más sobre Java en mi blog.
Por qué es necesario que la variable que contiene el resultado de la potencia sea double? Es decir, si elevo cualquier numero entero a una potencia entera el resultado no tendrá decimales, al igual que los ejemplos de este post, entonces por que es necesario declarar como double?
Es porque la función devuelve un double. Aquí hay otras respuestas: https://stackoverflow.com/questions/23326902/why-does-math-powx-y-count-as-a-double
Saludos!
buena me ayduaste