Ackermann Funktion

Bitte aktiviere JavaScript!
Guten Tag,
in meinem Studium muss ich mich jetzt auch mit Java auseinandersetzen und was soll ich sagen. Es fällt mir sehr sehr schwer.
Für diese Woche muss ich eine Java-Methode für die Ackermann-Funktion mit BigInteger schreiben.

So sieht mein Code bisher aus:

Java:
import java.math.BigInteger;

class MyAckermann {
    private static BigInteger ackermann(BigInteger x, BigInteger y)
    {
   
        if  (y.equals(BigInteger.ZERO)) {
            return BigInteger.ZERO;
        }
       
        else if (x.equals(BigInteger.ZERO)) {
            return y.add(y);
           
        }
        else if (y.equals(BigInteger.ONE)) {
            return BigInteger.ONE.add(BigInteger.ONE);
        }
            else {
                return(ackermann(x.subtract(BigInteger.ONE),ackermann( x, y.subtract(BigInteger.ONE))));
            }
    }
   
    public static void main(String[] args) {
        System.out.println(ackermann(BigInteger.ONE,BigInteger.TEN));
    }
}
Der läuft auch und tut was er soll.
Allerdings möchte ich die Eingabe in der main so gestalten, dass man manuelle Werte eingibt, die berechnet werden sollen.
Allerdings stehe ich da gerade echt auf dem Schlauch,wie ich das mit BigInteger machen kann.

Ich würde mich sehr freuen, wenn mir da jemand helfen kann.

mfg

Ricket
 
A

Anzeige




Schau mal hier —> (hier klicken)
Sowas?
Java:
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);

        System.out.print("Erster Wert: ");
        BigInteger b1 = BigInteger.valueOf(sc.nextInt());
        sc.nextLine();

        System.out.print("Zweiter Wert: ");
        BigInteger b2 = BigInteger.valueOf(sc.nextInt());

        System.out.println(ackermann(b1, b2));
    }
 
A

Anzeige




Vielleicht hilft dir das hier weiter: (klicke hier)
Passende Stellenanzeigen aus deiner Region:

Neue Themen

Oben