Programación Específica > Diseño de Algoritmos

 algoritmo para series numericas

(1/1)

celuti:
Hola:
¿Alguien sabría como diseñar un algoritmo que almacene en cada posición de un vector el resultado de la serie?
1, 1/2, 1/(2+1/3), 1/(2+1/(3+1/4)), 1/(2+1/(3+1/(4+1/5))),...,?
Muchas gracias.
Saludos.

Nebire:
El algortmo subyacente son 2 simples bucles...
Se resuelve abriendo el bucle externo en un ciclo creciente (recorriendo el vector) y el bucle interno iniiciando el cálculo desde la división más profunda hasta la primera (bucle regresivo)




--- Código: Text --- Cantidad = 10  Matriz(Cantidad-1)  designa una matriz de 10 elementos.n = 1Matriz(0)= nhacer: Mientras n < (Cantidad -1)     Incrementar n     Cuenta = n      div = ( 1 / n )  la priemra división se realiza fuera del bucle para inicializar la división en su valor más 'profundo'     Hacer  Mientras Cuenta > 1           Div = (1 / (Cuenta + Div))           Decrementar Cuenta     repetir     Matriz(n) = Divrepertir Nota que 'div' y la propia 'matriz' tendrás que declararlo como double, de lo contrario a partir de cierto índice de la matriz la diferencia entre 2 elementos consecutivos será tan pequeña que puede perderse si se emplea un tipo de datos sin la debida precisión.

La verdad es que el algoritmo no ofrece ninguna cmplejidad y todo el mundo debería ser capaz de resolverlo acaso con un poco más de tiempo invertido...

celuti:
Muchas gracias por tu ayuda. Me ha sido de mucha utilidad.
Un saludo.

Navegación

[0] Índice de Mensajes

Ir a la versión completa