lvalue required as left operand of assignment
-
Hi Leute,
das ist die Aufgabestellung
**Die Folge Fn ist definiert durch die RekursionFn=2*Fn-1+Fn-2*Fn-3
mit den Startwerten F0=1, F1=1 und F2=1
Schreiben Sie eine Funktion, die den Wert Fn an einer beliebigen Position n berechnet**mein code
#include<iostream> using namespace std; int folge (int n){ if(n < 3) return 1; else return 2*folge(n-1) + folge(n-2)*folge(n-3); } int main(){ folge(0) = 0; folge(1) = 1; folge(2) = 1; int n; cin >> n; cout << folge(n) << "\n"; return 0; }danke Euch
-
So funktioniert C++ nicht. Du denkst an eine funktionale Sprache. Du musst die Abbruchbedingungen der Rekursion in der Funktion selber einbauen. Hast du doch auch schon so halb. Wozu dann noch Zeilen 16-18?
-
unsigned long folge(unsigned long n) { if ( n == 0 ) return 1; else if ( n == 1 ) return 1; else if ( n == 2 ) return 1; else return 2*folge(n-1) + folge(n-2)*folge(n-3); }