Primero que nada, veamos cómo se forma la serie:
se comienza con un número a y un número b, se los suma y obtengo otro llamado c.
Ejemplo: a = 0, b = 1, c = a+b entonces c = 1
Luego, a toma el valor que tenía b y b toma el valor que tenía c…
a = 1 y b = 1
Calculo nuevamente c:
c = a+b entonces c = 2
y esto se repite las veces que quiera. El número c, es el número que forma la serie de Fibonacci.

Ahora, para hacer esto en QBasic, hacemos el siguiente programa:
CLS
a = 0
b = 1
FOR x = 1 TO 21
PRINT “n1:”; a, : PRINT “n2″; b,
c = a + b
PRINT “Fibonacci:”; c,
a = b
b = c
SLEEP
NEXT
En el programa anterior calcula sólo los primeros 21 números de la serie.
Si desean calcular más, sólo tienen que cambiar el valor 21 del FOR por la cantidad deseada.
Muy simple, no es cierto? Ok, pero vamos a hacer la cosa un poco más atractiva, vamos a hacer una representación gráfica de los valores. Acá el programa se complica muchísimo y no voy a comentarlo paso a paso. Para obtener un programa que grafique la serie cómo muestra esta captura,
copie el siguiente código:
‘——–Serie de Fibonacci———–
‘——— by DrGEN ———-
‘—- http://www.DrGEN.com.ar —SCREEN 12
CLS
COLOR 15
LOCATE 1, 1: PRINT “18.000″
LOCATE 13, 2: PRINT “9.000″
LOCATE 19, 2: PRINT “4.500″
LOCATE 25, 6: PRINT “1″
LINE (50, 1)-(50, 400), 14
LINE (50, 400)-(400, 400), 14
COLOR 15
LINE (410, 1)-(600, 400), 14, BLOCATE 2, 54: PRINT “N1 N2 Fibo”
LINE (470, 1)-(530, 400), 14, BLOCATE 27, 1: PRINT ” – Serie de Fibonacci – By DrGEN – http://www.DrGEN.com.ar -”
COLOR 12
LOCATE 27, 35: PRINT “GEN”
COLOR 2
LOCATE 27, 33: PRINT “Dr”
COLOR 7A = 0
b = 1FOR x = 1 TO 21
COLOR 9
LOCATE x + 2, 54: PRINT A
LOCATE x + 2, 61: PRINT b
c = A + b
LINE (x * 10 + 50, 390 – (c / 50))-((x – 1) * 10 + 50, 390 – (b / 50)), 1COLOR 12
LOCATE x + 2, 69: PRINT c
A = b
b = c
CIRCLE (x * 10 + 50, 390 – (c / 50)), 2, 12
LINE (470, 1)-(530, 400), 14, B
SLEEP
NEXT
Les dije que era más complicado… pero el resultado vale la pena, y ni siquiera tienen que tipearlo. El Ctrl-C y Ctrl-V agiliza la vida de los programadores
Ya había terminado el programa y pensé: pero tal vez quieran calcular también el númerp phi o número aureo!
Entonces abrí nuevamente el QBasic, y me puse manos a la obra…
El número Phi, número aureo, razón aurea, número dorado, y muchos otros nombres, es simplemente un número que resulta de la razón entre dos números de la serie de Fibonacci consecutivos. Ejemplo:
El número Phi es un número irracional cómo el número Pi, es decir tiene infinitos decimales y si lo vamos calculando, vemos que su valor oscila permanentemente en torno a 1.618 que es lo que se toma como valor aproximado.
Ok, el programa siguiente, modificación del anterior, lo calcula y lo imprime gráficamente logrando este resultado:
La línea blanca representa a Phi, y no tiene nada que ver con el valor del eje vertical del gráfico de la serie.
Programa Final:
‘——–Serie de Fibonacci———–
‘——— by DrGEN ———-
‘—-http://www.drgen.com.ar—-SCREEN 12
CLS
COLOR 12
LOCATE 1, 1: PRINT ” 18000″
LOCATE 13, 2: PRINT ” 9000″
LOCATE 19, 2: PRINT ” 4500″
LOCATE 25, 6: PRINT “1″COLOR 14
LOCATE 10, 2: PRINT “1.618″LINE (50, 1)-(50, 400), 14
LINE (50, 400)-(400, 400), 14
COLOR 15
LINE (410, 1)-(600, 400), 14, BLOCATE 2, 54: PRINT “N1 N2 Fibo”
COLOR 14
LOCATE 2, 41: PRINT “Phi”
LINE (470, 1)-(530, 400), 14, B
COLOR 15
LOCATE 27, 1: PRINT ” – Serie de Fibonacci – By DrGEN – http://www.drgen.com.ar -”
COLOR 12
LOCATE 27, 35: PRINT “GEN”
COLOR 2
LOCATE 27, 33: PRINT “Dr”
COLOR 7A = 0
B = 1
D = 0FOR x = 1 TO 21
COLOR 9
LOCATE x + 2, 54: PRINT A
LOCATE x + 2, 61: PRINT B
C = A + BD = C / B
LINE (x * 10 + 50, 390 – (C / 50))-((x – 1) * 10 + 50, 390 – (B / 50)), 1
LINE (x * 10 + 50, 390 – (D * 150))-((x – 1) * 10 + 50, 390 – (D2 * 150)), 7
D2 = D
COLOR 12
LOCATE x + 2, 69: PRINT C
COLOR 14
LOCATE x + 2, 41: PRINT D
A = B
B = C
CIRCLE (x * 10 + 50, 390 – (C / 50)), 2, 12
CIRCLE (x * 10 + 50, 390 – (D * 150)), 1, 14
LINE (470, 1)-(530, 400), 14, B
SLEEP
NEXT
Para cerrar este aburrido post (para la gran mayoría), les dejo algún dato interesante sobre la serie: En un libro llamado “Libro de los ábacos” escrito por el mismo Fibonacci (significa filio Bonacci o hijo de Bonacci), en realidad llamado Leonardo de Pisa Fibonacci, cuenta que con su serie se puede calcular casi perfecatamente el número de pares de conejos n meses después después de que una primera pareja comienza a reproducirse (suponiendo que los conejos se empiezan a reproducir cuando tienen dos meses de edad).
Si les gustó este post, acá estan los mejorcitos =) (acá otros tutoriales)
O pueden seguir con estos:
Ah! me olvidaba… si les gustó este post, subscríbanse al RSS o por Mail para poder disfrutar los posts que están por venir! Gracias!

