mR.fLopPy
Erfahrenes Mitglied
Hallo Leute!
Ich stehe hier vor einem kleinen Problem. Ich habe eine Aufgabenstellung bekommen wo es gilt eine beliebige Zahl vertikal darzustellen. Das Beispiel gilt es natürlich als Rekursion darzustellen und bei mir scheitert es daran dass nur die letzte Zahl ausgegeben wird.
Beispielsweise lese ich 123 aus dann müsste als Lösung folgendes hier stehen:
1
2
3
Ich habe versucht es mittles Modula 10 u. div. 10 zu lösen.
Mein Lösungsgedanke ist jener, dass wenn die Funktion an der letzten Stelle angekommen ist, kann die letzte Zahl nicht größer als 9 sein, dann sollte diese Zahl zurückgegeben werden und es müsste der Rest der Zahl beachtet werden - sprich 23 und die Funktion mit dieser Zahl erneut alles durchlaufen.
Ich komme aber nicht auf den Punkt wie ich das machen kann, denn bei diesem Beispiel bekomme ich nur die 1. Zahl nämlich 1. Ein kleiner Tipp wäre hilfreich.
Ich stehe hier vor einem kleinen Problem. Ich habe eine Aufgabenstellung bekommen wo es gilt eine beliebige Zahl vertikal darzustellen. Das Beispiel gilt es natürlich als Rekursion darzustellen und bei mir scheitert es daran dass nur die letzte Zahl ausgegeben wird.
Beispielsweise lese ich 123 aus dann müsste als Lösung folgendes hier stehen:
1
2
3
Ich habe versucht es mittles Modula 10 u. div. 10 zu lösen.
Code:
main
System.out.Println(writeVertical(123));
static int writeVertical(int n) {
int ganzzahl = n / 10;
if(ganzzahl <= 9) {
return ganzzahl; }
else {
return writeVertical(ganzahl);
}
}
Mein Lösungsgedanke ist jener, dass wenn die Funktion an der letzten Stelle angekommen ist, kann die letzte Zahl nicht größer als 9 sein, dann sollte diese Zahl zurückgegeben werden und es müsste der Rest der Zahl beachtet werden - sprich 23 und die Funktion mit dieser Zahl erneut alles durchlaufen.
Ich komme aber nicht auf den Punkt wie ich das machen kann, denn bei diesem Beispiel bekomme ich nur die 1. Zahl nämlich 1. Ein kleiner Tipp wäre hilfreich.