SlideShare una empresa de Scribd logo
1 de 5
Instituto Tecnológico Superior de Felipe Carrillo Puerto 
INGENIERÍA EN SISTEMAS COMPUTACIONALES 
ESTRUCTURA DE DATOS 
Informe técnico de la unidad 2 
Recursividad 
DOCENTE 
C.Dr. Niels Henryk Aranda Cuevas 
ALUMNO 
Sergio Jesús Sabido Díaz 
Felipe Carrillo Puerto, Q.Roo. a 2 de octubre de 2014
RECURSIVIDAD 
La recursividad, es un concepto bastante importante y bien básico de la programación. 
Sin embargo es bastante difícil de asimilar al principio. Se supone que es algo que se va 
entendiendo con práctica y tiempo 
"es una función que se llama así misma" el objetivo de esta unidad fue comprender 
que es la recursividad y posteriormente programarla. 
Es importante mencionar que cuando existe recursividad me debo olvidar de los ciclos, 
¿Por qué? Por que la recursividad trabaja con secuencias . 
Para ejemplo de que es la recursividad, seria codificar un programa que te genere el 
factorial de un número y la serie Fibonacci.
EJEMPLO 
Obtener el factorial de un número, programa echo en C++ 
#include <iostream> 
using namespace std; 
int factorial(int n); 
int main(int argc, char *argv[]) { 
int p; 
cout << "este programa sirve para sacar el factorial de un numero 
entero"<<endl<<endl; 
cout <<"Por favor ingrese su numero"<<endl; 
cin >> p; 
cout <<"el resultado es: "<<factorial(p); 
return 0; 
} 
int factorial(int n){ 
if(n==0){ 
return(1); 
} 
else { 
return(n*factorial(n-1)); 
} 
}
EJEMPLO 2 
Serie Fibonacci, programa echo en C++ 
#include <iostream> 
using namespace std; 
int fibonacci(int a); 
int main(int argc, char *argv[]) { 
int p; 
cout <<"Este programa funciona como la serie fibonacci"<<endl<<endl; 
cout <<"por favor ingrese un numero"<<endl<<endl; 
cin >> p; 
cout <<"El resultado de la serie es: "<<endl<<fibonacci(p); 
return 0; 
} 
int fibonacci(int a){ 
if((a==1)||(a==2)){ 
return (1); 
} 
else{ 
return(fibonacci(a-1)+fibonacci(a-2)); 
} 
}
CONCLUSIÓN 
La primera llamada al subprograma se plantea sobre un problema de tamaño u orden N, cada nueva ejecución recurrente del 
mismo se planteará sobre problemas, de igual naturaleza que el original, pero de un tamaño menor que N. De esta forma, al ir 
reduciendo progresivamente la complejidad del problema que resolver, llegará un momento en que su resolución sea más o 
menos trivial (o, al menos, suficientemente manejable como para resolverlo de forma no recursiva). En esa situación diremos 
que estamos ante un caso base de la recursividad. 
Las claves para construir un subprograma recurrente son: 
 Cada llamada recurrente se debería definir sobre un problema de menor complejidad (algo más fácil de resolver). 
 Ha de existir al menos un caso base para evitar que la recurrencia sea infinita. 
Es frecuente que los algoritmos recurrentes sean más ineficientes en tiempo que los iterativos aunque suelen ser mucho más 
breves en espacio. 
En esta unidad se pudo observar que lo anterior es importante por que permite que un programador ver que existen 
distintas maneras de programar secuencias y no solamente con ciclos, la recursividad puede simplificar código y hacer más 
estética y legible nuestro programa, es importante mencionar que los programas anteriores son claros ejemplos de cómo se 
utiliza la recursividad en programación siendo así una herramienta importante a la hora de generar softwares con problemáticas 
similares, llevamos a cabo el razonamiento lógico para poder entender el problema y posteriormente codificarlo, explicamos 
cada uno de ellos,

Más contenido relacionado

La actualidad más candente

Notación infija postfija
Notación infija postfijaNotación infija postfija
Notación infija postfijaOmarzingm
 
Programacion orientada a objetos Unidad 1-intro al paradigma poo
Programacion orientada a objetos Unidad 1-intro al paradigma pooProgramacion orientada a objetos Unidad 1-intro al paradigma poo
Programacion orientada a objetos Unidad 1-intro al paradigma pooJosé Antonio Sandoval Acosta
 
