53 Stimmen

Ist in der Fibonacci-Folge fib(0) 0 oder 1?

Ich bearbeite eine Aufgabe in einem Fach, in dem fib(0) als = 1 definiert ist. Aber das kann doch nicht richtig sein? fib(0) ist 0?

Program with fib(0) = 1; spits out fib(4) = 5
Program with fib(0) = 0; spits out fib(3) = 3

Was ist die richtige Definition?

7 Stimmen

Fib 0 = 0 ist richtig. Aber für manche Menschen ist die Erde flach und Fib 0 = 1.

0 Stimmen

Steht dies im Zusammenhang mit dem Projekt euler?

1 Stimmen

In Anbetracht der Tatsache, dass jeder von uns die Wikipedia-Seite ändern kann, würde ich mich an die Definition aus der Encylopedia Britannica halten: britannica.com/wissenschaft/Fibonacci-Zahlen Fib beginnt mit 1, wie von Fibonacci selbst definiert.

42voto

Dale Gerdemann Punkte 711

Die Definition mit Fib(0) = 1 wird als kombinatorische Definition bezeichnet, und Fib(0) = 0 ist die klassische Definition. Beide werden verwendet in der Fibonacci Vierteljahresschrift Autoren, die die kombinatorische Definition verwenden, müssen jedoch einen Satz zur Erklärung hinzufügen. Benjamin und Quinn verwenden in Proofs that Really Count f_n für die n-te kombinatorische Fibonacci-Zahl und F_n für die n-te klassische Fibonacci-Zahl. Die kombinatorische Definition eignet sich gut für Zählfragen wie "Wie viele Möglichkeiten gibt es, eine Treppe mit n Stufen hinaufzugehen, indem man entweder eine oder zwei Stufen auf einmal nimmt?" Wenn n gleich 0 ist, gibt es nur einen Weg, nicht null Wege.

13 Stimmen

El Fibonacci Quarterly ? ich muss ein Abonnement abschließen! :-)

1 Stimmen

britannica.com/wissenschaft/Fibonacci-Zahlen besagt, dass Fib(0) = 1 die von Fibonacci selbst festgelegte Definition ist. Die ursprüngliche Folge beginnt mit 1, aber ich stimme zu, dass diese Definition aus Gründen der Bequemlichkeit beim Lösen von Problemen gelockert werden kann.

40voto

Noldorin Punkte 138548

Sie haben recht. . Die Fibonacci-Folge ist formell definiert mit Startwerten fib(0) = 0 y fib(1) = 1 . Dies ist eine Voraussetzung dafür, dass der Rest der Sequenz richtig ist (und nicht um eins oder irgendetwas versetzt).

In der Mathematik bilden die Fibonacci-Zahlen, die gemeinhin mit F_n bezeichnet werden, eine Folge, die Fibonacci-Folge, bei der jede Zahl die Summe der beiden vorhergehenden ist, beginnend mit 0 und 1.

In der Mathematik bilden die Fibonacci-Zahlen, die gemeinhin als Fn bezeichnet werden, eine Folge, die Fibonacci-Folge, bei der jede Zahl die Summe der beiden vorhergehenden ist, beginnend bei 0 und 1.

Edit : Ich muss zugeben, dass es noch eine andere (weit weniger gebräuchliche und meist informelle) Möglichkeit gibt, die Sequenz zu definieren, indem man sie mit den Werten 1 und 1 versieht, aber das ist bei weitem nicht die konventionelle Methode. Sie wird sicherlich nicht in allen formalen mathematischen Definitionen bevorzugt, die ich gesehen habe, wie Die Online-Enzyklopädie der ganzzahligen Folgen .

4 Stimmen

Mit anderen Worten: Seine Sequenz ist um einen Index versetzt.

0 Stimmen

@Markus: Ja, auf eine sehr seltsame Art und Weise ausgeglichen. Es könnte aber auch sein, dass derjenige, der die Aufgabe zugewiesen hat, sich geirrt hat (wahrscheinlicher?).

0 Stimmen

@Sjoerd: Ich habe genug Mathematik studiert, um zu wissen, dass es einfach kein Standard ist.

