Hey freunde, ich habe mal eine kurze frage zu diesem Code hier.
Ich habe hier eine eine einfache Rekursion von 10 bis 5, wenn ich die Variable "end" als return wert ausgebe bekomme ich 45 als Ausgabe, woher kommt der Wert 5 dazu? wenn ich return 0; eingebe kommt eine Augabe mit dem Wert 40 was für mich Plausibel ist, da 5 > 5 false ist und das Programm in die else abfrage springt und mir den Wert ausgibt.
Vielen dank im Vorraus.
Ich habe hier eine eine einfache Rekursion von 10 bis 5, wenn ich die Variable "end" als return wert ausgebe bekomme ich 45 als Ausgabe, woher kommt der Wert 5 dazu? wenn ich return 0; eingebe kommt eine Augabe mit dem Wert 40 was für mich Plausibel ist, da 5 > 5 false ist und das Programm in die else abfrage springt und mir den Wert ausgibt.
Vielen dank im Vorraus.
Java:
public class Main {
public static void main(String[] args) {
int result = sum(5, 10);
System.out.println(result);
}
public static int sum(int start, int end) {
if (end > start) {
return end + sum(start, end - 1);
} else {
return end; // wenn ich return end eingebe bekomme ich als Ausgabe 45 raus und wenn ich return 0; eingebe bekomme ich 40 als Ausgabe.
}
}
}