Document related concepts
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.