Das 2. Problem von Project-Euler zeigt uns die Fibonacci-Folge.
Die ersten Elemente der Fibonacci-Folge lauten: 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, ...
Die Aufgabe dazu lautet:
Addiere alle geraden Elemente der Fibonacce-Folge die kleiner als vier Millionen sind.
Eine einfache und auch schnelle Lösung lässt sich schnell finden, mann kann sogar alle notwendigen Elemente bei Wikipedia ablesen und mit dem Taschenrechner oder per Hand aufaddieren.
Ein einfacher Programmcode mag so aussehen:
uint erg = 0, a = 1, b = 2; do { if (b % 2 == 0) erg += b; uint bneu = a + b; a = b; b = bneu; } while (b < 4000000);
Jetzt kann man noch die temporäre Variable eliminieren:
b += a; a = b - a;
Man kann auch noch die Teilbarkeitsprüfung in der Schleife eliminieren, da genau jedes 3. Element der Fibonacci-Folge gerade ist. (1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, ...)
Oder man nutzt die Eigenschaft:
, hier braucht man jedoch wieder eine Zwichenvariable, oder man führt immer drei Schritte der Fibonacci-Iteration hintereinander aus und addiert dann ohne Abfrage auf.