Fibonacci-számok

Növekményes (számláló) ciklus
Formázott eredménykiíratás
Egy ember vásárolt egy nyúlpárt tenyésztésre. Ez a nyúlpár egy hónap eltelte után egy nyúlpárt fialt, a második hónapban egy újabb nyúlpárt, majd megálltak a szaporodásban. Minden új pár hasonló módon pontosan két újabb nyúlpárt fialt. Hány új nyúlpárhoz jutott a tulajdonos egy-egy hónapban?
A kérdést megválaszolhatjuk, ha egy sorba leírjuk az egyes generációkhoz tartozó párok számát. Elsőként az 1-es számot írjuk le, mivel a tulajdonos egy nyúlpárral kezdte a tenyésztést. A következő lépésben újra 1-et írunk, mivel 1 nyúlpár született az első hónap után. A következő hónapban mindkét pár fialt. Így a következő szám 2. Eddig 3 számot írtunk a sorba: 1, 2, 3.
Mindegyik szám egy új generációt jelöl. Ezután az első pár szaporodása megállt. A második generáció (1 pár) 1, a harmadik generáció pedig (2 pár) 2 nyúlpárt fialt.
Így a sorban a következő szám 1+2, azaz 3 lesz. Ekkor a második generáció befejezi a szaporodást. A harmadik generáció (2 pár) 2, a negyedik generáció (3 pár) 3 nyúlpárt fialt. Így a következő szám 2+3, azaz 5 lesz a sorban.
Minden hónapban csak az utolsó két generáció fial, így a sorban a következő számot mindig az előző két szám összegeként állíthatjuk elő.

Az így keletkezett számokat Fibonacci-számoknak nevezzük. Ezeknek a számoknak érdekes tulajdonságaik vannak, gyakran felbukkannak a legkülönbözőbb területeken: virágszirmok száma, csigaház görbülete, napraforgóban a magok elrendeződése stb.
Fibonacci-számoknak tehát azokat a számokat nevezzük, amelyek mindegyike - az első kettő kivételével - egyenlő a sorban őt megelőző két szám összegével:
Fn = Fn-1 + Fn-2
A játék algoritmusának mondatszerű leírása:
Program fibonacci:
Ki: ”Fibonacci-számok”
Be: N
f[1] = 1
f[2] = 1
Ciklusváltozó = 3-tól N-ig
f[ciklusváltozó] = f[ciklusváltozó-1] + f[ciklusváltozó-2]
Ciklus vége
Ciklusváltozó = 1-tól N-ig
Ki: f[ciklusváltozó]
Ciklus vége
Program vége.