Funktionen in Python schriftlich berechnen können?

5 Antworten

Dies wird rekursiv berechnet:

Foo(4) = 4 + Foo(3)
Foo(3) = 3 + Foo(2)
Foo(2) = 2 + Foo(1)
Foo(1) = 1

Jetzt "von hinten":

Foo(2) = 2 + 1 = 3
Foo(3) = 3 + 3 = 6
Foo(4) = 4 + 6 = 10

Mann hat hier :

4 + (4-1) + ((4-1)-1)...

4+3+2+1 = 10

Foo(4)=4+Foo(3)=4+( 3+Foo(2) )=4+ (3+( 2+Foo(1) ) )=4+( 3+( 2+ (1) ) )

(Anmerkung: Die Klammerung demonstriert die Berechnungsreihenfolge)

Oder anders Formuliert:

Foo berechnet die Summe der Zahlen von 1 bis x, was wiederum x*(x+1)/2 ist.

Das ist schlicht die Summe aller Zahlen bis zur übergebenen Zahl.

Foo(4) = 4+Foo(3) = 4+3+Foo(2) = 4+3+2+Foo(1) = 4+3+2+1 = 10;