Diferencia entre revisiones de «Ejercicio 2: Sumar la sucesión de los n primeros términos de la sucesión de Fibonacci cuyo valor no exceda la cifra 4000000»
De Software Libre para la Enseñanza y el Aprendizaje de las Matemáticas (2010-11)
(Página creada con ''''Enunciado:''' Cada término perteneciente a la sucesión de Fibonacci se genera mediante la suma de los dos términos anteriores. Sabiendo que los dos primeros términos son …') |
|||
Línea 11: | Línea 11: | ||
En primer lugar, definimos la sucesión de Fibonacci. Para ello, definimos los valores de los dos primeros términos y, luego, definimos el término general de la sucesión: | En primer lugar, definimos la sucesión de Fibonacci. Para ello, definimos los valores de los dos primeros términos y, luego, definimos el término general de la sucesión: | ||
− | (%i1) fib1[0]:0; | + | (%i1) fib1[0]:0; |
− | (%i2) fib1[1]:1; | + | (%i2) fib1[1]:1; |
− | (%i3) fib1[n] := fib1[n-1]+fib1[n-2]; | + | (%i3) fib1[n] := fib1[n-1]+fib1[n-2]; |
Definimos, de igual forma, la variable suma con valor inicial 0, en la que iremos almacenando la suma de los términos de la sucesión. | Definimos, de igual forma, la variable suma con valor inicial 0, en la que iremos almacenando la suma de los términos de la sucesión. | ||
− | (%i4) suma:0; | + | (%i4) suma:0; |
Y, por último, escribimos un bucle que se repetirá hasta que el valor del término de la sucesión sea mayor que 4000000, y que irá sumando dichos términos mientras que cumpla la condición indicada con anterioridad: | Y, por último, escribimos un bucle que se repetirá hasta que el valor del término de la sucesión sea mayor que 4000000, y que irá sumando dichos términos mientras que cumpla la condición indicada con anterioridad: | ||
− | (%i5) for n:1 while fib1[n]<=4000000 do sum:sum + fib1[n]; | + | (%i5) for n:1 while fib1[n]<=4000000 do sum:sum + fib1[n]; sum; |
− | |||
El resultado que obtenemos es: | El resultado que obtenemos es: | ||
− | (%o5) 9227464 | + | (%o5) 9227464 |
Siendo 9227464 la suma de los n primeros términos de la sucesión de Fibonacci, cuyo valor no excede los 4000000. | Siendo 9227464 la suma de los n primeros términos de la sucesión de Fibonacci, cuyo valor no excede los 4000000. |
Revisión actual del 15:38 22 abr 2011
Enunciado: Cada término perteneciente a la sucesión de Fibonacci se genera mediante la suma de los dos términos anteriores. Sabiendo que los dos primeros términos son el 0 y el 1, los 10 primeros términos de la sucesión tienen la siguiente forma:
0, 1, 1, 2, 3, 5, 8, 13, 21, 34...
Teniendo en cuenta los términos de la sucesión de Fibonacci cuyos valores no exceden los cuatro millones, calcular la suma de dichos términos.
Solución:
En primer lugar, definimos la sucesión de Fibonacci. Para ello, definimos los valores de los dos primeros términos y, luego, definimos el término general de la sucesión:
(%i1) fib1[0]:0;
(%i2) fib1[1]:1;
(%i3) fib1[n] := fib1[n-1]+fib1[n-2];
Definimos, de igual forma, la variable suma con valor inicial 0, en la que iremos almacenando la suma de los términos de la sucesión.
(%i4) suma:0;
Y, por último, escribimos un bucle que se repetirá hasta que el valor del término de la sucesión sea mayor que 4000000, y que irá sumando dichos términos mientras que cumpla la condición indicada con anterioridad:
(%i5) for n:1 while fib1[n]<=4000000 do sum:sum + fib1[n]; sum;
El resultado que obtenemos es:
(%o5) 9227464
Siendo 9227464 la suma de los n primeros términos de la sucesión de Fibonacci, cuyo valor no excede los 4000000.