Fibonacci in C

Sixe44

PC-Selbstbauer(in)
Moin!

Ich habe Programmieren als Fach im Studium und blicke nicht durch. Als Aufgabe sollten wir die Fibonacci Folge in C programmieren.
Ich habe mir in den Kopf gesetzt das ganze mit Hilfe einer For-Schleife zu verwirklichen, habe es aber selbst nicht gepackt.
Im Internet bin ich auf den Code gestoßen, den ich verzweifelt gesucht habe:


#include <stdio.h>
int main()
{
int i, t1 = 0, t2 = 1, nextTerm = 0;

for (i=3; i <= 25; ++i)
{
nextTerm = t1 + t2;
t1 = t2;
t2 = nextTerm;
printf("%d \n",nextTerm);
}
return 0;
}
Ich verstehe das Programm nicht.
1. "nexterm=t1+t2" -> damit wäre nextterm=0+1 => 1
2. "t1=t2" -> damit wären t1 und t2 beide 1
3. "t2=nextterm" -> damit ist t2 ja 1 (siehe 1.)

Wieso funktioniert das? Es wird nichts hochgezählt und in meiner Denklogik dreht sich der ganze nur um 0 und 1, wie kommt dann die Addition der Zahlen zustande?
Wo ist mein Denkfehler?

Vielen dank :)
 
Wieso funktioniert das? Es wird nichts hochgezählt
Dann geh mal eine Runde weiter und setz überall die 1 ein.
Runde 2
nextTerm=1+1
t1=1
t2=2

Runde 3
nextTerm=1+2
t1=2
t2=3
...wenn ich mich jetzt nicht verheddert habe
Ich lasse mir solche Zwischenschritte ja gerne ausgeben.
 
Zurück