Unidad 4 est. dat. recursividad
Unidad 4  est. dat. recursividadUnidad 4  est. dat. recursividad
Unidad 4 est. dat. recursividadrehoscript
 
Estructura de datos - Unidad 1: Introducción a las estructuras de datos
Estructura de datos - Unidad 1: Introducción a las estructuras de datosEstructura de datos - Unidad 1: Introducción a las estructuras de datos
Estructura de datos - Unidad 1: Introducción a las estructuras de datosJosé Antonio Sandoval Acosta
 
2 ejercicio de access grado 11-1
2 ejercicio de access grado 11-12 ejercicio de access grado 11-1
2 ejercicio de access grado 11-1shernanva
 
Tipos abstractos de datos
Tipos abstractos de datosTipos abstractos de datos
Tipos abstractos de datosJose Armando
 
Algoritmo
AlgoritmoAlgoritmo
Algoritmodayanib
 
Función Hash: metodos de división y de medio Cuadrado.
Función Hash: metodos de división y de medio Cuadrado.Función Hash: metodos de división y de medio Cuadrado.
Función Hash: metodos de división y de medio Cuadrado.Ana Castro
 
INYECCION SQL(SEGURIDAD DE LA INFORMACION)
INYECCION SQL(SEGURIDAD DE LA INFORMACION)INYECCION SQL(SEGURIDAD DE LA INFORMACION)
INYECCION SQL(SEGURIDAD DE LA INFORMACION)toshko86
 
Diccionario de datos
Diccionario de datosDiccionario de datos
Diccionario de datosJorge Garcia
 

La actualidad más candente (20)

Código intermedio
Código intermedioCódigo intermedio
Código intermedio
 
Notación infija postfija
Notación infija postfijaNotación infija postfija
Notación infija postfija
 
Programacion orientada a objetos Unidad 1-intro al paradigma poo
Programacion orientada a objetos Unidad 1-intro al paradigma pooProgramacion orientada a objetos Unidad 1-intro al paradigma poo
Programacion orientada a objetos Unidad 1-intro al paradigma poo
 
Estructura de Datos - Unidad II Recursividad
Estructura de Datos - Unidad II RecursividadEstructura de Datos - Unidad II Recursividad
Estructura de Datos - Unidad II Recursividad
 
Tipos de listas en estructura de datos
Tipos de listas en estructura de datosTipos de listas en estructura de datos
Tipos de listas en estructura de datos
 
Unidad 4 est. dat. recursividad
Unidad 4  est. dat. recursividadUnidad 4  est. dat. recursividad
Unidad 4 est. dat. recursividad
 
Estructura de datos - Unidad 1: Introducción a las estructuras de datos
Estructura de datos - Unidad 1: Introducción a las estructuras de datosEstructura de datos - Unidad 1: Introducción a las estructuras de datos
Estructura de datos - Unidad 1: Introducción a las estructuras de datos
 
2 ejercicio de access grado 11-1
2 ejercicio de access grado 11-12 ejercicio de access grado 11-1
2 ejercicio de access grado 11-1
 
Tipos abstractos de datos
Tipos abstractos de datosTipos abstractos de datos
Tipos abstractos de datos
 
POO U6 - Ejemplo de archivos de texto en C#
POO U6 - Ejemplo de archivos de texto en C#POO U6 - Ejemplo de archivos de texto en C#
POO U6 - Ejemplo de archivos de texto en C#
 
Estructura de Datos - Unidad 6 Metodos de busqueda
Estructura de Datos - Unidad 6 Metodos de busquedaEstructura de Datos - Unidad 6 Metodos de busqueda
Estructura de Datos - Unidad 6 Metodos de busqueda
 
Algoritmo
AlgoritmoAlgoritmo
Algoritmo
 
Función Hash: metodos de división y de medio Cuadrado.
Función Hash: metodos de división y de medio Cuadrado.Función Hash: metodos de división y de medio Cuadrado.
Función Hash: metodos de división y de medio Cuadrado.
 
Rup
RupRup
Rup
 
Prueba de Caja Blanca
Prueba de Caja BlancaPrueba de Caja Blanca
Prueba de Caja Blanca
 
