Potenz ausrechnen Hilfe!

Funktionierdochmal

Bekanntes Mitglied
Hi
Java:
import java.util.Scanner;

public class potenzens {

    public static void main(String[] args) {
        Scanner scanner = new Scanner (System.in);
       
        int basis = scanner.nextInt();
        int exponent = scanner.nextInt();
       
        while (exponent > basis) {
            System.out.println("sicher? (j/n)");
            String auswahl = scanner.nextLine();
           
            if (auswahl.equals("n")) {
                exponent = scanner.nextInt();
                break;
             
            } else if (auswahl.equals("j")) {
                break;
            }
        }
   
        int ergebnis = berechne(basis, exponent);
       
        System.out.println(ergebnis);
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
        scanner.close();
    }
   
    public static int berechne(int basis, int exponent) {
        int ergebnis = 0;
        for (int i = 1; i <= exponent; i++) {
            ergebnis = basis * basis;
        }
        return ergebnis;
    }

}

Was mache ich bei der Berechnung meiner Potenz im Unterprogramm falsch? Und wieso bekomme ich diese Ausgabe?
4
5
sicher? (j/n)
sicher? (j/n)
n
6
16
 
Java:
public static int berechne(int basis, int exponent) {
  int ergebnis = 1;
  for (int i = 0; i < exponent; i++)
    ergebnis *= basis;
  return ergebnis;
}
 
Java:
import java.util.Scanner;

public class potenzens {

    public static void main(String[] args) {
        Scanner scanner = new Scanner (System.in);
       
        int basis = scanner.nextInt();
        int exponent = scanner.nextInt();
       
        while (exponent > basis) {
            System.out.println("Sicher= J N ");
            String auswahl = scanner.nextLine();
           
            if (auswahl == "j") {
                break;
            } else {
                exponent = scanner.nextInt();
            }
        }
   
       
       
       
       
       
       
       
       
       
        int ergebnis = berechne(basis, exponent);
       
        System.out.println(ergebnis);
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
        scanner.close();
    }
   
    public static int berechne(int basis, int exponent) {
        int ergebnis = basis;
        for (int i = 1; i < exponent; i++) {
            ergebnis *= basis;
        }
        return ergebnis;
    }

}


4
5
Sicher= J N
j
Exception in thread "main" java.util.InputMismatchException
at java.base/java.util.Scanner.throwFor(Unknown Source)
at java.base/java.util.Scanner.next(Unknown Source)
at java.base/java.util.Scanner.nextInt(Unknown Source)
at java.base/java.util.Scanner.nextInt(Unknown Source)
at potenzens.main(potenzens.java:18)

Warum ist der neue exponent ein InputMismatch?
 

Zurück
Oben