Rekursion
-
Also ich würde folgenden Ansatz nehmen
1\*a+2\*a+3\*a+...+n\*a =a(1+2+3+...+n) =\frac{a\*n\*(n+1)}{2}Wenn du da aber umbedingt eine Rekursion reinquetschen willst dann bleibt dir wohl nur das ganze mit einer als Endrekursion formulierten Schleife auszudrücken.
-
Ich glaub ich lass es lieber sein

Eine Frage noch: Auf wieviel MB ist der Stack unter XP begrenzt?? Gibt es eine Möglichkeit die Stackgröße in Visual C++ zu ändern??
-
Standardmäßig wird eine Größe von 1MB allokiert. Das lässt sich über einen Compiler- bzw. Linkerswitch festlegen oder auch zur Laufzeit ändern. Wenn du einen neuen Thread erstellst, kannst du ja zum Beispiel direkt die Stackgröße dafür definieren.
-
double func(double n) { if(n<=1) return 1; return pow(n,2) + func(n-1); }
-
Schön, wenn wir nun das pow noch eliminieren und wieder Ganzzahlen daraus machen, könnte der OP sicher damit leben.
-
Funktioniert!!
Danke an alle,,
-
sorry... wer ist OP?
int func(int n) { if(n <= 1) return 1; return (n * n) + func(n - 1); }
-
prokaion schrieb:
sorry... wer ist OP?
OP == Orginal Poster == AJ_Styles

<korintenkack>
int func(int n) { if(n <= 1) return 1; return (n * n) + func(n - 1); }Ich glaube der OP wollte garnicht quadrieren, sondern einfach nur mit 2 multiplizieren

</korintenkack>Gruß Caipi
-
So siehts aus

Da hab ich mich wohl vertippt

-
Soso, mit 2 multiplizieren, hm,
na dann hab ich den ganzen code wohl umsonst geschrieben....
schnauf!
-
prokaion schrieb:
Soso, mit 2 multiplizieren, hm,
na dann hab ich den ganzen code wohl umsonst geschrieben....
schnauf!warum heulst du deswegen gleich?? man war doch nicht viel code!! komm mal wieder klar.
-
cmnt. schrieb:
prokaion schrieb:
Soso, mit 2 multiplizieren, hm,
na dann hab ich den ganzen code wohl umsonst geschrieben....
schnauf!warum heulst du deswegen gleich?? man war doch nicht viel code!! komm mal wieder klar.
ich hoffe das meinst du nicht ernst xD
-
ihr habt das echt ernst genommen? 2 zeilen code??
und wo man aus dem n nur ne 2 machen muss??natürlich war das NICHT ernst gemeint!!!
(nochmal für alle: NEIN, DASWARNICHTERNSTGEMEINNNNT!!
)mfg
-
Danke Prokaion,,
aber eigentlich müsste es heißen: if(n <= 1) return 2;

-
uups! wohl wahr
