Rekursiv Funktion als iteration?

1 Antwort

Vom Beitragsersteller als hilfreich ausgezeichnet

Berechne einfach nacheinander in einer Schleife alle Werte G(i) und merke dir stets die letzten beiden Werte G(i) und G(i-1):

int calculateGIterative(int n) {
    if (n<=2) return n;

    int g_1 = 1; // G(1)
    int g_0 = 2; // G(2)

    for (int i=3; i<=n; ++i) {
        int g = 2 + 3*g_0*g_1;
        g_1 = g_0;
        g_0 = g;
    }
    return g_0;
}

(ungetestet!)


Timon389123 
Beitragsersteller
 18.04.2021, 18:22

Es hat funktioniert Danke :)

0