V tomto programe sa naučíte tlačiť Fibonacciho postupnosť pomocou cyklu while.
Aby ste pochopili tento príklad, mali by ste mať znalosti nasledujúcich tém programovania v jazyku Python:
- Vyhlásenie Python if … else
- Python while Loop
Fibonacciho postupnosť je celočíselná postupnosť 0, 1, 1, 2, 3, 5, 8….
Prvé dva výrazy sú 0 a 1. Všetky ďalšie výrazy sa získajú pridaním predchádzajúcich dvoch výrazov. To znamená, že n-tý člen je súčtom (n-1) a (n-2) -tého člena.
Zdrojový kód
# Program to display the Fibonacci sequence up to n-th term nterms = int(input("How many terms? ")) # first two terms n1, n2 = 0, 1 count = 0 # check if the number of terms is valid if nterms <= 0: print("Please enter a positive integer") elif nterms == 1: print("Fibonacci sequence upto",nterms,":") print(n1) else: print("Fibonacci sequence:") while count < nterms: print(n1) nth = n1 + n2 # update values n1 = n2 n2 = nth count += 1
Výkon
Koľko termínov? 7 Fibonacciho postupnosť: 0 1 1 2 3 5 8
Tu ukladáme počet výrazov do nterms. Prvý výraz inicializujeme na 0 a druhý na 1.
Ak je počet výrazov viac ako 2, pomocou while
slučky nájdeme nasledujúci výraz v poradí pridaním predchádzajúcich dvoch výrazov. Potom premenné zameníme (aktualizujeme) a pokračujeme v procese.
Tento problém môžete vyriešiť aj pomocou rekurzie: Program Python na tlač Fibonacciho postupnosti pomocou rekurzie.