Fibonači skaitļi ar JavaScript

Fibonaci Skaitli Ar Javascript



“JavaScript tagad ir ECMAScript. JavaScript izstrāde tiek turpināta kā ECMAScript. Rezervētais vārds “javascript” joprojām tiek izmantots tikai atpakaļsaderības nodrošināšanai.

Fibonači skaitļu nozīme

Fibonači skaitļi ir noteikta pozitīvu veselu skaitļu secība, kas sākas no 0. Veseli skaitļi ir pozitīvi veseli skaitļi. Tātad Fibonači skaitlis ir noteikta veselu skaitļu vai naturālu skaitļu virkne, kas sākas no 0. Šajā secībā pirmie divi skaitļi ir 0 un 1 tādā secībā. Pārējie skaitļi tiek izstrādāti no turienes, pievienojot iepriekšējos divus skaitļus. Pirmos divpadsmit Fibonači skaitļus iegūst šādi:

0
1
1 + 0 = 1
1 + 1 = 2
2 + 1 = 3
3 + 2 = 5
5 + 3 = 8
8 + 5 = 13
13 + 8 = 21
21 + 13 = 34
34 + 21 = 55
55 + 34 = 89







Citiem vārdiem sakot, pirmie divpadsmit Fibonači skaitļi ir:



0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89



Protams, trīspadsmitais skaitlis būtu: 144 = 55 + 89. Fibonači skaitļus var iedomāties kā masīvu, piemēram:





0 1 1 divi 3 5 8 13 divdesmitviens 3. 4 55 89

Masīvam ir indeksi. Nākamajā tabulā otrajā rindā ir parādīti atbilstošie nulles indeksi Fibonači skaitļiem masīvā:

0 1 1 divi 3 5 8 13 divdesmitviens 3. 4 55 89
0 1 divi 3 4 5 6 7 8 9 10 vienpadsmit

Ar nulles indeksiem, ja ir divpadsmit elementi, tad pēdējais indekss ir 11.



Fibonači skaitļus var izveidot O(n) laikā vai O(1) laikā. Šajās laika sarežģītības izteiksmēs n nozīmē n galvenās operācijas, bet 1 nozīmē 1 galveno operāciju. Ar O(n) tiek iegūti n Fibonači skaitļi, sākot no 0. Ar O(1) no atbilstošā indeksa tiek iegūts viens Fibonači skaitlis. Tāpēc O(1) n galveno operāciju vietā veic tikai vienu galveno darbību.

Šī raksta mērķis ir izskaidrot, kā jebkurā gadījumā izveidot Fibonači skaitļus, izmantojot JavaScript, kas mūsdienās faktiski ir ECMAScript.

Kodēšanas vide

Node.js vide netiks izmantota, kā lasītājs varētu būt paredzējis. Tā vietā pārlūkprogramma tiks izmantota koda interpretācijai un rezultātu parādīšanai. Skripts (kods) ir jāieraksta teksta redaktora failā, kas jāsaglabā ar paplašinājumu “.html”. Skriptam jābūt minimālajam kodam:

DOCTYPE HTML >
< html >
< galvu >
< virsraksts > Fibonači skaitļi ar JavaScript virsraksts >
galvu >
< ķermeni >
< skripta veids = 'text/ecmascript' >

skripts >
ķermeni >
html >

Šis ir aptuvens minimālais kods, kas nepieciešams tīmekļa lapai. Visa šī raksta kodēšana notiek starp tagiem .

Lai palaistu uzrakstīto (pievienoto) kodu, vienkārši veiciet dubultklikšķi uz faila nosaukuma ikonas, un datora pārlūkprogramma to atvērs.

Fibonači skaitļa definīcija

Fibonači skaitlim ir matemātiska definīcija. Tas ir definēts šādi:

Kur Fn ir Fibonači skaitlis, kas atbilst nulles indeksam, n.

Pirmie divi skaitļi: 0 un 1 ir iepriekš deklarēti šādā secībā. Šīs funkcijas pēdējā rindiņa parāda, kā pārējie skaitļi izriet no pirmajiem diviem cipariem to secībā.

Šī definīcija ir arī viena no Fibonači skaitļa formulām.

Fibonači skaitļu iegūšana O(n) laikā

Ja n ir 1, tad tikai 0 tiks parādīts kā Fibonači skaitlis. Ja n ir 2, tad 0 un 1 tiks parādīti kā Fibonači skaitļi šādā secībā. Ja n ir 3, tad 0, 1 un 1 tiks parādīti kā Fibonači skaitļi šādā secībā. Ja n ir 4, tad 0, 1, 1 un 2 tiks parādīti kā Fibonači skaitļi šādā secībā. Ja n ir 5, tad 0, 1, 1, 2 un 3 tiks parādīti kā Fibonači skaitļi šādā secībā. Ja n ir 6, tad 0, 1, 1, 2, 3 un 5 tiktu parādīti kā Fibonači skaitļi, tādā secībā un tā tālāk.

ECMAscript funkcija pirmo n Fibonači veselo skaitļu (skaitļu) ģenerēšanai ir:

