martes, 1 de mayo de 2012

Series numéricas a veces un hueso duro de roer

Las series numéricas son una de las primeras cosas que se enseñan en el colegio. En el aprendizaje de la programación también se practica un poco de series numéricas con el fin de desarrollar las habilidades de aprendizaje en los estudiantes de informática, la mayoría son muy sencillas pero existen series las cuales tienes que realizar un análisis más profundo.


Esto hace unos días una amiga me lo paso, desde aquí mis saludos Maria del Carmen, casualmente esta serie la realice en mi tiempo de estudiante hace algunos años. Debo confesar que la primera vez que se me puso en mi camino esta serie fue hace 3 años y fue un fuerte dolor de cabeza y más cuando me pedían sacar los 50 elementos de esta serie ; no obstante ahora se convirtió en un juego de niños.

   2   4    8   15   26   42   64  

Al principio podríamos realizar un pequeño análisis donde encontraremos que ninguno de los componentes de la serie tiene una relación; no obstante al realizar una observación mayor poco a poco iremos sacando a la luz ciertas coincidencias. Una buena estrategia es tener una hoja de papel o un lapicero para realizar el análisis de los componentes que están entre cada elemento de la serie.


Como vemos en la imagen no existe ninguna relación en la serie es más produce más confusión; no obstante si volvemos a realizar de nuevo un análisis de sus componentes que se encuentran en el medio, veremos una pequeña relación.


Ahora en el segundo análisis encontramos que si existe una relación y es de 1 en 1, lo cual si ayudará en nuestro trabajo.

Nuestro algoritmo a resolver este problema sería:

begin
a=1;
i=0;  // contador del while puede comenzar en 0 o en 1, pero si i=0, entonces while (i<50), si =1, entonces while(i<=50)

b=1;

// imprimimos el valor de b

print(b);

Ahora viene la parte más importante:

while(i<50)
{
a = a+i;   // el cual hará que el valor de a = a anterior + el valor de i y con ello tendremos el resultado del primer análisis o sea: 1,2,4,7,11,16,22,....

i=i+1;
b=b+a;  // con esto tendremos el resultado final del análisis: 1,2,4,8,15,26,42,64, ....

print(b);

}

Podemos realizar la prueba con esta aplicación de Java y el resultado será:


Lo viste, ahora aplicalo...

                     


0 comentarios:

Publicar un comentario