Constantes en C
Constantes en CConstantes en C
Constantes en C
 
INYECCION SQL(SEGURIDAD DE LA INFORMACION)
INYECCION SQL(SEGURIDAD DE LA INFORMACION)INYECCION SQL(SEGURIDAD DE LA INFORMACION)
INYECCION SQL(SEGURIDAD DE LA INFORMACION)
 
Windows forms c# visual basic .net ejercicios
Windows forms c# visual basic .net ejerciciosWindows forms c# visual basic .net ejercicios
Windows forms c# visual basic .net ejercicios
 
Diccionario de datos
Diccionario de datosDiccionario de datos
Diccionario de datos
 
Programacion Orientada a Objetos
Programacion Orientada a ObjetosProgramacion Orientada a Objetos
Programacion Orientada a Objetos
 

Destacado

Recursividad
RecursividadRecursividad
Recursividadbetzy
 
Estructura de Datos: Recursividad
Estructura de Datos: RecursividadEstructura de Datos: Recursividad
Estructura de Datos: RecursividadYanahui Bc
 
Algoritmos recursivos
Algoritmos recursivosAlgoritmos recursivos
Algoritmos recursivosfeytho
 
Cómo podemos entender la ciencia yoisy
Cómo podemos entender la ciencia yoisyCómo podemos entender la ciencia yoisy
Cómo podemos entender la ciencia yoisyyoisysanchezmiranda
 
La virtud paciencia
La virtud pacienciaLa virtud paciencia
La virtud pacienciaSanty Bedoya
 
7.modelado de los requerimientos escenarios y clases
7.modelado de los requerimientos  escenarios y clases7.modelado de los requerimientos  escenarios y clases
7.modelado de los requerimientos escenarios y clasesRamiro Estigarribia Canese
 
La paciencia diapositivas
La paciencia diapositivasLa paciencia diapositivas
La paciencia diapositivasRocio2769
 
Programación Modular
Programación ModularProgramación Modular
Programación Modularguestefc95b
 
Metodología de la Investigación - Unidad 3 (Parte 1)
Metodología de la Investigación - Unidad 3 (Parte 1)Metodología de la Investigación - Unidad 3 (Parte 1)
Metodología de la Investigación - Unidad 3 (Parte 1)Ricardo Cuberos Mejía
 
Razones trigonométricas con la calculadora científica
Razones trigonométricas con la calculadora científicaRazones trigonométricas con la calculadora científica
Razones trigonométricas con la calculadora científicaJesús Fernández
 
Metodo de Integracion por Recurrencia Y Ecuacion de Bernoulli
Metodo de Integracion por Recurrencia Y Ecuacion de BernoulliMetodo de Integracion por Recurrencia Y Ecuacion de Bernoulli
Metodo de Integracion por Recurrencia Y Ecuacion de BernoulliFrancisco Xavier
 
PROGRAMAS EN DEV C++
PROGRAMAS EN DEV C++PROGRAMAS EN DEV C++
PROGRAMAS EN DEV C++KarenAlmanza
 

Destacado (20)

6.funciones y recursividad en c++
6.funciones y recursividad en c++6.funciones y recursividad en c++
6.funciones y recursividad en c++
 
Recursividad
RecursividadRecursividad
Recursividad
 
Recursividad
RecursividadRecursividad
Recursividad
 
Estructura de Datos: Recursividad
Estructura de Datos: RecursividadEstructura de Datos: Recursividad
Estructura de Datos: Recursividad
 
Algoritmos recursivos
Algoritmos recursivosAlgoritmos recursivos
Algoritmos recursivos
 
2.1 recursividad
2.1 recursividad2.1 recursividad
2.1 recursividad
 
Algoritmos recursivos
Algoritmos recursivosAlgoritmos recursivos
Algoritmos recursivos
 
Cómo podemos entender la ciencia yoisy
Cómo podemos entender la ciencia yoisyCómo podemos entender la ciencia yoisy
Cómo podemos entender la ciencia yoisy
 
Unidad 4, investigacion
Unidad 4, investigacionUnidad 4, investigacion
Unidad 4, investigacion
 
La virtud paciencia
La virtud pacienciaLa virtud paciencia
La virtud paciencia
 
Recursividad en POO - Java
Recursividad en POO - JavaRecursividad en POO - Java
Recursividad en POO - Java
 
7.modelado de los requerimientos escenarios y clases
7.modelado de los requerimientos  escenarios y clases7.modelado de los requerimientos  escenarios y clases
7.modelado de los requerimientos escenarios y clases
 
La paciencia diapositivas
La paciencia diapositivasLa paciencia diapositivas
La paciencia diapositivas
 
Programación Modular
Programación ModularProgramación Modular
Programación Modular
 
Paciencia
PacienciaPaciencia
Paciencia
 
Metodología de la Investigación - Unidad 3 (Parte 1)
Metodología de la Investigación - Unidad 3 (Parte 1)Metodología de la Investigación - Unidad 3 (Parte 1)
Metodología de la Investigación - Unidad 3 (Parte 1)
 
Razones trigonométricas con la calculadora científica
Razones trigonométricas con la calculadora científicaRazones trigonométricas con la calculadora científica
Razones trigonométricas con la calculadora científica
 
Metodo de Integracion por Recurrencia Y Ecuacion de Bernoulli
Metodo de Integracion por Recurrencia Y Ecuacion de BernoulliMetodo de Integracion por Recurrencia Y Ecuacion de Bernoulli
Metodo de Integracion por Recurrencia Y Ecuacion de Bernoulli
 
Programación modular
Programación modularProgramación modular
Programación modular
 
PROGRAMAS EN DEV C++
PROGRAMAS EN DEV C++PROGRAMAS EN DEV C++
PROGRAMAS EN DEV C++
 

Similar a RECURSIVIDAD C++

Recursividad2019
Recursividad2019Recursividad2019
Recursividad2019difersld
 
Informe Técnico - Recursividad Unidad 2 (Rubi Veronica)
Informe Técnico - Recursividad Unidad 2 (Rubi Veronica)Informe Técnico - Recursividad Unidad 2 (Rubi Veronica)
Informe Técnico - Recursividad Unidad 2 (Rubi Veronica)Rubi Veronica Chimal Cuxin
 
Eficiencia de algoritmos - Vanessa Ramirez
Eficiencia de algoritmos - Vanessa RamirezEficiencia de algoritmos - Vanessa Ramirez
Eficiencia de algoritmos - Vanessa RamirezVanessa Ramirez
 
ESTRUCTURA DE DATOS
ESTRUCTURA DE DATOSESTRUCTURA DE DATOS
ESTRUCTURA DE DATOSIsai Vazquez
 
Conceptos básicos de programación y el entorno gráfico de pseint (1)
Conceptos básicos de programación  y  el entorno gráfico de pseint (1)Conceptos básicos de programación  y  el entorno gráfico de pseint (1)
Conceptos básicos de programación y el entorno gráfico de pseint (1)keisy vargas
 
Conceptos básicos de programación y el entorno gráfico de pseint (1)
Conceptos básicos de programación  y  el entorno gráfico de pseint (1)Conceptos básicos de programación  y  el entorno gráfico de pseint (1)
Conceptos básicos de programación y el entorno gráfico de pseint (1)JeanMarco13
 
Pseudocodigo con ejemplos
Pseudocodigo con ejemplosPseudocodigo con ejemplos
Pseudocodigo con ejemplosisabel-fcsyp
 
Funciones y procedimientos
Funciones y procedimientosFunciones y procedimientos
Funciones y procedimientosRichard Robalino
 
Programación estructurada
Programación estructuradaProgramación estructurada
Programación estructuradaMariannis Ortega
 
Programación estructurada
Programación estructuradaProgramación estructurada
Programación estructuradaMariannis Ortega
 
Lec11 metodos
Lec11 metodosLec11 metodos
Lec11 metodoshtmrk
 

Similar a RECURSIVIDAD C++ (20)

Algoritmo utilizando pseudolenguaje
Algoritmo utilizando pseudolenguajeAlgoritmo utilizando pseudolenguaje
Algoritmo utilizando pseudolenguaje
 
Recursividad2019
Recursividad2019Recursividad2019
Recursividad2019
 
NIVEL DE PROGRAMACIÓN WEB INTRODUCCIÓN
NIVEL DE PROGRAMACIÓN WEB INTRODUCCIÓNNIVEL DE PROGRAMACIÓN WEB INTRODUCCIÓN
NIVEL DE PROGRAMACIÓN WEB INTRODUCCIÓN
 
TRABAJO FINAL PROGRAMACIÓN.pdf
TRABAJO FINAL PROGRAMACIÓN.pdfTRABAJO FINAL PROGRAMACIÓN.pdf
TRABAJO FINAL PROGRAMACIÓN.pdf
 
Informe Técnico - Recursividad Unidad 2 (Rubi Veronica)
Informe Técnico - Recursividad Unidad 2 (Rubi Veronica)Informe Técnico - Recursividad Unidad 2 (Rubi Veronica)
Informe Técnico - Recursividad Unidad 2 (Rubi Veronica)
 
Funciones recursivas en C++
Funciones recursivas en C++Funciones recursivas en C++
Funciones recursivas en C++
 
Eficiencia de algoritmos - Vanessa Ramirez
Eficiencia de algoritmos - Vanessa RamirezEficiencia de algoritmos - Vanessa Ramirez
Eficiencia de algoritmos - Vanessa Ramirez
 
ESTRUCTURA DE DATOS
ESTRUCTURA DE DATOSESTRUCTURA DE DATOS
ESTRUCTURA DE DATOS
 
JAVA ciclos (FOR Y WHILE)
JAVA ciclos  (FOR Y WHILE)JAVA ciclos  (FOR Y WHILE)
JAVA ciclos (FOR Y WHILE)
 
Conceptos básicos de programación y el entorno gráfico de pseint (1)
Conceptos básicos de programación  y  el entorno gráfico de pseint (1)Conceptos básicos de programación  y  el entorno gráfico de pseint (1)
Conceptos básicos de programación y el entorno gráfico de pseint (1)
 
Conceptos básicos de programación y el entorno gráfico de pseint (1)
Conceptos básicos de programación  y  el entorno gráfico de pseint (1)Conceptos básicos de programación  y  el entorno gráfico de pseint (1)
Conceptos básicos de programación y el entorno gráfico de pseint (1)
 
Pseudocodigo con ejemplos
Pseudocodigo con ejemplosPseudocodigo con ejemplos
Pseudocodigo con ejemplos
 
Funciones y procedimientos
Funciones y procedimientosFunciones y procedimientos
Funciones y procedimientos
 
Parte i curso c
Parte i curso cParte i curso c
Parte i curso c
 
Unidad 2 curso c
Unidad 2 curso cUnidad 2 curso c
Unidad 2 curso c
 
Estructura de datos - Unidad 2: Recursividad
Estructura de datos - Unidad 2: Recursividad Estructura de datos - Unidad 2: Recursividad
Estructura de datos - Unidad 2: Recursividad
 
Programación estructurada
Programación estructuradaProgramación estructurada
Programación estructurada
 
Programación estructurada
Programación estructuradaProgramación estructurada
Programación estructurada
 
RECURSIVIDAD
RECURSIVIDADRECURSIVIDAD
RECURSIVIDAD
 
Lec11 metodos
Lec11 metodosLec11 metodos
Lec11 metodos
 

Último

Elaboración de la estructura del ADN y ARN en papel.pdf
Elaboración de la estructura del ADN y ARN en papel.pdfElaboración de la estructura del ADN y ARN en papel.pdf
Elaboración de la estructura del ADN y ARN en papel.pdfKEVINYOICIAQUINOSORI
 
libro de ingeniería de petróleos y operaciones
libro de ingeniería de petróleos y operacioneslibro de ingeniería de petróleos y operaciones
libro de ingeniería de petróleos y operacionesRamon Bartolozzi
 
CALCULO SISTEMA DE PUESTA A TIERRA PARA BAJA TENSION Y MEDIA TENSION
CALCULO SISTEMA DE PUESTA A TIERRA PARA BAJA TENSION Y MEDIA TENSIONCALCULO SISTEMA DE PUESTA A TIERRA PARA BAJA TENSION Y MEDIA TENSION
CALCULO SISTEMA DE PUESTA A TIERRA PARA BAJA TENSION Y MEDIA TENSIONJuan Carlos Meza Molina
 
Sistema de lubricación para motores de combustión interna
Sistema de lubricación para motores de combustión internaSistema de lubricación para motores de combustión interna
Sistema de lubricación para motores de combustión internamengual57
 
PostgreSQL on Kubernetes Using GitOps and ArgoCD
PostgreSQL on Kubernetes Using GitOps and ArgoCDPostgreSQL on Kubernetes Using GitOps and ArgoCD
PostgreSQL on Kubernetes Using GitOps and ArgoCDEdith Puclla
 
LA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdf
LA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdfLA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdf
LA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdfbcondort
 
UNIDAD II 2.pdf ingenieria civil lima upn
UNIDAD  II 2.pdf ingenieria civil lima upnUNIDAD  II 2.pdf ingenieria civil lima upn
UNIDAD II 2.pdf ingenieria civil lima upnDayronCernaYupanquiy
 
2. Cristaloquimica. ingenieria geologica
2. Cristaloquimica. ingenieria geologica2. Cristaloquimica. ingenieria geologica
2. Cristaloquimica. ingenieria geologicaJUDITHYEMELINHUARIPA
 
QUIMICA GENERAL UNIVERSIDAD TECNOLOGICA DEL PERU
QUIMICA GENERAL UNIVERSIDAD TECNOLOGICA DEL PERUQUIMICA GENERAL UNIVERSIDAD TECNOLOGICA DEL PERU
QUIMICA GENERAL UNIVERSIDAD TECNOLOGICA DEL PERUManuelSosa83
 
PERFORACIÓN Y VOLADURA EN MINERÍA APLICADO
PERFORACIÓN Y VOLADURA EN MINERÍA APLICADOPERFORACIÓN Y VOLADURA EN MINERÍA APLICADO
PERFORACIÓN Y VOLADURA EN MINERÍA APLICADOFritz Rebaza Latoche
 
nomenclatura de equipo electrico en subestaciones
nomenclatura de equipo electrico en subestacionesnomenclatura de equipo electrico en subestaciones
nomenclatura de equipo electrico en subestacionesCarlosMeraz16
 
Tippens fisica 7eDIAPOSITIVAS TIPENS Tippens_fisica_7e_diapositivas_33.ppt
Tippens fisica 7eDIAPOSITIVAS TIPENS Tippens_fisica_7e_diapositivas_33.pptTippens fisica 7eDIAPOSITIVAS TIPENS Tippens_fisica_7e_diapositivas_33.ppt
Tippens fisica 7eDIAPOSITIVAS TIPENS Tippens_fisica_7e_diapositivas_33.pptNombre Apellidos
 
INTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICA
INTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICAINTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICA
INTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICAJOSLUISCALLATAENRIQU
 
Six Sigma Process and the dmaic metodo process
Six Sigma Process and the dmaic metodo processSix Sigma Process and the dmaic metodo process
Six Sigma Process and the dmaic metodo processbarom
 
NTP- Determinación de Cloruros en suelos y agregados (1) (1).pptx
NTP- Determinación de Cloruros  en suelos y agregados (1) (1).pptxNTP- Determinación de Cloruros  en suelos y agregados (1) (1).pptx
NTP- Determinación de Cloruros en suelos y agregados (1) (1).pptxBRAYANJOSEPTSANJINEZ
 
Presentacion de la ganaderia en la región
Presentacion de la ganaderia en la regiónPresentacion de la ganaderia en la región
Presentacion de la ganaderia en la regiónmaz12629
 
Ficha Tecnica de Ladrillos de Tabique de diferentes modelos
Ficha Tecnica de Ladrillos de Tabique de diferentes modelosFicha Tecnica de Ladrillos de Tabique de diferentes modelos
Ficha Tecnica de Ladrillos de Tabique de diferentes modelosRamiroCruzSalazar
 
27311861-Cuencas-sedimentarias-en-Colombia.ppt
27311861-Cuencas-sedimentarias-en-Colombia.ppt27311861-Cuencas-sedimentarias-en-Colombia.ppt
27311861-Cuencas-sedimentarias-en-Colombia.pptjacnuevarisaralda22
 
Tinciones simples en el laboratorio de microbiología
Tinciones simples en el laboratorio de microbiologíaTinciones simples en el laboratorio de microbiología
Tinciones simples en el laboratorio de microbiologíaAlexanderimanolLencr
 
ANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZ
ANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZ
ANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZgustavoiashalom
 

Último (20)

Elaboración de la estructura del ADN y ARN en papel.pdf
Elaboración de la estructura del ADN y ARN en papel.pdfElaboración de la estructura del ADN y ARN en papel.pdf
Elaboración de la estructura del ADN y ARN en papel.pdf
 
libro de ingeniería de petróleos y operaciones
libro de ingeniería de petróleos y operacioneslibro de ingeniería de petróleos y operaciones
libro de ingeniería de petróleos y operaciones
 
CALCULO SISTEMA DE PUESTA A TIERRA PARA BAJA TENSION Y MEDIA TENSION
CALCULO SISTEMA DE PUESTA A TIERRA PARA BAJA TENSION Y MEDIA TENSIONCALCULO SISTEMA DE PUESTA A TIERRA PARA BAJA TENSION Y MEDIA TENSION
CALCULO SISTEMA DE PUESTA A TIERRA PARA BAJA TENSION Y MEDIA TENSION
 
Sistema de lubricación para motores de combustión interna
Sistema de lubricación para motores de combustión internaSistema de lubricación para motores de combustión interna
Sistema de lubricación para motores de combustión interna
 
PostgreSQL on Kubernetes Using GitOps and ArgoCD
PostgreSQL on Kubernetes Using GitOps and ArgoCDPostgreSQL on Kubernetes Using GitOps and ArgoCD
PostgreSQL on Kubernetes Using GitOps and ArgoCD
 
LA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdf
LA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdfLA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdf
LA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdf
 
UNIDAD II 2.pdf ingenieria civil lima upn
UNIDAD  II 2.pdf ingenieria civil lima upnUNIDAD  II 2.pdf ingenieria civil lima upn
UNIDAD II 2.pdf ingenieria civil lima upn
 
2. Cristaloquimica. ingenieria geologica
2. Cristaloquimica. ingenieria geologica2. Cristaloquimica. ingenieria geologica
2. Cristaloquimica. ingenieria geologica
 
QUIMICA GENERAL UNIVERSIDAD TECNOLOGICA DEL PERU
QUIMICA GENERAL UNIVERSIDAD TECNOLOGICA DEL PERUQUIMICA GENERAL UNIVERSIDAD TECNOLOGICA DEL PERU
QUIMICA GENERAL UNIVERSIDAD TECNOLOGICA DEL PERU
 
PERFORACIÓN Y VOLADURA EN MINERÍA APLICADO
PERFORACIÓN Y VOLADURA EN MINERÍA APLICADOPERFORACIÓN Y VOLADURA EN MINERÍA APLICADO
PERFORACIÓN Y VOLADURA EN MINERÍA APLICADO
 
nomenclatura de equipo electrico en subestaciones
nomenclatura de equipo electrico en subestacionesnomenclatura de equipo electrico en subestaciones
nomenclatura de equipo electrico en subestaciones
 
Tippens fisica 7eDIAPOSITIVAS TIPENS Tippens_fisica_7e_diapositivas_33.ppt
Tippens fisica 7eDIAPOSITIVAS TIPENS Tippens_fisica_7e_diapositivas_33.pptTippens fisica 7eDIAPOSITIVAS TIPENS Tippens_fisica_7e_diapositivas_33.ppt
Tippens fisica 7eDIAPOSITIVAS TIPENS Tippens_fisica_7e_diapositivas_33.ppt
 
INTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICA
INTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICAINTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICA
INTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICA
 
Six Sigma Process and the dmaic metodo process
Six Sigma Process and the dmaic metodo processSix Sigma Process and the dmaic metodo process
Six Sigma Process and the dmaic metodo process
 
NTP- Determinación de Cloruros en suelos y agregados (1) (1).pptx
NTP- Determinación de Cloruros  en suelos y agregados (1) (1).pptxNTP- Determinación de Cloruros  en suelos y agregados (1) (1).pptx
NTP- Determinación de Cloruros en suelos y agregados (1) (1).pptx
 
Presentacion de la ganaderia en la región
Presentacion de la ganaderia en la regiónPresentacion de la ganaderia en la región
Presentacion de la ganaderia en la región
 