< skripta veids = 'text/ecmascript' >
funkciju fibonači ( A ) {
n = A. garums ;
ja ( n > 0 )
A [ 0 ] = 0 ;
ja ( n > 1 )
A [ 1 ] = 1 ;
priekš ( i = divi ; i < n ; i ++ ) { //n=0 un n=2 ir ņemti vērā
CurrNr = A [ i - 1 ] + A [ i - divi ] ;
A [ i ] = CurrNr ;
}
}

Noslēguma skripta tags nav parādīts. Funkcija saņem masīvu. Pirmie divi Fibonači skaitļi tiek piešķirti to vietā. For-cilpa atkārtojas no nulles indeksa, 2 līdz nedaudz zem n. Vissvarīgākais paziņojums for-cilpā ir:

currNo = A[i – 1] + A[i – 2];

Tādējādi tiek pievienoti tiešie iepriekšējie divi masīva skaitļi, lai iegūtu pašreizējo numuru. Līdz brīdim, kad funkcija fibonači () beidz izpildīt, visi masīva elementi ir pirmie n Fibonači skaitļi. Piemērots kods, lai izsauktu funkciju fibonači () un parādītu Fibonači skaitļus, ir:

N = 12 ;
arr = jauns Masīvs ( N ) ;
fibonači ( arr ) ;
priekš ( i = 0 ; i < N ; i ++ )
dokumentu. rakstīt ( arr [ i ] + '' ) ;
dokumentu. rakstīt ( '
'
) ;
skripts >

Šis kods parāda beigu skripta tagu. Kods ir ierakstīts zem iepriekš minētā koda. Tīmekļa lapā redzamā izvade ir:

0 1 1 2 3 5 8 13 21 34 55 89

kā gaidīts.

Viena Fibonači skaitļa iegūšana O(1) laikā

O(1) ir nemainīgs laiks. Tas attiecas uz vienu galveno darbību. Vēl viena matemātiskā formula Fibonači skaitļa iegūšanai ir:

Ņemiet vērā, ka vienādojuma labajā pusē nav kvadrātsakne no 5, kas tiek paaugstināta līdz pakāpei n; tā ir izteiksme iekavās, kas tiek paaugstināta līdz pakāpei n. Ir divi šādi izteicieni.

Ja n ir 0, Fibn būtu 0. Ja n ir 1, Fibn būtu 1. Ja n ir 2, Fibn būtu 1. Ja n ir 3, Fibn būtu 2. Ja n ir 4, Fibn būtu 3 – un tā tālāk. Lasītājs var pārbaudīt šo formulu matemātiski, aizstājot n ar dažādām vērtībām un novērtējot. n šajā formulā ir uz nulli balstīts indekss. Rezultāts ir atbilstošais Fibonači skaitlis.

Šīs formulas ECMAScript (JavaScript) kods ir:

< skripta veids = 'text/ecmascript' >
funkciju fibNr ( n ) {
FibN = ( Matemātika . pow ( ( 1 + Matemātika . sqrt ( 5 ) ) / divi , n ) - Matemātika . pow ( ( 1 - Matemātika . sqrt ( 5 ) ) / divi , n ) ) / Matemātika . sqrt ( 5 ) ;
atgriezties FibN ;
}

Noslēguma skripta tags nav parādīts. Ņemiet vērā, kā ir izmantotas jaudas (pow) un kvadrātsaknes (sqrt) iepriekš definētās funkcijas. Programmā ECMAScript (JavaScript) matemātikas modulis nav jāimportē. Funkcija fibNo() tieši ievieš formulu. Piemērots funkcijas fibNo() izsaukums un attēlojums tīmekļa lapā ir:

N = vienpadsmit ;
pa labi = fibNr ( N ) ;
dokumentu. rakstīt ( pa labi ) ;
skripts >

Kods parāda beigu skripta tagu. Izvade ir:

89.00000000000003

No atbildes ir iespējams noņemt nevajadzīgos decimālciparus. Tomēr tā ir diskusija kādu citu reizi.

Ja ir nepieciešams vairāk nekā viens Fibonači skaitlis, kodam ir jāizsauc formula vienu reizi katram nulles atbilstošajam n indeksam.

Secinājums

Fibonači skaitļi ir noteikta pozitīvu veselu skaitļu secība, kas sākas no 0. Veseli skaitļi ir pozitīvi veseli skaitļi. Tātad Fibonači skaitlis ir noteikta veselu skaitļu vai naturālu skaitļu virkne, kas sākas no 0. Šajā secībā pirmie divi skaitļi ir 0 un 1 tādā secībā. Šie pirmie divi skaitļi ir definēti kā tādi. Pārējie skaitļi tiek izstrādāti no turienes, pievienojot divus iepriekšējos skaitļus.

Pēc pirmo divu Fibonači skaitļu ģenerēšanas, lai iegūtu pārējos Fibonači skaitļus un kopā iegūtu n skaitļus, kopā ar paziņojumu ir jāizmanto for-cilpa:

currNo = A[i – 1] + A[i – 2];

Tādējādi tiek pievienoti pēdējie divi Fibonači skaitļi, lai iegūtu pašreizējo Fibonači numuru.

Ja tiek norādīts uz nulli balstīts indekss, lai iegūtu atbilstošo Fibonači skaitli, izmantojiet formulu: