INSTITUTO TECNOLÓGICO SUPERIOR DE FELIPE 
CARRILLO PUERTO 
MATERIA: 
ESTRUCTURA DE DATOS 
UNIDAD 2: 
RECURSIVIDAD 
DOCENTE: 
MTI.NIELS HENRYK ARADA CUEVAS 
COTENIDO: 
INFORME TECNICO 
ALUMNO: 
ELIEZER BALAM SANTOS 
CARRERA: 
INGENIERÍA EN SISTEMAS COMPUTACIONALES
INTRODUCCIÓN: 
Esta es la segunda unidad de estructura de datos que al igual que la primera unidad es 
una unidad importante e interesante ya que realizamos dos programas con una nueva 
forma de programación y manejo de variables en nuestros códigos de manera que 
ahora conocemos la forma de usar arreglos y ciclos, los arreglos unidimensionales y los 
arreglos bidimensionales, vamos a mostrar el código con el cual realizamos el cálculo 
de los datos aplicando la recursividad que prácticamente es el uso de funciones donde 
existe una función en la que se vuelve a llamar a la función sí misma, pero manteniendo 
una base para que el programa pueda calcular los datos necesarios, el primer programa 
realizado se muestra la forma de calcular la factorial de un número y la segunda realiza 
la serie conocida de Fibonacci en la cual obtiene posición de numero sumando los dos 
anteriores. Esta unidad es muy corta la cual es la base e introducción a los temas de las 
siguientes unidades donde vamos a complementar el uso de la recursividad como 
también seguir usando los métodos de arreglos y ciclos.
PROGRAMA FACTORIAL DE UN NÚMERO: 
Introducción: 
El siguiente programa lo que hace es realizar el cálculo de la factorial de un número que 
prácticamente la factorial en definición teoría se refiere la multiplicación de los números 
anteriores de un número que se tiene por ejemplo la factorial de 5 es igual a 5*4*3*2*1 
todos los valores se multiplican. Ahora vamos a ver la forma de programarlo en el 
lenguaje de programación c++. 
#include <iostream> 
using namespace std; 
//Declaraciones de las funciones 
int factorial(int n); 
int main(int argc, char** argv) { 
int n; 
//Pedir datos 
cout<<"Ingrese un numero:"; 
cin>>n; 
//Llamada de la funcion factorial 
cout<<"El resultado es :"<<factorial(n); 
return (0); 
} 
//funcion factorial 
int factorial(int n){ 
if(n==0) 
return 1;
else 
return(n*factorial(n-1)); 
} 
Conclusión Programa: 
En este código del programa donde aplicamos la recursividad para calcular la factorial 
de un número, donde como ya sabemos comenzamos con la llamada de las librerías 
iostream y la de coni.h también para poder mostrar los datos utilizando el using std o 
también el namespace std; para imprimir los datos en la pantalla. Comenzamos con 
declarar la función recursiva fuera del método principal int main, para poder llamar esa 
función más adelante dentro de la función principal. En la función principal int main 
declaramos a la variable n que va ser la misma variable de la función recursiva factorial, 
ahora lo que hacemos pedimos los datos que va ser el valor de n y después imprimimos 
el valor de la factorial n, pero como el programa no sabe el valor de la factorial n, pasa 
ahora a la función factorial donde se va obtener el resultado de cierta condición si n es 
igual a cero entonces regresar 1 ya que la base de la recursividad de la función es 1, en 
caso contrario que no sea igual a cero entonces regresamos el valor de n multiplicado 
por la función factorial del valor que tenga n-1, para ir disminuyendo los valores de n y 
obtener la regla que define la factorial en matemática.
LA REGLA DE FIBONACCI. 
Introducción: 
La regla de Fibonacci es una función matemática de secuencia numérica que sigue una 
una regla de sucesión de ciertos números de donde la regla de Fibonacci lo que hace 
es tener un numero como base y buscar la posición de dicho número, el método que 
emplea es obtener el siguiente número con la suma de los dos números anteriores, el 
cual el método realizamos su programación en este lenguaje de c utilizando el método 
de recursividad. 
#include <iostream> 
using namespace std; 
int fibonacci (int f); 
int main(int argc, char *argv[]) { 
int f; 
cout<< "Inserta posicionn"; 
cin>>f; 
cout<<fibonacci (f); 
return 0; 
} 
int fibonacci (int f){ 
if ((f==1)||(f==2)) 
return (1); 
else 
return ( fibonacci (f-2)+fibonacci (f-1)); 
}
Conclusión programa: 
En conclusión sobre este programa lo que realizamos es utilizar la recursividad 
nuevamente para aplicar la solución de una regla conocida como Fibonacci, en la cual 
lo que realizamos es declarar en la primera parte debajo de la librería la función entera 
que lleva por nombre Fibonacci la cual que va tener como variable a f que representara 
la posición del número que se ingresar y que va imprimir el valor de número que se 
encuentra en esa posición. En la función principal declaramos la variable de posición f 
luego imprimimos un mensaje para pedir la posición del número el cual se va a guardar 
en la variable, después imprimimos la función Fibonacci, por el momento no hemos 
realizado la función Fibonacci por lo tanto no puede haber un valor para imprimir, 
entonces afuera de la función principal main, comenzamos a usar la función Fibonacci 
el cual declaramos un if que los que evalúa es que si f es igual a 1 tal que f sea igual 
que 2 entonces regresa 1, ya que no se puede obtener el numero si no tenemos los dos 
anteriores, de lo contrario el valor de la función Fibonacci a imprimir va ser regresar a la 
función Fibonacci con variable f restado 2 que obtener el primer número con la suma 
de la misma función con f restado 1 que va obtener el segundo valor de número a 
sumar para obtener la posición. 
CONCLUSION GENERAL: 
Como conclusión general tenemos que en esta unidad dos, que fue muy corta pero 
importante aprendimos a trabajar por un método diferente sin el uso de arreglos y ciclos 
para llegar a la solución de un problema como también comprender la lógica de 
funcionamiento de la recursividad en los dos programas que realizamos la primera de la 
factorial de un numero después pasar la regla de Fibonacci en un lenguaje de 
programación, todo lo que hemos visto hasta ahora va ser de gran utilidad a lo largo de 
nuestra formación profesional ya que a lo largo de la carrera estaremos trabajando con 
nuevos lenguajes de programación donde la lógica de programación va ser la misma 
solo con la modificación de los comandos que se van a estar utilizando, prácticamente 
la recursividad es una manera de manejar las secuencias de datos.