17voto

Pascal Thivent Punkte 548176

Von der Fibonacci-Zahl Eintrag auf Wikipedia:

In der Mathematik sind die Fibonacci-Zahlen die folgende Zahlenfolge:

alt text

Per Definition sind die ersten beiden Fibonacci Zahlen 0 und 1, und jede verbleibende Zahl ist die Summe der vorherigen zwei. Einige Quellen lassen das anfängliche 0 aus und beginnen stattdessen die Sequenz mit zwei 1en .

Mathematisch gesehen ist die Folge Fn der Fibonacci-Zahlen ist definiert durch die Rekursionsbeziehung

alt text

mit Startwerten

alt text

8 Stimmen

Mit einer netten kleinen Betonung auf: "Einige Quellen lassen die anfängliche 0 weg und beginnen die Sequenz stattdessen mit zwei 1en"

0 Stimmen

Beim Programmieren ist f(0) vielleicht nützlich, wenn man die Fibonacci-Folge von unten nach oben generiert, da man zwei braucht, um die dritte zu erzeugen usw.

8voto

Kyle Delaney Punkte 10603

http://en.wikipedia.org/wiki/Fibonacci_number

Fibonacci selbst begann die Folge mit 1 und nicht mit 0. Es ist wichtig zu erkennen, dass die eigene Meinung keine unumstößliche Tatsache ist, und es kann sich lohnen, zu bedenken, dass man es nicht unbedingt besser weiß als der Mann, der die Folge geschaffen hat. Ich denke, es ist in Ordnung, die Sequenz mit 0 zu beginnen, solange man nicht so tut, als sei das die einzig absolut richtige Vorgehensweise, denn die Zahl bei "Index 0" ist grundsätzlich mehrdeutig und sollte immer explizit kommuniziert werden.

Die Frage des "Index" gilt nur für uns und nicht für Fibonacci. Wenn wir also mit seiner Startnummer beginnen wollen und wir 0-basierte Indizes verwenden, würden wir seine Startnummer bei Index 0 setzen, oder wenn wir 1-basierte Indizes verwenden, würden wir seine Startnummer bei Index 1 setzen.

Und da es in der Tat möglich ist, die Folge nach links fortzusetzen, ist es auch völlig willkürlich, mit 0 zu beginnen. Warum nicht mit -1 beginnen und dann -1, 1, 0, 1, 1, 2...?

0 Stimmen

Können Sie den Nachweis erbringen, dass Fibonacci Begriffe wie F(1) verwendet?

3 Stimmen

Ich will damit sagen, dass, wenn man 1 als mögliche erste Zahl in der Folge akzeptieren kann und man 0 als ersten Index einer Folge verwendet, es Sinn macht, zu sagen F(0) = 1 . Ich will damit auch sagen, dass es mehrere Möglichkeiten gibt, also ist es besser, sich darüber klar zu werden, welche Version man verwendet, als darauf zu bestehen, dass es nur eine Möglichkeit gibt.

0 Stimmen

Aber hat er gesagt, dass die 1 bei Index 0 oder bei Index 1 steht?

7voto

Zed Punkte 55390

Ausgehend von der Definition der Fibonacci-Folge können Sie eine geschlossene Form für die Definition des n-ten Elements erstellen:

F(n) = ( f^n - (1-f)^n ) / sqrt(5),
where f = (1 + sqrt(5)) / 2 [the golden ratio]

Für n = 0 ist sie eindeutig 0:

F(0) = (1 - 1) / sqrt(5) = 0.

4 Stimmen

Das ist eine Erklärung, wenn auch eine umständliche. Es ist wirklich das Saatgut, das es in erster Linie definiert.

1 Stimmen

Wie auch immer, es gibt sicherlich keine Debatte über die geschlossene Form, so dass dies eine unbestreitbare Antwort auf die Frage gibt =)

2 Stimmen

@Noldorin Natürlich könnte man den Keim anders definieren, aber dann würden viele schöne Theoreme falsch werden, wie dieses hier. Übrigens, mein Favorit ist gcd(F_m, F_n) = F_gcd(m,n).

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X