Ackermann Funktion

Diskutiere Ackermann Funktion im Java Basics - Anfänger-Themen Forum; 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...

  1. Ricket
    Ricket Neues Mitglied
    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:

    Code (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
     
  2. Vielleicht hilft dir dieses Buch hier weiter.
  3. Tarrew
    Tarrew Aktives Mitglied
    Sowas?
    Code (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));
        }
     
  4. Ricket
    Ricket Neues Mitglied
    Vielen Dank.
    Da hätte ich auch selber drauf kommen können bzw müssen.

    Thread kann geschlossen werden.
     
  5. Wenn du Java lernen möchtest, empfehlen wir dir dieses Buch hier
Passende Stellenanzeigen aus deiner Region:





Die Seite wird geladen...

Ackermann Funktion - Ähnliche Themen

Mein Java Projekt funktioniert nicht
Mein Java Projekt funktioniert nicht im Forum Java Basics - Anfänger-Themen
Neuronales Netz funktioniert mal und mal nicht.
Neuronales Netz funktioniert mal und mal nicht. im Forum Allgemeine Java-Themen
Verändern von Objekteigenschaften mit Funktionen
Verändern von Objekteigenschaften mit Funktionen im Forum HTML / CSS / JScript / AJAX
Einlesen von Datei funktioniert nicht
Einlesen von Datei funktioniert nicht im Forum Java Basics - Anfänger-Themen
Umlaute in Eclipse einlesen funktioniert nicht
Umlaute in Eclipse einlesen funktioniert nicht im Forum Allgemeine Java-Themen
Thema: Ackermann Funktion

Besucher kamen mit folgenden Begriffen auf unsere Seite:

  1. ackermann funktion java