0

I need to make a power of a double base with an integer exponent without using any math. library but I get the error:

package potencia;

import java.util.Scanner;

public class Potencia {
int n=0;
double b=0,p=0, potencia=1;
Scanner entrada= new Scanner(System.in);

public static void main(String[] args) {
    int n=0;
    double b=0,p=0, potencia=1;
    Scanner entrada= new Scanner(System.in);

    System.out.println("Por favor ingrese la base de su potencia: ");
    b=entrada.nextDouble();

    System.out.println("Por favor ingrese el exponente de su     potencia");
    n=entrada.nextInt();
    for (int i=0; i<n; i++){
        potencia= potencia*b;
        }
    System.out.println("La potencia "+n+" de "+b+ " es: "+potencia);  

    }

Error:

Exception in thread "main" java.util.InputMismatchException at java.util.Scanner.throwFor(Scanner.java:864) at java.util.Scanner.next(Scanner.java:1485) at java.util.Scanner.nextFloat(Scanner.java:2345) at potencia.Potencia.main(Potencia.java:20) Java returned: 1

user207421
  • 305,947
  • 44
  • 307
  • 483

1 Answers1

0

I have removed redundant deceleration. Besides that everything is same.

package potencia;

import java.util.Scanner;

public class Potencia {

    public static void main(String[] args) {
        int n = 0;
        double b = 0, p = 0, potencia = 1;
        Scanner entrada = new Scanner(System.in);

        System.out.println("Por favor ingrese la base de su potencia: ");
        b = entrada.nextDouble();

        System.out.println("Por favor ingrese el exponente de su     potencia");
        n = entrada.nextInt();
        for (int i = 0; i < n; i++) {
            potencia = potencia * b;
        }
        System.out.println("La potencia " + n + " de " + b + " es: " + potencia);

    }

}

Output:

Por favor ingrese la base de su potencia: 
5.2
Por favor ingrese el exponente de su     potencia
2
La potencia 2 de 5.2 es: 27.040000000000003
Yoshikage Kira
  • 1,070
  • 1
  • 12
  • 20