C++ Bc. 41

Z GeoWikiCZ
Přejít na: navigace, hledání

Rozklad přirozeného čísla na součet Fibonacciho čísel

Napište funkci, která počítá rozklad přirozeného čísla na součet Fibonacciho čísel. Fibonacciho posloupnost 0, 1, 1, 2, 3, 5, ... je definována vztahem

F_n = F_{n-1} + F_{n-2},  kde  F_0 = 0,  \quad F_1 = 1.

V rozkladu neuvádějte nulu. Aby byl rozklad jednoznačný, musí platit, že každé Fibonacciho číslo v rozkladu je uvedeno právě jednou, tj. rozklad nesmí mít např. tvar 1 + 1 + 1 + ... n-krát

Funkci použijte v hlavním prrogramu, který vypíše výstup v následujícím formátu

1 = 1
2 = 2
3 = 3
4 = 3 + 1
5 = 5
6 = 5 + 1
7 = 5 + 2
8 = 8
9 = 8 + 1
10 = 8 + 2
11 = 8 + 3
12 = 8 + 3 + 1
13 = 13
14 = 13 + 1
15 = 13 + 2
16 = 13 + 3

[ Zpět | C++ | Další ]