En este programa, aprenderá a mostrar series de Fibonacci en Java utilizando bucles for y while. Aprenderá a mostrar la serie hasta un término específico o un número.
La serie de Fibonacci es una serie donde el siguiente término es la suma de dos términos anteriores. Los primeros dos términos de la secuencia de Fibonacci son 0 seguidos de 1.
La secuencia de Fibonacci: 0, 1, 1, 2, 3, 5, 8, 13, 21, ...
Ejemplo 1: Visualizar series de Fibonacci usando for loop
public class Fibonacci {
public static void main(String[] args) {
int n = 10, t1 = 0, t2 = 1;
System.out.print("First " + n + " terms: ");
for (int i = 1; i <= n; ++i)
{
System.out.print(t1 + " + ");
int sum = t1 + t2;
t1 = t2;
t2 = sum;
}
}
}
Cuando ejecutas el programa, la salida será:
0 + 1 + 1 + 2 + 3 + 5 + 8 + 13 + 21 + 34 +
En el programa anterior, los términos primero ( t1 ) y segundo ( t2 ) se inicializan a los dos primeros términos de las series 0 y 1 de Fibonacci, respectivamente.
Luego, for loop itera hasta n (número de términos) que muestra la suma de los dos términos anteriores almacenados en la variable t1 .
También puede generar series de Fibonacci utilizando un bucle while en Java.
Ejemplo 2: mostrar series de Fibonacci usando el bucle while
public class Fibonacci {
public static void main(String[] args) {
int i = 1, n = 10, t1 = 0, t2 = 1;
System.out.print("First " + n + " terms: ");
while (i <= n)
{
System.out.print(t1 + " + ");
int sum = t1 + t2;
t1 = t2;
t2 = sum;
i++;
}
}
}
El resultado es el mismo que el programa anterior.
En el programa anterior, a diferencia de un bucle for, tenemos que incrementar el valor de i dentro del cuerpo del bucle.
Aunque ambos programas son técnicamente correctos, es mejor usarlo para bucle en este caso. Es porque se conoce el número de iteraciones (de 1 a n ).
Ejemplo 3: mostrar series de Fibonacci hasta un número determinado (en lugar de términos)
public class Fibonacci {
public static void main(String[] args) {
int n = 100, t1 = 0, t2 = 1;
System.out.print("Upto " + n + ": ");
while (t1 <= n)
{
System.out.print(t1 + " + ");
int sum = t1 + t2;
t1 = t2;
t2 = sum;
}
}
}
Cuando ejecutas el programa, la salida será:
Hasta 100: 0 + 1 + 1 + 2 + 3 + 5 + 8 + 13 + 21 + 34 + 55 + 89 +
En lugar de mostrar la serie hasta un número específico, este programa la muestra hasta un número determinado (100).
Para esto, solo necesitamos comparar la suma de los dos últimos números ( t1 ) con n .
Si t1 es menor o igual que n , imprima t1 . De lo contrario, hemos terminado de mostrar todos los términos.
0 Comentarios
Dejanos tu comentario para seguir mejorando!