Rekursionsaufgabe

Status
Nicht offen für weitere Antworten.

Icke

Mitglied
Hallo.. Ich soll eine Rekursion in java programmieren, die die zahlen von a bis b summiert und dann b ausgibt.. mein code sieht bis jetzt so aus

Code:
private static long summe(int a, int b){

	   if (a>b) {
		   system.out.println("a ist größer b!\n"); }
	   else if (a==b) 
		   return a; 
	   else if a + summe(b-1);
	    return b;
		   
	   

}

es ist aber total falsch ^^.. könnt ihr mir vllt helfen? habt ihr eine i-net seite wo man vllt nachlesen kann, wie rekursion in java geschrieben werden? glaube das würde mir sehr weiter helfen..
 
S

stev.glasow

Gast
Code:
private static long summe(int a, int b){
	if(a < b)
		return a + summe(a + 1, b);
	else
		return a;
}
oder hübsch:
Code:
private static long summe(int a, int b){
	return a < b? a + summe(a + 1, b): a;
}

"und dann b ausgibt" wtf?
 

dayaftereh

Top Contributor
Ich glaube das müsste Richtig sein



Code:
private static long summe(int a,int b){
	if(a < b){
		return a + summe(++a, b);
	} 
	return b;
}

So lange man mit ganzen Zahlen rechnet und + 1 dazu addiert, ist es egal ob man a oder b zurück gibt, aber wenn man mit doubles abeitet muss man aufpassen welech Folge genutzt wird...
 

Icke

Mitglied
Könntest du mir deine schleife vllt in worten erklären? also die 3te zeile
Code:
 return a + summe(++a, b);
 
Status
Nicht offen für weitere Antworten.

Ähnliche Java Themen

Neue Themen


Oben