Ahh las maravillas de las matemáticas (?)
Y las maravillas del ctrl+c y ctrl+v (creo que esto último es lo más maravilloso en la historia de la creación!)
Un beso Doc, creo que es la primera vez que firmo desde que se mudó el blog. Exitos!
Sofi.
esta bueno como uno puede contactar con unos de ustedes para que nos ayudaran a poder realizar un programa para nuestro examen de programacion
[...] Cómo calcular la Serie de Fibonacci en QBasic [...]
[...] Conway. Sobre este “juego” hablaré en algún momento ya que como hobby lo programé en QBasic Lo interesante del tema es que vuelven a mirarse con otros ojos las famosas variables ocultas de [...]
[...] Serie de Fibonacci en QBasic [...]
Me di cuenta de un pequeño error: lo correcto es llamarla “Sucesión de Fibonacci”.
En matemática, una sucesión es un conjunto infinito de números, para el cual uno tiene la receta para construirlo (como en este caso la suma de los dos números anteriores). Una serie, por el otro lado, se trata de la suma de todos los elementos de una sucesión (por lo tanto, una suma infinita).
Si habláramos, entonces, de la “Serie de Fibonacci”, significaría pensar en el numero que resulta de la suma de la sucesión -es decir 1+1+2+3+5+8+13+21+…-
Ya sé que sucesión y serie pueden ser sinónimos en español, pero en el lenguaje de las matemáticas no.
Juancito:
Tenés razón.
En varios lugares escuché hablar de “sucesión de Fibonacci“.
Gracias!