Zitat von
Mamphil:
Hi!
Zitat von
atreju2oo0:
Ich hätte da noch eine...
Delphi-Quellcode:
function reku(wort:string;i:integer):string;
begin
if i<length(wort) then result:=reku(wort,i+1)+wort[i]
else result:='';
end;
Aufgerufen wird das dann über
reku(meinWort,1);
Is zwar nicht die beste Möglichkeit aber Lehrer mögen Rekursionen!
Wieso so "kompliziert"?
Schreib doch:
Delphi-Quellcode:
function reku(wort: string; i: integer = 1):string;
begin
if i < length(wort) then
result:=reku(wort,i+1)+wort[i]
else
result:='';
end;
Aufgerufen wird das dann über
reku(meinWort);
Wenn der zweite Parameter fehlt, i automatisch = 1 gesetzt... (verwirrt evtl. den Lehrer
)
Mamphil
Außer dem Aufruf der Funktion ist es auch nicht anders als die Funktion von atreju2oo0.
IMHO sind iterative Lösungen der rekursiven vorzuziehen, da die Rekursion durch die mehrfachen Aufrufe den Speicher zumüllt (und somit auch langsamer sein dürfte).
MfG
Binärbaum