Ficha Tecnica de Ladrillos de Tabique de diferentes modelos
Ficha Tecnica de Ladrillos de Tabique de diferentes modelosFicha Tecnica de Ladrillos de Tabique de diferentes modelos
Ficha Tecnica de Ladrillos de Tabique de diferentes modelos
 
27311861-Cuencas-sedimentarias-en-Colombia.ppt
27311861-Cuencas-sedimentarias-en-Colombia.ppt27311861-Cuencas-sedimentarias-en-Colombia.ppt
27311861-Cuencas-sedimentarias-en-Colombia.ppt
 
Tinciones simples en el laboratorio de microbiología
Tinciones simples en el laboratorio de microbiologíaTinciones simples en el laboratorio de microbiología
Tinciones simples en el laboratorio de microbiología
 
ANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZ
ANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZ
ANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZ
 

RECURSIVIDAD C++

  • 1. Instituto Tecnológico Superior de Felipe Carrillo Puerto INGENIERÍA EN SISTEMAS COMPUTACIONALES ESTRUCTURA DE DATOS Informe técnico de la unidad 2 Recursividad DOCENTE C.Dr. Niels Henryk Aranda Cuevas ALUMNO Sergio Jesús Sabido Díaz Felipe Carrillo Puerto, Q.Roo. a 2 de octubre de 2014
  • 2. RECURSIVIDAD La recursividad, es un concepto bastante importante y bien básico de la programación. Sin embargo es bastante difícil de asimilar al principio. Se supone que es algo que se va entendiendo con práctica y tiempo "es una función que se llama así misma" el objetivo de esta unidad fue comprender que es la recursividad y posteriormente programarla. Es importante mencionar que cuando existe recursividad me debo olvidar de los ciclos, ¿Por qué? Por que la recursividad trabaja con secuencias . Para ejemplo de que es la recursividad, seria codificar un programa que te genere el factorial de un número y la serie Fibonacci.
  • 3. EJEMPLO Obtener el factorial de un número, programa echo en C++ #include <iostream> using namespace std; int factorial(int n); int main(int argc, char *argv[]) { int p; cout << "este programa sirve para sacar el factorial de un numero entero"<<endl<<endl; cout <<"Por favor ingrese su numero"<<endl; cin >> p; cout <<"el resultado es: "<<factorial(p); return 0; } int factorial(int n){ if(n==0){ return(1); } else { return(n*factorial(n-1)); } }
  • 4. EJEMPLO 2 Serie Fibonacci, programa echo en C++ #include <iostream> using namespace std; int fibonacci(int a); int main(int argc, char *argv[]) { int p; cout <<"Este programa funciona como la serie fibonacci"<<endl<<endl; cout <<"por favor ingrese un numero"<<endl<<endl; cin >> p; cout <<"El resultado de la serie es: "<<endl<<fibonacci(p); return 0; } int fibonacci(int a){ if((a==1)||(a==2)){ return (1); } else{ return(fibonacci(a-1)+fibonacci(a-2)); } }
  • 5. CONCLUSIÓN La primera llamada al subprograma se plantea sobre un problema de tamaño u orden N, cada nueva ejecución recurrente del mismo se planteará sobre problemas, de igual naturaleza que el original, pero de un tamaño menor que N. De esta forma, al ir reduciendo progresivamente la complejidad del problema que resolver, llegará un momento en que su resolución sea más o menos trivial (o, al menos, suficientemente manejable como para resolverlo de forma no recursiva). En esa situación diremos que estamos ante un caso base de la recursividad. Las claves para construir un subprograma recurrente son:  Cada llamada recurrente se debería definir sobre un problema de menor complejidad (algo más fácil de resolver).  Ha de existir al menos un caso base para evitar que la recurrencia sea infinita. Es frecuente que los algoritmos recurrentes sean más ineficientes en tiempo que los iterativos aunque suelen ser mucho más breves en espacio. En esta unidad se pudo observar que lo anterior es importante por que permite que un programador ver que existen distintas maneras de programar secuencias y no solamente con ciclos, la recursividad puede simplificar código y hacer más estética y legible nuestro programa, es importante mencionar que los programas anteriores son claros ejemplos de cómo se utiliza la recursividad en programación siendo así una herramienta importante a la hora de generar softwares con problemáticas similares, llevamos a cabo el razonamiento lógico para poder entender el problema y posteriormente codificarlo, explicamos cada uno de ellos,