Download Práctica 7 1. Funciones En esta práctica ejercitaremos los diferentes

Document related concepts

Número de Lucas wikipedia , lookup

Sucesión de Padovan wikipedia , lookup

Número metálico wikipedia , lookup

Relación de recurrencia wikipedia , lookup

Matriz Wythoff wikipedia , lookup

Transcript
Práctica 7
1. Funciones
En esta práctica ejercitaremos los diferentes tipos de funciones creadas por usted para un fin específico
en archivos separados y la utilización o invocación de las mismas desde cualquier archivo tipo “m”.
El ejemplo sobre el que estaremos trabajando es el de la sucesión de Fibonacci la cuál es utilizada
algunas veces para el análisis de crecimiento de población de algunas especies. Esta sucesión o
números de Fibonacci (como se le llama a veces) se define como sigue:
1. S(0) = 1
2. S(1) = 1
3. S(n) = S(n-1) + S(n-2) ;
donde n es cualquier número natural mayor que 1.
Adicionalmente, se ha demostrado que cualquier número de la sucesión de Fibonacci puede ser
calculado directamente mediante la fórmula:
n 1
n 1
1 5  
1  1  5 
 
 

 2  
5  2 

 

S(n) =
Su trabajo consiste en lo siguiente:
1) Crear una función cuyo parámetro de entrada sea un número natural y que calcule el término
correspondiente de la sucesión de Fibonacci, utilizando un método recursivo (4 ptos).
2) Crear una función cuyo parámetro de entrada sea un número natural y que calcule el término
correspondiente de la sucesión de Fibonacci, utilizando un método iterativo (3 ptos).
3) Crear una función cuyo parámetro de entrada sea un número natural y que calcule el término
correspondiente de la sucesión de Fibonacci, utilizando la fórmula de arriba (1 ptos).
4) Crear un programa que reciba mediante el terminal un conjunto de 10 números que el usuario
escogerá y que invoque las tres funciones anteriores para calcular los términos correspondientes
de la sucesión de Fibonacci, reportando los resultados que arroje el uso de cada función (4 ptos).
5) Comparar dentro del programa los resultados obtenidos por los métodos 2 y 3 y de haber
discrepancias, explicarlas (1 pto).
6) Comparar dentro del programa los tiempos que toma obtener resultados para las tres funciones y
definir cuál resulta más rápido (2 pto).
7) Valerse del help de Matlab para revisar los comandos plot , hold y figure y crear dos gráficas
con las siguientes características:
a. Una debe contener los resultados arrojados por cada función para cada uno de los
números introducidos. Trate de utilizar diferente tipo de trazado para cada una a fin de
diferenciarlas lo más posible (4 ptos) .
b. La otra debe contener las diferencias obtenidas en el punto 4 para cada uno de los
números introducidos (1 pto).
Nota importante: lea bien el contenido del problema y recuerde que sus programa deben hacer lo
que se pide acá, en la forma en que se especifica en el texto, de lo contrario no tendrá nota.
Recuerde también que las puntuaciones propuestas pueden verse reducidas por problemas de
calidad de su programa en lo que respecta a uso de recursos, instrucciones innecesarias, falta
de documentación / comentarios, validación de entradas cuando haga falta, etc.