Cómo escribir un programa que genera la serie de Fibonacci utilizando la función

Leonardo de Pisa (también conocido como Fibonacci ) fue un matemático italiano del siglo 13 . Fue famoso durante su vida para la introducción del sistema de numeración hindú que ahora utilizamos en un mundo medieval que todavía estaba usando números romanos. Hoy, es el más famoso por una serie que comienza el 1 , 1, 2 , 3, 5 , 8, ... y así sucesivamente . Después de los dos primeros, cada nuevo número es la suma de los dos últimos números . Esta serie aparece en varios lugares en la naturaleza y también es útil en la solución de algunos problemas difíciles . Es un ejercicio de programación común en las clases de ciencias de la computación . Instrucciones Matemáticas 1

esbozar la solución en pseodocode - una descripción en lenguaje Inglés de la función. La función de Fibonacci tendrá tres partes . Parte 1 se ocupa de los dos primeros números en la secuencia . La siguiente sección presenta un par de variables , ayb , que no perder de vista los dos últimos números de la serie Fibbonacci por lo que es fácil encontrar el siguiente número de la serie: a + b . La última parte de la función es un bucle que realiza un seguimiento de encontrar el número correcto de elementos nuevos en la serie, la impresión de cada elemento y la actualización de a y b.
2

Cuida de un problema complicado que surge cuando se encuentra un nuevo número de la secuencia y a y b se actualizan . Si a y b son los dos últimos números de la serie, el siguiente número de la serie es a + b . El nuevo a es el viejo y el nuevo b b es la edad a + b - pero el viejo una ha sido alterado . Mira lo que pasa cuando a = 3 yb = 5 . Sustitución de una con b hace a = 5 , lo cual es correcto , pero sustituyendo b con a + b = b hace 5 + 5 = 10, que es incorrecto.

3

Escribir el código en el lenguaje C :

int FIBB -función ( int lim ) {if (lim == 1 ) printf ("1 "); if ( lim - mayor que o igual a - 2 ) printf ("1 1 "); if ( lim - mayor que 2 ) { int a : 1; int b: = 1; int count : = 2; while (cuenta menos-que- lim ) { printf (a + b); cuenta + +; c: = a + b; a: = b; b: = c;} } }

donde lim es el número de elementos de la serie que se imprimen . El problema con la actualización de a y b es resuelto por el ahorro a + b en c , antes de sustituir a por b y sustituyendo b con c .