Fibonacci-reeks Rekenmachine

Genereer de Fibonacci-reeks tot een willekeurige term, of ga direct naar een specifieke term — exacte waarden met rekenkunde van willekeurige precisie.

1.023 weergaven

Reeks

Hoe wordt de Fibonacci-reeks berekend?

De Fibonacci-reeks wordt gedefinieerd door een eenvoudige recursieformule: F(0) = 0, F(1) = 1, en elke volgende term is de som van de twee ervoor, F(n) = F(n-1) + F(n-2). Die ene regel genereert 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89… elk getal is gewoon de som van de laatste twee, waardoor de reeks voor de eerste tien à twaalf termen gemakkelijk met de hand te controleren is.

Wat veel minder voor de hand ligt, is hoe snel de getallen groeien. Bij F(30) is de waarde al meer dan 800.000; bij F(100) is het een getal van 21 cijfers. Standaard 64-bits getaltypen (gebruikt door de meeste rekenmachines en door gewone JavaScript-getallen) verliezen stilzwijgend precisie zodra een geheel getal ongeveer 9 × 10^15 overschrijdt — een drempel die Fibonacci rond de 78e term bereikt. Voorbij dat punt toont een simpele rekenmachine een afgerond, licht onjuist antwoord zonder enige waarschuwing. Deze tool vermijdt dat volledig door elke term te berekenen met BigInt-rekenkunde, die gehele getallen van willekeurige grootte exact weergeeft, cijfer voor cijfer, hoe groot n ook wordt — zodat F(100), F(500), zelfs F(1000), tot op het laatste cijfer nauwkeurig uitkomen.

Een tweede bekende eigenschap is de verbinding met de gulden snede: naarmate n groeit, convergeert de verhouding van opeenvolgende termen F(n)/F(n-1) naar φ ≈ 1,6180339887…, dezelfde constante die te vinden is in de verhoudingen van een regelmatige vijfhoek en in de gesloten formule van Binet voor het berekenen van Fibonacci-getallen zonder recursie. Vroege termen benaderen deze grof (3/2 = 1,5, 8/5 = 1,6), maar rond de 15e term is de verhouding al nauwkeurig tot vier decimalen.

Wat u moet weten

  • Indexeringsconventie. Sommige bronnen laten de reeks beginnen bij F(1) = F(2) = 1 in plaats van F(0) = 0. Deze tool volgt de standaard wiskundige conventie, F(0) = 0 en F(1) = 1, die ook door de meeste leerboeken en informaticacursussen wordt gebruikt.
  • Groeisnelheid. Elke term is ongeveer 1,618 keer de vorige, dus het aantal cijfers groeit lineair met n — F(1000) heeft meer dan 200 cijfers, precies het bereik waar rekenmachines met drijvende komma het begeven en BigInt vereist is.
  • Veelvoorkomende valkuil. Het kopiëren van een grote Fibonacci-waarde uit een spreadsheet of rekenmachine die standaard drijvende-kommagetallen gebruikt (bijvoorbeeld gewone JavaScript of Excel) voorbij ongeveer de 78e term zal de laatste cijfers stilzwijgend afronden — controleer zeer grote waarden altijd met een tool die gebouwd is voor willekeurige precisie.
  • Praktisch gebruik. Naast de zuivere wiskunde komt de reeks voor in algoritmeanalyse (Fibonacci-zoeken, lesvoorbeelden voor dynamisch programmeren), bij het beschrijven van bepaalde natuurlijke groeipatronen, en in de retracementniveaus die worden gebruikt in financiële technische analyse.

Veelgestelde vragen

Hoe groot kan N zijn?

Tot 1000 — ver voorbij het punt waar gewone drijvende-kommagetallen (inclusief gewone JavaScript-getallen) precisie zouden beginnen te verliezen, wat rond F(78) gebeurt. BigInt houdt elk cijfer exact, hoe groot de term ook wordt.

Begint de reeks bij 0 of 1?

Deze tool begint bij F(0)=0, F(1)=1, overeenkomstig de standaard wiskundige definitie die in de meeste leerboeken wordt gebruikt; sommige andere bronnen tellen in plaats daarvan vanaf F(1)=F(2)=1.

Waarom hebben grote Fibonacci-getallen BigInt nodig in plaats van een normaal getaltype?

Standaard getaltypen ronden stilzwijgend af zodra een geheel getal ongeveer 9 biljard overschrijdt, een drempel die Fibonacci rond de 78e term bereikt. BigInt geeft gehele getallen van onbeperkte grootte exact weer, zodat F(100) of F(500) tot op het laatste cijfer correct uitkomen in plaats van een afgeronde benadering.

Wat is de verbinding met de gulden snede?

Elke term delen door de vorige (F(n)/F(n-1)) convergeert naar φ ≈ 1,618033988…, de gulden snede. De benadering is al nauwkeurig tot vier decimalen rond de 15e term.

Kan ik direct naar één specifieke term springen in plaats van de hele reeks weer te geven?

Ja — voer het gewenste termnummer in en de tool berekent alleen F(n) rechtstreeks, zonder dat alle voorgaande termen hoeven te worden weergegeven.

Reacties

Nog geen reacties — schrijf de eerste!

Vergelijkbare tools