ich versuche gerade eigenständig drauf zu kommen wie ich die rekursive Variante der Fakultätsfunktion mache.
Mein Programm soll den eigegeben Parameter für n nehmen und von n dann die Fakultät also n! berechnen.
Leider scheitere ich an dem Programmgerüst irgendwie.
Ich möchte dann auch, dass das Ergebnis oder die zwischenschritte mit einem einfachen System.out.println() ausgegeben werden.
Leider kann ich aber nur innerhalb der Methode "public static void main(String[] args)" diesen Befehl zur ausgabe nutzen.
Und ich habe das Problem, dass meine Klasse FunktionRekursiv nicht weiß was n für ein Parameter ist.
Wie muss ich das denn machen damit es funktioniert?
du scheiterst daran, dass java keine nested functions unterstützt. Deine fakultätsfunktion muss neben der main stehen, nicht in der main.
Ich möchte dann auch, dass das Ergebnis oder die zwischenschritte mit einem einfachen System.out.println() ausgegeben werden.
Leider kann ich aber nur innerhalb der Methode "public static void main(String[] args)" diesen Befehl zur ausgabe nutzen.
Fakultät ist eine klassische mathematische funktion, die frei von jeglichen Einstellungen und Konfigurationsmöglichkeiten einer natürlichen Zahl n eine andere natürliche Zahl n! zuordnet. Warum um Goslings Willen willst du bei jedem Aufruf einer solchen Funktion den Stack mit irgendwelchen Objekt-Instanzen vollstopfen? ???:L
Wie, was? Wie lautete die fehlermeldung? Bzw. imho dürfte es da keine Fehlermeldungen geben, denn dein ursprünglicher code ist eigentlich ok, er tut nur nichts, weil du die methode nicht aufrufst.
Ich ging davon aus, dass er den Zusammenhang von Main zu Geltungsbereich der instanzen ect. nicht verstanden hat. Daher habe ich eine Instanz in der main erzeugt.
Im RealLife hast du natürlich recht. Da programmiert man aber Fakultät nicht neu
Jetzt hab ich nochmal ne Frage und zwar soll meine Funktion den größten gemeinsamen Teiler berechnen.
Allerdings tut sie das irgendwie fehlerhaft. Ich finde aber meinen Fehler nicht.
Das Fehler auf Folien sind kommt immer mal vor, dass hat wenig mit der Qualität deiner Uni zu tun. Ab und an sollte man halt mal selbst prüfen ob das was auf den Folien steht stimmt oder eben nicht.