JavaScriptový program pro tisk Fibonacciho sekvence (s příklady)

V tomto příkladu se naučíte programovat sekvenci Fibonacci v JavaScriptu.

Abyste pochopili tento příklad, měli byste znát následující programovací témata JavaScriptu:

  • JavaScript pro smyčku
  • Zatímco JavaScript a dělat … zatímco Loop

Fibonacciho sekvence je zapsána jako:

 0, 1, 1, 2, 3, 5, 8, 13, 21,… 

Fibonacciho sekvence je celočíselná sekvence, kde první dva členy jsou 0 a 1 . Poté je další člen definován jako součet předchozích dvou termínů.

Příklad 1: Fibonacciho řada až n podmínek

 // program to generate fibonacci series up to n terms // take input from the user const number = parseInt(prompt('Enter the number of terms: ')); let n1 = 0, n2 = 1, nextTerm; console.log('Fibonacci Series:'); for (let i = 1; i <= number; i++) ( console.log(n1); nextTerm = n1 + n2; n1 = n2; n2 = nextTerm; )

Výstup

 Zadejte počet termínů: 4 Fibonacciho série: 0 1 1 2

Ve výše uvedeném programu je uživatel vyzván k zadání počtu požadovaných výrazů v řadě Fibonacci.

forSmyčka opakuje až do počtu zadaného uživatelem.

Nejprve se vytiskne 0 . Potom je v každé iteraci hodnota druhého členu uložena v proměnné n1 a součet dvou předchozích členů je uložen v proměnné n2.

Příklad 2: Fibonacciho sekvence až do určitého počtu

 // program to generate fibonacci series up to a certain number // take input from the user const number = parseInt(prompt('Enter a positive number: ')); let n1 = 0, n2 = 1, nextTerm; console.log('Fibonacci Series:'); console.log(n1); // print 0 console.log(n2); // print 1 nextTerm = n1 + n2; while (nextTerm <= number) ( // print the next term console.log(nextTerm); n1 = n2; n2 = nextTerm; nextTerm = n1 + n2; )

Výstup

 Zadejte kladné číslo: 5 Fibonacciho série: 0 1 1 2 3 5

Ve výše uvedeném příkladu je uživatel vyzván k zadání čísla, do kterého chce vytisknout sérii Fibonacci.

První dva výrazy 0 a 1 se zobrazí předem. Poté se použije whilesmyčka k iteraci termínů k vyhledání řady Fibonacci až do počtu zadaného uživatelem.

Zajímavé články...