Informe Tecnico recursividad

  • 1.
    INSTITUTO TECNOLÓGICO SUPERIORDE FELIPE CARRILLO PUERTO MATERIA: ESTRUCTURA DE DATOS UNIDAD 2: RECURSIVIDAD DOCENTE: MTI.NIELS HENRYK ARADA CUEVAS COTENIDO: INFORME TECNICO ALUMNO: ELIEZER BALAM SANTOS CARRERA: INGENIERÍA EN SISTEMAS COMPUTACIONALES
  • 2.
    INTRODUCCIÓN: Esta esla segunda unidad de estructura de datos que al igual que la primera unidad es una unidad importante e interesante ya que realizamos dos programas con una nueva forma de programación y manejo de variables en nuestros códigos de manera que ahora conocemos la forma de usar arreglos y ciclos, los arreglos unidimensionales y los arreglos bidimensionales, vamos a mostrar el código con el cual realizamos el cálculo de los datos aplicando la recursividad que prácticamente es el uso de funciones donde existe una función en la que se vuelve a llamar a la función sí misma, pero manteniendo una base para que el programa pueda calcular los datos necesarios, el primer programa realizado se muestra la forma de calcular la factorial de un número y la segunda realiza la serie conocida de Fibonacci en la cual obtiene posición de numero sumando los dos anteriores. Esta unidad es muy corta la cual es la base e introducción a los temas de las siguientes unidades donde vamos a complementar el uso de la recursividad como también seguir usando los métodos de arreglos y ciclos.
  • 3.
    PROGRAMA FACTORIAL DEUN NÚMERO: Introducción: El siguiente programa lo que hace es realizar el cálculo de la factorial de un número que prácticamente la factorial en definición teoría se refiere la multiplicación de los números anteriores de un número que se tiene por ejemplo la factorial de 5 es igual a 5*4*3*2*1 todos los valores se multiplican. Ahora vamos a ver la forma de programarlo en el lenguaje de programación c++. #include <iostream> using namespace std; //Declaraciones de las funciones int factorial(int n); int main(int argc, char** argv) { int n; //Pedir datos cout<<"Ingrese un numero:"; cin>>n; //Llamada de la funcion factorial cout<<"El resultado es :"<<factorial(n); return (0); } //funcion factorial int factorial(int n){ if(n==0) return 1;
  • 4.
    else return(n*factorial(n-1)); } Conclusión Programa: En este código del programa donde aplicamos la recursividad para calcular la factorial de un número, donde como ya sabemos comenzamos con la llamada de las librerías iostream y la de coni.h también para poder mostrar los datos utilizando el using std o también el namespace std; para imprimir los datos en la pantalla. Comenzamos con declarar la función recursiva fuera del método principal int main, para poder llamar esa función más adelante dentro de la función principal. En la función principal int main declaramos a la variable n que va ser la misma variable de la función recursiva factorial, ahora lo que hacemos pedimos los datos que va ser el valor de n y después imprimimos el valor de la factorial n, pero como el programa no sabe el valor de la factorial n, pasa ahora a la función factorial donde se va obtener el resultado de cierta condición si n es igual a cero entonces regresar 1 ya que la base de la recursividad de la función es 1, en caso contrario que no sea igual a cero entonces regresamos el valor de n multiplicado por la función factorial del valor que tenga n-1, para ir disminuyendo los valores de n y obtener la regla que define la factorial en matemática.
  • 5.
    LA REGLA DEFIBONACCI. Introducción: La regla de Fibonacci es una función matemática de secuencia numérica que sigue una una regla de sucesión de ciertos números de donde la regla de Fibonacci lo que hace es tener un numero como base y buscar la posición de dicho número, el método que emplea es obtener el siguiente número con la suma de los dos números anteriores, el cual el método realizamos su programación en este lenguaje de c utilizando el método de recursividad. #include <iostream> using namespace std; int fibonacci (int f); int main(int argc, char *argv[]) { int f; cout<< "Inserta posicionn"; cin>>f; cout<<fibonacci (f); return 0; } int fibonacci (int f){ if ((f==1)||(f==2)) return (1); else return ( fibonacci (f-2)+fibonacci (f-1)); }
  • 6.
    Conclusión programa: Enconclusión sobre este programa lo que realizamos es utilizar la recursividad nuevamente para aplicar la solución de una regla conocida como Fibonacci, en la cual lo que realizamos es declarar en la primera parte debajo de la librería la función entera que lleva por nombre Fibonacci la cual que va tener como variable a f que representara la posición del número que se ingresar y que va imprimir el valor de número que se encuentra en esa posición. En la función principal declaramos la variable de posición f luego imprimimos un mensaje para pedir la posición del número el cual se va a guardar en la variable, después imprimimos la función Fibonacci, por el momento no hemos realizado la función Fibonacci por lo tanto no puede haber un valor para imprimir, entonces afuera de la función principal main, comenzamos a usar la función Fibonacci el cual declaramos un if que los que evalúa es que si f es igual a 1 tal que f sea igual que 2 entonces regresa 1, ya que no se puede obtener el numero si no tenemos los dos anteriores, de lo contrario el valor de la función Fibonacci a imprimir va ser regresar a la función Fibonacci con variable f restado 2 que obtener el primer número con la suma de la misma función con f restado 1 que va obtener el segundo valor de número a sumar para obtener la posición. CONCLUSION GENERAL: Como conclusión general tenemos que en esta unidad dos, que fue muy corta pero importante aprendimos a trabajar por un método diferente sin el uso de arreglos y ciclos para llegar a la solución de un problema como también comprender la lógica de funcionamiento de la recursividad en los dos programas que realizamos la primera de la factorial de un numero después pasar la regla de Fibonacci en un lenguaje de programación, todo lo que hemos visto hasta ahora va ser de gran utilidad a lo largo de nuestra formación profesional ya que a lo largo de la carrera estaremos trabajando con nuevos lenguajes de programación donde la lógica de programación va ser la misma solo con la modificación de los comandos que se van a estar utilizando, prácticamente la recursividad es una manera de manejar las secuencias de datos.