miércoles, 31 de marzo de 2010

Proyecto 3 "Sucesion de Fibonacci" (resubido)

Bueno para comenzar, me toco explicar el tema "Numeros de fibonacci" junto a mis compañeros Gerardo Ossio, Claudia Lozano y Rocio Solis.

En breve explicare lo que entendi lo que es Algoritmos Recursivos e Iterativos, pues es en lo que se basaba todo el proyecto. Lo que entendi fue:

Conceptos:

Algoritmos Recursivos:
es cuando un problema se puede simplificar (dividir) en partes mas pequeñas para resolverlo. Es como el refran "Divide y venceras" (que es lo que me acuerdo que nos dijo la Profe Tania cuando le toco dar clase) y nos puso el ejemplo de los numeros factoriales, en ese caso tuvimos que sacar el factorial de 5 y dividimos el problema hasta la suma de factoriales que sabiamos de antemano.

Bueno para dar un ejemplo propio, tuve que investigar el de Fibonacci, un ejemplo facil es como sacara el numero fib(6)=8.
El problema se podria dividir como

fib(6)=fib(4)+fib(5)

a su vez podriamos dividir el fib(4), entonces nos quedaria:

fib(6)=fib(2)+fib(3)+fib(5)

y tambien podriamos dividir el fib de 2, quedaria:

fib(6)=fib(1)+fib(2)+fib(3)+fib(5)

se podria decir

fib(6)=(0)+(1)+(1+1)+(2+3)=8


es es un ejemplo, ya que dividimos (simplificamos) los terminos hasta saber unas sumas mas faciles, y resolvimos el problema.



Algoritmo Iterativo:
Se caracterizan por ejecutarse mediante ciclos, son muy utiles para cuando se necesita hacer una repeticion de "n" veces de una tarea.

En el ejemplo de Fibonacci se podria hacer una iteracion al decir:


i:=1;

j:=0;
para k desde 1 hasta n hacer

j:=i+j;

i:=j-i;

fpara

devolver j;

esto es, que si le damos valores de 0 y 1, los sumara y devolvera el valor "k" ,sustituira el valor "k" en "j" y el de "j" en "i", luego volvera a sumar y sustituir "n" veces.


Cuando usar Recursivo o Iterativo


Podriamos decir que se usa recursivo cuando son problemas dificiles que no se puede hacer en forma Iterativa y que su dificultad nos haga dividirlo en pasos mas simples.

Podriamos usar el iterativo cuando el problema planteado se pueda hacer mediante pasos repetitivos que nos haga ahorar tiempo y memoria.

En nuestro ejemplo de "Secuencia de Fibonnacci" es evidente que tedriamos que usar la forma iterativa, ya que en la forma recursiva (como vimos en el ejemplo de fib(6)) tuvimos que descomponer, volver a descomponer y asi hasta llegar a una operacion que nos daria el resultado, eso llevo tiempo y si fuera en el computador ademas nos tomaria memoria ya que solo imaginar hacer el fib(100), tendria que hacer mas operaciones y mas tiempo, mientras de la manera iterativa solo haria una simple suma, sustituiria, volveria a hacer suma etc... ya como solo nos interesan los 2 ultimos numeros poara la suma no tendriamos que guardarlos siempre en la memoria, es reduciria tanto tiempo como memoria.


Trabajo Grupal


Yo diria que falto comunicacion al principio por compromisos que cada uno tuvimos en las 2 semanas para hacer el trabajo, pero al final cuando ya nos pusimos de acuerdo me di cuenta que mis compañeros pueden ser personas de las cuales aprender (por asi decirlo), como por ejemplo al momento de buscar informacion del trabajo, si tenia alguna duda alguno de ellos me explica y viceversa, yo diria que se puede aprender mucho solo con escuchar a otras personas.

He poder decir que ne los ultimos dias hubo demasiada comunicacion.


Contribucion del trabajo


Principalmente todos tuvimos que buscar informacion de todos los temas, pero del cual me enfoque mas es sobre la complejidad y el analisis del problema.


Como comparo lo que aporte, a lo que aportaron los demas?


Pues yo diria que todos aportamos algo muy importante, no se podria decir "yo aporte mas o yo aporte menos", cada quien hizo su esfuerzo en buscar informacion y opinar cual era buena y mala. Por suerte en el proyecto se puede observar una contribucion de cada uno, nadie se quedo sin contribuir.


Que se podria mejorar en el futuro...


Solo un poco la comunicacion en los primeros dias del proyecto, porque la verdad no nos gusta dejarlo todo para el final (que en esta ocasion fue diferente ya que hubo examenes y compromisos personales que nos lo impidieron tantillo)


Diapositiva

http://www.megaupload.com/?d=GM99HPNF


ya como final, todo lo que aqui se leyo fue lo que escribi personalmente y lo que entendi, si creen que se me paso algo o de plano me quivoque en una definicion haganmelo saber, prefiero que me digan y parecer tonto por 5 min a no entender nunca y ser tonto para siempre jeje

0 comentarios: