Usar un Bucle para Generar Términos
En este paso, modificaremos nuestro programa anterior de secuencia de Fibonacci para generar la secuencia utilizando un bucle. Construiremos sobre el código del paso anterior para crear la secuencia de Fibonacci real.
Actualicemos el archivo fibonacci.c:
cd ~/project
nano fibonacci.c
Ahora, modifiquemos el código para generar términos de Fibonacci usando un bucle for:
#include <stdio.h>
int main() {
int n, first = 0, second = 1, next;
printf("Ingrese el número de términos en la secuencia de Fibonacci: ");
scanf("%d", &n);
printf("Secuencia de Fibonacci de %d términos: \n", n);
for (int i = 0; i < n; i++) {
if (i <= 1)
next = i;
else {
next = first + second;
first = second;
second = next;
}
printf("%d ", next);
}
printf("\n");
return 0;
}
Compile y ejecuta el programa:
gcc fibonacci.c -o fibonacci
./fibonacci
Salida de ejemplo:
Ingrese el número de términos en la secuencia de Fibonacci: 10
Secuencia de Fibonacci de 10 términos:
0 1 1 2 3 5 8 13 21 34
Explicación
- Inicializamos
first y second como los dos primeros términos de la secuencia de Fibonacci.
- El bucle
for genera los términos subsiguientes sumando los dos términos anteriores.
next = first + second calcula el siguiente término.
- Actualizamos
first y second en cada iteración para mantener la progresión de la secuencia.
- El bucle continúa hasta que generamos el número especificado de términos.