SlideShare una empresa de Scribd logo
M.Sc. Ing. Javier David Chávez Centeno
DEPARTAMENTO ACADÉMICO DE INFORMÁTICA
jdchavez5@hotmail.com
CUSCO – PERÚ
2017
UNIVERSIDAD DE SAN ANTONIO ABAD DEL CUSCO – PERÚ - 2017
JAVIER DAVID CHÁVEZ CENTENO 31/05/2017 2Dpto Académico de Informática
UNIDAD I
TEMA
RECURSIVIDAD
“La recursividad es la forma en la cual se especifica un
proceso basado en su propia definición”
UNIVERSIDAD DE SAN ANTONIO ABAD DEL CUSCO – PERÚ - 2017
JAVIER DAVID CHÁVEZ CENTENO 31/05/2017 3Dpto Académico de Informática
CONTENIDO
Evaluación de Funciones
Una función es una relación
entre un conjunto X; y otro
conjunto Y, de forma que a
cada elemento de X le
corresponde un elemento de Y.
Subprograma
Uno de los métodos para
resolver problemas, es dividirlo
en problemas más pequeños
denominados módulos o
subprogramas.
Recursividad
Un módulo se dice que es
recursivo, si durante su
ejecución se invoca asi mismo.
Dependiendo de al menos una
condición de corte que provoca
la finalización de la recursión.
Vestajas/Desventajas
 Resolución de problemas de
manera natural, sencilla y
elegante.
 Ineficiencia tanto en tiempo
como en memoria.
Tipos:
Según:
 El número de llamadas
recursivas.
 El principio de inducción.
Ejercicios Resuletos:
Area de un cuadrado, Factorial
de un número, Hanoi,
Par/Impar, Decimal a Binario,
Fibonacci, etc.
UNIVERSIDAD DE SAN ANTONIO ABAD DEL CUSCO – PERÚ - 2017
JAVIER DAVID CHÁVEZ CENTENO 31/05/2017 4Dpto Académico de Informática
Supongamos que alguien nos pide dibujar cuadrados
empezando por un cuadrado de 3 x 3 unidades
(amarillo) hasta obtener el cuadrado más pequeño
posible.
Entonces el siguiente cuadrado a dibujar es un
cuadrado de 2 x 2 unidades (verde), y finalmentel el
cuadrado de 1 x 1 unidad (rojo).
Para diseñar algoritmos que resuelvan este tipo de
problemas, empezando por una instancia más
pequeña, a esta técnica se llama recursividad.
UNIVERSIDAD DE SAN ANTONIO ABAD DEL CUSCO – PERÚ - 2017
JAVIER DAVID CHÁVEZ CENTENO 31/05/2017 5Dpto Académico de Informática
Evaluación de funciones.- Una función es una
relación entre un conjunto X (dominio) y otro conjunto
Y (codominio), de forma que a cada elemento de X le
corresponde un único elemento de Y.
Ejemplo 1: Dada la siguiente función, hallar F(2), F(0)
y F(100).
0 S 0
( )
1 S 0
i X
f x
i X

 

F(2) =
F(0) =
F(100) =
1
0
1
UNIVERSIDAD DE SAN ANTONIO ABAD DEL CUSCO – PERÚ - 2017
JAVIER DAVID CHÁVEZ CENTENO 31/05/2017 6Dpto Académico de Informática
Ejemplo 2: Se tiene la siguiente función, hallar F(0) y
F(4).
F(0) =
F(4) = 4 * F(3)
F(3) = 3 * F(2)
1
6
1





)1(*)(0
1)(0
xfxxfxsi
xfxsi
F(2) = 2 * F(1)
F(1) = 1 * F(0)
F(0) = 1
= 1
1
= 2
2
= 6
= 24
UNIVERSIDAD DE SAN ANTONIO ABAD DEL CUSCO – PERÚ - 2017
JAVIER DAVID CHÁVEZ CENTENO 31/05/2017 7Dpto Académico de Informática
Subprograma.- Uno de los métodos para resolver
problemas es dividirlo en problemas más pequeños en
su forma más simple llamados subproblemas
(subprogramas ó módulos).
Modulo
Función.-
Procedimiento.-
Devuelve un solo valor.
Realiza una tarea específica.
problema
UNIVERSIDAD DE SAN ANTONIO ABAD DEL CUSCO – PERÚ - 2017
JAVIER DAVID CHÁVEZ CENTENO 31/05/2017 8Dpto Académico de Informática
Recursividad.- Un modulo se dice que es recursiva si
durante su ejecución se invoca así mismo. Esta
invocación depende al menos de una condición que
actúa como condición de corte que provoca la
finalización de la recursión. Consta de:
Caso base: Es la parte de la definición para la que se
conoce un resultado y corresponde a la expresión mínima.
Ejemplo:
Caso recurrente: Es la parte de la definición que vuelve a
invocar al subprograma con un caso más pequeño del
mismo cada vez. Ejemplo:
 0 ( ) 1si x f x  
 0 ( ) * ( 1)si x f x x f x   
UNIVERSIDAD DE SAN ANTONIO ABAD DEL CUSCO – PERÚ - 2017
JAVIER DAVID CHÁVEZ CENTENO 31/05/2017 9Dpto Académico de Informática
Ventajas:
- Simplicidad de comprensión y gran potencia.
- Resolución de problemas de manera natural, sencilla
y elegante.
- Facilidad para comprobar la solución del problema.
Desventajas:
Ineficiencia tanto en tiempo como en memoria, dado
que para permitir su uso es necesario transformar el
programa recursivo en otro iterativo, que utiliza
bucles y pilas para almacenar las variables.
UNIVERSIDAD DE SAN ANTONIO ABAD DEL CUSCO – PERÚ - 2017
JAVIER DAVID CHÁVEZ CENTENO 31/05/2017 10Dpto Académico de Informática
Lineal (simple)
Número de llamadas
recursivas
Una llamada recursiva
(Factorial)
Decrementos en uno
(Factorial)
Tipos de Recursividad.- La clasificación se considera
según la bibliografía básica indicada.
Principio de inducción
No lineal
Mutua
Estructural
No estructural
Varias llamadas recursiva
(Hanoi)
Dos o más subprogramas se
llaman entre si (Par, Impar)
(Cuerpo del
subprograma)
(Reducción de
la complejidad)
Decrementos distintos a uno
(DecimalBinario).
UNIVERSIDAD DE SAN ANTONIO ABAD DEL CUSCO – PERÚ - 2017
JAVIER DAVID CHÁVEZ CENTENO 31/05/2017 11Dpto Académico de Informática
Problema 1.- Escribir una función recursiva para hallar
el área de un cuadrado.
1. ANÁLISIS
1.1 Entender el problema.
DATOS
N
(Lado)
RESULTADOS
Area
PROCESO
3 9
4 16
Ejercicios Resueltos.-
UNIVERSIDAD DE SAN ANTONIO ABAD DEL CUSCO – PERÚ - 2017
JAVIER DAVID CHÁVEZ CENTENO 31/05/2017 12Dpto Académico de Informática
1.2 Modelo
Area(3) = Area(2) + 5
Area(2) = Area(1) + 3
Area(1) = 1
4
1
= 4
= 9Caso
Recu-
rrente
Caso
Base
Area(N) =
1,
Area(N-1) + (2N – 1),
Si (N=1)
Si (N>1)
Caso base
Caso recurrente
UNIVERSIDAD DE SAN ANTONIO ABAD DEL CUSCO – PERÚ - 2017
JAVIER DAVID CHÁVEZ CENTENO 31/05/2017 13Dpto Académico de Informática
1.3 Especificación del algoritmo
- Diccionario de variables
- Pre condición
- Acción que debe realizar el algoritmo
- Post condición
{| Area = Lado x Lado |}
Calcular el área de un cuadrado conociendo su lado
{| N > 0 |}
Resultados
Datos
Area = área de un cuadrado = entero
N = lado del cuadrado = entero
UNIVERSIDAD DE SAN ANTONIO ABAD DEL CUSCO – PERÚ - 2017
JAVIER DAVID CHÁVEZ CENTENO 31/05/2017 14Dpto Académico de Informática
2. CODIFICACIÓN
public int Area ( int N)
{
}
if (N == 1) { Caso Base }
return 1;
else { Caso Recurrente }
return Area (N – 1) + (2 * N – 1);
// -------------------------------------------------------------
// -------------------------------------------------------------
UNIVERSIDAD DE SAN ANTONIO ABAD DEL CUSCO – PERÚ - 2017
JAVIER DAVID CHÁVEZ CENTENO 31/05/2017 15Dpto Académico de Informática
Gracias
¿Alguna pregunta?
You can find me at:
jdchavez5@hotmail.com
, javier david chávez centeno

Más contenido relacionado

La actualidad más candente

AEP19. Trabajo grupal 3 [tutoría]
AEP19. Trabajo grupal 3 [tutoría]AEP19. Trabajo grupal 3 [tutoría]
AEP19. Trabajo grupal 3 [tutoría]
Francisco Sandoval
 
AEP19: Trabajo grupal 2 (Tutoría)
AEP19: Trabajo grupal 2 (Tutoría)AEP19: Trabajo grupal 2 (Tutoría)
AEP19: Trabajo grupal 2 (Tutoría)
Francisco Sandoval
 
Actividad 6 bloque 1 algebra
Actividad 6 bloque 1 algebraActividad 6 bloque 1 algebra
Actividad 6 bloque 1 algebraIris Arias
 
AEP19. Tarea 3
AEP19. Tarea 3AEP19. Tarea 3
AEP19. Tarea 3
Francisco Sandoval
 
Metodologia de la programacion recursividad
Metodologia de la programacion   recursividadMetodologia de la programacion   recursividad
Metodologia de la programacion recursividadvictdiazm
 
Programacion lineal entera
Programacion lineal enteraProgramacion lineal entera
Programacion lineal entera
Lenin Melendres
 
Proyecto final matemática 2 (INTEGRALES)
Proyecto final matemática 2 (INTEGRALES)Proyecto final matemática 2 (INTEGRALES)
Proyecto final matemática 2 (INTEGRALES)
Mantenimiento y Construccion de Obras Civiles
 
Concavidad y punto de inflexiocon
Concavidad y punto de inflexioconConcavidad y punto de inflexiocon
Concavidad y punto de inflexiocon
Erick Guaman
 
Historia del calculo infinitesimal
Historia del calculo infinitesimalHistoria del calculo infinitesimal
Historia del calculo infinitesimalmijinina
 
MÉTODO HÚNGARO
MÉTODO HÚNGAROMÉTODO HÚNGARO
MÉTODO HÚNGARO
Rubí Parra
 
Lógica de la programación
Lógica de la programaciónLógica de la programación
Lógica de la programaciónUTPL UTPL
 
Limites y aplicaciones
Limites y aplicacionesLimites y aplicaciones
Limites y aplicaciones
Manolo Torres
 
Funciones exponenciales y logaritmicas
Funciones exponenciales y logaritmicasFunciones exponenciales y logaritmicas
Funciones exponenciales y logaritmicasUTPL UTPL
 
LÓGICA DE LA PROGRAMACIÓN (II Bimestre Abril Agosto 2011)
LÓGICA DE LA PROGRAMACIÓN (II Bimestre Abril Agosto 2011)LÓGICA DE LA PROGRAMACIÓN (II Bimestre Abril Agosto 2011)
LÓGICA DE LA PROGRAMACIÓN (II Bimestre Abril Agosto 2011)
Videoconferencias UTPL
 
Exposición cálculo integral y diferencial
Exposición cálculo integral y diferencialExposición cálculo integral y diferencial
Exposición cálculo integral y diferencial
SophiZambrano95
 
Actividades de integración
Actividades de integraciónActividades de integración
Actividades de integración
María del Valle Heredia
 
Universidad politecnica salesiana
Universidad politecnica salesianaUniversidad politecnica salesiana
Universidad politecnica salesiana
Doby Cylj
 
Exercise 4 1 vector algebra
Exercise 4   1 vector algebraExercise 4   1 vector algebra
Exercise 4 1 vector algebra
Edgar Mata
 

La actualidad más candente (20)

AEP19. Trabajo grupal 3 [tutoría]
AEP19. Trabajo grupal 3 [tutoría]AEP19. Trabajo grupal 3 [tutoría]
AEP19. Trabajo grupal 3 [tutoría]
 
Cálculo Diferencial
Cálculo DiferencialCálculo Diferencial
Cálculo Diferencial
 
AEP19: Trabajo grupal 2 (Tutoría)
AEP19: Trabajo grupal 2 (Tutoría)AEP19: Trabajo grupal 2 (Tutoría)
AEP19: Trabajo grupal 2 (Tutoría)
 
Actividad 6 bloque 1 algebra
Actividad 6 bloque 1 algebraActividad 6 bloque 1 algebra
Actividad 6 bloque 1 algebra
 
AEP19. Tarea 3
AEP19. Tarea 3AEP19. Tarea 3
AEP19. Tarea 3
 
Metodologia de la programacion recursividad
Metodologia de la programacion   recursividadMetodologia de la programacion   recursividad
Metodologia de la programacion recursividad
 
Programacion lineal entera
Programacion lineal enteraProgramacion lineal entera
Programacion lineal entera
 
Proyecto final matemática 2 (INTEGRALES)
Proyecto final matemática 2 (INTEGRALES)Proyecto final matemática 2 (INTEGRALES)
Proyecto final matemática 2 (INTEGRALES)
 
Taller 1 matemática ii limites
Taller 1 matemática ii limitesTaller 1 matemática ii limites
Taller 1 matemática ii limites
 
Concavidad y punto de inflexiocon
Concavidad y punto de inflexioconConcavidad y punto de inflexiocon
Concavidad y punto de inflexiocon
 
Historia del calculo infinitesimal
Historia del calculo infinitesimalHistoria del calculo infinitesimal
Historia del calculo infinitesimal
 
MÉTODO HÚNGARO
MÉTODO HÚNGAROMÉTODO HÚNGARO
MÉTODO HÚNGARO
 
Lógica de la programación
Lógica de la programaciónLógica de la programación
Lógica de la programación
 
Limites y aplicaciones
Limites y aplicacionesLimites y aplicaciones
Limites y aplicaciones
 
Funciones exponenciales y logaritmicas
Funciones exponenciales y logaritmicasFunciones exponenciales y logaritmicas
Funciones exponenciales y logaritmicas
 
LÓGICA DE LA PROGRAMACIÓN (II Bimestre Abril Agosto 2011)
LÓGICA DE LA PROGRAMACIÓN (II Bimestre Abril Agosto 2011)LÓGICA DE LA PROGRAMACIÓN (II Bimestre Abril Agosto 2011)
LÓGICA DE LA PROGRAMACIÓN (II Bimestre Abril Agosto 2011)
 
Exposición cálculo integral y diferencial
Exposición cálculo integral y diferencialExposición cálculo integral y diferencial
Exposición cálculo integral y diferencial
 
Actividades de integración
Actividades de integraciónActividades de integración
Actividades de integración
 
Universidad politecnica salesiana
Universidad politecnica salesianaUniversidad politecnica salesiana
Universidad politecnica salesiana
 
Exercise 4 1 vector algebra
Exercise 4   1 vector algebraExercise 4   1 vector algebra
Exercise 4 1 vector algebra
 

Similar a Recursividad 2017 jdchc

001 ta ds jdchc
001 ta ds jdchc001 ta ds jdchc
001 ta ds jdchc
Javier Chávez Centeno
 
Unidad i programacion visual elementos basicos
Unidad i programacion visual elementos basicosUnidad i programacion visual elementos basicos
Unidad i programacion visual elementos basicosfabiandelphi
 
Programacion dinamica
Programacion dinamicaProgramacion dinamica
Programacion dinamicaRCOP
 
S03
S03S03
Unidad_II.pdf aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
Unidad_II.pdf aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaUnidad_II.pdf aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
Unidad_II.pdf aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
fedealmiron02
 
Ejercicios de Programación Matemática Aplicada
Ejercicios de Programación Matemática Aplicada Ejercicios de Programación Matemática Aplicada
Ejercicios de Programación Matemática Aplicada
Cliffor Jerry Herrera Castrillo
 
Programación lineal y pert. do
Programación lineal y pert. doProgramación lineal y pert. do
Programación lineal y pert. do
John Leyton
 
SESION 5.- ECUACIONES LINEALES.ppt
SESION 5.- ECUACIONES LINEALES.pptSESION 5.- ECUACIONES LINEALES.ppt
SESION 5.- ECUACIONES LINEALES.ppt
AxelAburtoRojas
 
Metodo Simplex - ejercicio explicado.pptx
Metodo Simplex - ejercicio explicado.pptxMetodo Simplex - ejercicio explicado.pptx
Metodo Simplex - ejercicio explicado.pptx
Gabriel187899
 
Metodos de Programacion no lineal
Metodos de Programacion no linealMetodos de Programacion no lineal
Metodos de Programacion no lineal
luisatero
 
Taller 2 aplicacion de derivadas
Taller 2 aplicacion de derivadasTaller 2 aplicacion de derivadas
Taller 2 aplicacion de derivadas
BYRONVINICIOGUAMANJA
 
Cap7 2
Cap7 2Cap7 2
Superficies de Respuesta
Superficies de RespuestaSuperficies de Respuesta
Superficies de Respuesta
jpvargas2
 
Php Lab02
Php Lab02Php Lab02
Funciones recursivas
Funciones recursivasFunciones recursivas
Funciones recursivas
Cesar Oswaldo Osorio Agualongo
 
Dos estrategias de búsqueda anytime basadas en programación lineal entera par...
Dos estrategias de búsqueda anytime basadas en programación lineal entera par...Dos estrategias de búsqueda anytime basadas en programación lineal entera par...
Dos estrategias de búsqueda anytime basadas en programación lineal entera par...
jfrchicanog
 
Introduccion a la Invesa. Operativa.pptx
Introduccion a la Invesa. Operativa.pptxIntroduccion a la Invesa. Operativa.pptx
Introduccion a la Invesa. Operativa.pptx
CarlosBrunoRomero
 
Prog dinamica
Prog dinamicaProg dinamica
Prog dinamica
Albert Díaz Vargas
 
Recursividad
RecursividadRecursividad
Recursividad
betzy
 
Optimizacion Diusty Mijares
Optimizacion Diusty MijaresOptimizacion Diusty Mijares
Optimizacion Diusty Mijares
Diusty Mijares Villarroel
 

Similar a Recursividad 2017 jdchc (20)

001 ta ds jdchc
001 ta ds jdchc001 ta ds jdchc
001 ta ds jdchc
 
Unidad i programacion visual elementos basicos
Unidad i programacion visual elementos basicosUnidad i programacion visual elementos basicos
Unidad i programacion visual elementos basicos
 
Programacion dinamica
Programacion dinamicaProgramacion dinamica
Programacion dinamica
 
S03
S03S03
S03
 
Unidad_II.pdf aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
Unidad_II.pdf aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaUnidad_II.pdf aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
Unidad_II.pdf aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
 
Ejercicios de Programación Matemática Aplicada
Ejercicios de Programación Matemática Aplicada Ejercicios de Programación Matemática Aplicada
Ejercicios de Programación Matemática Aplicada
 
Programación lineal y pert. do
Programación lineal y pert. doProgramación lineal y pert. do
Programación lineal y pert. do
 
SESION 5.- ECUACIONES LINEALES.ppt
SESION 5.- ECUACIONES LINEALES.pptSESION 5.- ECUACIONES LINEALES.ppt
SESION 5.- ECUACIONES LINEALES.ppt
 
Metodo Simplex - ejercicio explicado.pptx
Metodo Simplex - ejercicio explicado.pptxMetodo Simplex - ejercicio explicado.pptx
Metodo Simplex - ejercicio explicado.pptx
 
Metodos de Programacion no lineal
Metodos de Programacion no linealMetodos de Programacion no lineal
Metodos de Programacion no lineal
 
Taller 2 aplicacion de derivadas
Taller 2 aplicacion de derivadasTaller 2 aplicacion de derivadas
Taller 2 aplicacion de derivadas
 
Cap7 2
Cap7 2Cap7 2
Cap7 2
 
Superficies de Respuesta
Superficies de RespuestaSuperficies de Respuesta
Superficies de Respuesta
 
Php Lab02
Php Lab02Php Lab02
Php Lab02
 
Funciones recursivas
Funciones recursivasFunciones recursivas
Funciones recursivas
 
Dos estrategias de búsqueda anytime basadas en programación lineal entera par...
Dos estrategias de búsqueda anytime basadas en programación lineal entera par...Dos estrategias de búsqueda anytime basadas en programación lineal entera par...
Dos estrategias de búsqueda anytime basadas en programación lineal entera par...
 
Introduccion a la Invesa. Operativa.pptx
Introduccion a la Invesa. Operativa.pptxIntroduccion a la Invesa. Operativa.pptx
Introduccion a la Invesa. Operativa.pptx
 
Prog dinamica
Prog dinamicaProg dinamica
Prog dinamica
 
Recursividad
RecursividadRecursividad
Recursividad
 
Optimizacion Diusty Mijares
Optimizacion Diusty MijaresOptimizacion Diusty Mijares
Optimizacion Diusty Mijares
 

Más de Javier Chávez Centeno

02 ads i
02 ads i02 ads i
01 ads i
01 ads i01 ads i
006 herencia y polimorfismo_jdchc
006 herencia y polimorfismo_jdchc006 herencia y polimorfismo_jdchc
006 herencia y polimorfismo_jdchc
Javier Chávez Centeno
 
007 listas
007 listas007 listas
005 metodos anonimos jdchc
005 metodos anonimos jdchc005 metodos anonimos jdchc
005 metodos anonimos jdchc
Javier Chávez Centeno
 
004 delegados jdchc
004 delegados jdchc004 delegados jdchc
004 delegados jdchc
Javier Chávez Centeno
 
003 sobrecarga de operadores jdchc
003 sobrecarga de operadores jdchc003 sobrecarga de operadores jdchc
003 sobrecarga de operadores jdchc
Javier Chávez Centeno
 
002 modelo objetos jdchc
002 modelo objetos jdchc002 modelo objetos jdchc
002 modelo objetos jdchc
Javier Chávez Centeno
 
02 representación informacion
02 representación informacion02 representación informacion
02 representación informacion
Javier Chávez Centeno
 
05 software computador jdchc
05 software computador jdchc05 software computador jdchc
05 software computador jdchc
Javier Chávez Centeno
 
06 redes jdchc
06 redes jdchc06 redes jdchc
06 redes jdchc
Javier Chávez Centeno
 
06 ingsoft jdchc rup
06 ingsoft jdchc rup06 ingsoft jdchc rup
06 ingsoft jdchc rup
Javier Chávez Centeno
 
04 perifericos inf jdchc
04 perifericos inf jdchc04 perifericos inf jdchc
04 perifericos inf jdchc
Javier Chávez Centeno
 
03 estructuracomputador inf jdchc
03 estructuracomputador inf jdchc03 estructuracomputador inf jdchc
03 estructuracomputador inf jdchc
Javier Chávez Centeno
 
01 introduccion inf jdchc
01 introduccion inf jdchc01 introduccion inf jdchc
01 introduccion inf jdchc
Javier Chávez Centeno
 
05 ingsoft jdchc
05 ingsoft jdchc05 ingsoft jdchc
05 ingsoft jdchc
Javier Chávez Centeno
 
04 ingsoft jdchc
04 ingsoft jdchc04 ingsoft jdchc
04 ingsoft jdchc
Javier Chávez Centeno
 
03 ingsoft jdchc
03 ingsoft jdchc03 ingsoft jdchc
03 ingsoft jdchc
Javier Chávez Centeno
 
02 ingsoft jdchc
02 ingsoft jdchc02 ingsoft jdchc
02 ingsoft jdchc
Javier Chávez Centeno
 

Más de Javier Chávez Centeno (20)

02 ads i
02 ads i02 ads i
02 ads i
 
01 ads i
01 ads i01 ads i
01 ads i
 
006 herencia y polimorfismo_jdchc
006 herencia y polimorfismo_jdchc006 herencia y polimorfismo_jdchc
006 herencia y polimorfismo_jdchc
 
007 listas
007 listas007 listas
007 listas
 
005 metodos anonimos jdchc
005 metodos anonimos jdchc005 metodos anonimos jdchc
005 metodos anonimos jdchc
 
004 delegados jdchc
004 delegados jdchc004 delegados jdchc
004 delegados jdchc
 
003 sobrecarga de operadores jdchc
003 sobrecarga de operadores jdchc003 sobrecarga de operadores jdchc
003 sobrecarga de operadores jdchc
 
002 modelo objetos jdchc
002 modelo objetos jdchc002 modelo objetos jdchc
002 modelo objetos jdchc
 
02 representación informacion
02 representación informacion02 representación informacion
02 representación informacion
 
05 software computador jdchc
05 software computador jdchc05 software computador jdchc
05 software computador jdchc
 
06 redes jdchc
06 redes jdchc06 redes jdchc
06 redes jdchc
 
06 ingsoft jdchc rup
06 ingsoft jdchc rup06 ingsoft jdchc rup
06 ingsoft jdchc rup
 
07 ingsoft jdchc uml
07 ingsoft jdchc uml07 ingsoft jdchc uml
07 ingsoft jdchc uml
 
04 perifericos inf jdchc
04 perifericos inf jdchc04 perifericos inf jdchc
04 perifericos inf jdchc
 
03 estructuracomputador inf jdchc
03 estructuracomputador inf jdchc03 estructuracomputador inf jdchc
03 estructuracomputador inf jdchc
 
01 introduccion inf jdchc
01 introduccion inf jdchc01 introduccion inf jdchc
01 introduccion inf jdchc
 
05 ingsoft jdchc
05 ingsoft jdchc05 ingsoft jdchc
05 ingsoft jdchc
 
04 ingsoft jdchc
04 ingsoft jdchc04 ingsoft jdchc
04 ingsoft jdchc
 
03 ingsoft jdchc
03 ingsoft jdchc03 ingsoft jdchc
03 ingsoft jdchc
 
02 ingsoft jdchc
02 ingsoft jdchc02 ingsoft jdchc
02 ingsoft jdchc
 

Último

Presentación Revistas y Periódicos Digitales
Presentación Revistas y Periódicos DigitalesPresentación Revistas y Periódicos Digitales
Presentación Revistas y Periódicos Digitales
nievesjiesc03
 
Friedrich Nietzsche. Presentación de 2 de Bachillerato.
Friedrich Nietzsche. Presentación de 2 de Bachillerato.Friedrich Nietzsche. Presentación de 2 de Bachillerato.
Friedrich Nietzsche. Presentación de 2 de Bachillerato.
pablomarin116
 
Junio 2024 Fotocopiables Ediba actividades
Junio 2024 Fotocopiables Ediba actividadesJunio 2024 Fotocopiables Ediba actividades
Junio 2024 Fotocopiables Ediba actividades
cintiat3400
 
Productos contestatos de la Séptima sesión ordinaria de CTE y TIFC para Docen...
Productos contestatos de la Séptima sesión ordinaria de CTE y TIFC para Docen...Productos contestatos de la Séptima sesión ordinaria de CTE y TIFC para Docen...
Productos contestatos de la Séptima sesión ordinaria de CTE y TIFC para Docen...
Monseespinoza6
 
CONCLUSIONES-DESCRIPTIVAS NIVEL PRIMARIA
CONCLUSIONES-DESCRIPTIVAS NIVEL PRIMARIACONCLUSIONES-DESCRIPTIVAS NIVEL PRIMARIA
CONCLUSIONES-DESCRIPTIVAS NIVEL PRIMARIA
BetzabePecheSalcedo1
 
CALENDARIZACION DEL MES DE JUNIO - JULIO 24
CALENDARIZACION DEL MES DE JUNIO - JULIO 24CALENDARIZACION DEL MES DE JUNIO - JULIO 24
CALENDARIZACION DEL MES DE JUNIO - JULIO 24
auxsoporte
 
corpus-christi-sesion-de-aprendizaje.pdf
corpus-christi-sesion-de-aprendizaje.pdfcorpus-christi-sesion-de-aprendizaje.pdf
corpus-christi-sesion-de-aprendizaje.pdf
YolandaRodriguezChin
 
Horarios Exámenes EVAU Ordinaria 2024 de Madrid
Horarios Exámenes EVAU Ordinaria 2024 de MadridHorarios Exámenes EVAU Ordinaria 2024 de Madrid
Horarios Exámenes EVAU Ordinaria 2024 de Madrid
20minutos
 
INFORME MINEDU DEL PRIMER SIMULACRO 2024.pdf
INFORME MINEDU DEL PRIMER SIMULACRO 2024.pdfINFORME MINEDU DEL PRIMER SIMULACRO 2024.pdf
INFORME MINEDU DEL PRIMER SIMULACRO 2024.pdf
Alejandrogarciapanta
 
True Mother's Speech at THE PENTECOST SERVICE..pdf
True Mother's Speech at THE PENTECOST SERVICE..pdfTrue Mother's Speech at THE PENTECOST SERVICE..pdf
True Mother's Speech at THE PENTECOST SERVICE..pdf
Mercedes Gonzalez
 
PPT: El fundamento del gobierno de Dios.
PPT: El fundamento del gobierno de Dios.PPT: El fundamento del gobierno de Dios.
PPT: El fundamento del gobierno de Dios.
https://gramadal.wordpress.com/
 
Asistencia Tecnica Cultura Escolar Inclusiva Ccesa007.pdf
Asistencia Tecnica Cultura Escolar Inclusiva Ccesa007.pdfAsistencia Tecnica Cultura Escolar Inclusiva Ccesa007.pdf
Asistencia Tecnica Cultura Escolar Inclusiva Ccesa007.pdf
Demetrio Ccesa Rayme
 
SESION ORDENAMOS NÚMEROS EN FORMA ASCENDENTE Y DESCENDENTE 20 DE MAYO.docx
SESION ORDENAMOS NÚMEROS EN FORMA ASCENDENTE Y DESCENDENTE 20 DE MAYO.docxSESION ORDENAMOS NÚMEROS EN FORMA ASCENDENTE Y DESCENDENTE 20 DE MAYO.docx
SESION ORDENAMOS NÚMEROS EN FORMA ASCENDENTE Y DESCENDENTE 20 DE MAYO.docx
QuispeJimenezDyuy
 
Fase 1, Lenguaje algebraico y pensamiento funcional
Fase 1, Lenguaje algebraico y pensamiento funcionalFase 1, Lenguaje algebraico y pensamiento funcional
Fase 1, Lenguaje algebraico y pensamiento funcional
YasneidyGonzalez
 
3° UNIDAD 3 CUIDAMOS EL AMBIENTE RECICLANDO EN FAMILIA 933623393 PROF YESSENI...
3° UNIDAD 3 CUIDAMOS EL AMBIENTE RECICLANDO EN FAMILIA 933623393 PROF YESSENI...3° UNIDAD 3 CUIDAMOS EL AMBIENTE RECICLANDO EN FAMILIA 933623393 PROF YESSENI...
3° UNIDAD 3 CUIDAMOS EL AMBIENTE RECICLANDO EN FAMILIA 933623393 PROF YESSENI...
rosannatasaycoyactay
 
El fundamento del gobierno de Dios. Lec. 09. docx
El fundamento del gobierno de Dios. Lec. 09. docxEl fundamento del gobierno de Dios. Lec. 09. docx
El fundamento del gobierno de Dios. Lec. 09. docx
Alejandrino Halire Ccahuana
 
Mapa_Conceptual de los fundamentos de la evaluación educativa
Mapa_Conceptual de los fundamentos de la evaluación educativaMapa_Conceptual de los fundamentos de la evaluación educativa
Mapa_Conceptual de los fundamentos de la evaluación educativa
TatianaVanessaAltami
 
El fundamento del gobierno de Dios. El amor
El fundamento del gobierno de Dios. El amorEl fundamento del gobierno de Dios. El amor
El fundamento del gobierno de Dios. El amor
Alejandrino Halire Ccahuana
 
Sesión: El fundamento del gobierno de Dios.pdf
Sesión: El fundamento del gobierno de Dios.pdfSesión: El fundamento del gobierno de Dios.pdf
Sesión: El fundamento del gobierno de Dios.pdf
https://gramadal.wordpress.com/
 
ROMPECABEZAS DE ECUACIONES DE PRIMER GRADO OLIMPIADA DE PARÍS 2024. Por JAVIE...
ROMPECABEZAS DE ECUACIONES DE PRIMER GRADO OLIMPIADA DE PARÍS 2024. Por JAVIE...ROMPECABEZAS DE ECUACIONES DE PRIMER GRADO OLIMPIADA DE PARÍS 2024. Por JAVIE...
ROMPECABEZAS DE ECUACIONES DE PRIMER GRADO OLIMPIADA DE PARÍS 2024. Por JAVIE...
JAVIER SOLIS NOYOLA
 

Último (20)

Presentación Revistas y Periódicos Digitales
Presentación Revistas y Periódicos DigitalesPresentación Revistas y Periódicos Digitales
Presentación Revistas y Periódicos Digitales
 
Friedrich Nietzsche. Presentación de 2 de Bachillerato.
Friedrich Nietzsche. Presentación de 2 de Bachillerato.Friedrich Nietzsche. Presentación de 2 de Bachillerato.
Friedrich Nietzsche. Presentación de 2 de Bachillerato.
 
Junio 2024 Fotocopiables Ediba actividades
Junio 2024 Fotocopiables Ediba actividadesJunio 2024 Fotocopiables Ediba actividades
Junio 2024 Fotocopiables Ediba actividades
 
Productos contestatos de la Séptima sesión ordinaria de CTE y TIFC para Docen...
Productos contestatos de la Séptima sesión ordinaria de CTE y TIFC para Docen...Productos contestatos de la Séptima sesión ordinaria de CTE y TIFC para Docen...
Productos contestatos de la Séptima sesión ordinaria de CTE y TIFC para Docen...
 
CONCLUSIONES-DESCRIPTIVAS NIVEL PRIMARIA
CONCLUSIONES-DESCRIPTIVAS NIVEL PRIMARIACONCLUSIONES-DESCRIPTIVAS NIVEL PRIMARIA
CONCLUSIONES-DESCRIPTIVAS NIVEL PRIMARIA
 
CALENDARIZACION DEL MES DE JUNIO - JULIO 24
CALENDARIZACION DEL MES DE JUNIO - JULIO 24CALENDARIZACION DEL MES DE JUNIO - JULIO 24
CALENDARIZACION DEL MES DE JUNIO - JULIO 24
 
corpus-christi-sesion-de-aprendizaje.pdf
corpus-christi-sesion-de-aprendizaje.pdfcorpus-christi-sesion-de-aprendizaje.pdf
corpus-christi-sesion-de-aprendizaje.pdf
 
Horarios Exámenes EVAU Ordinaria 2024 de Madrid
Horarios Exámenes EVAU Ordinaria 2024 de MadridHorarios Exámenes EVAU Ordinaria 2024 de Madrid
Horarios Exámenes EVAU Ordinaria 2024 de Madrid
 
INFORME MINEDU DEL PRIMER SIMULACRO 2024.pdf
INFORME MINEDU DEL PRIMER SIMULACRO 2024.pdfINFORME MINEDU DEL PRIMER SIMULACRO 2024.pdf
INFORME MINEDU DEL PRIMER SIMULACRO 2024.pdf
 
True Mother's Speech at THE PENTECOST SERVICE..pdf
True Mother's Speech at THE PENTECOST SERVICE..pdfTrue Mother's Speech at THE PENTECOST SERVICE..pdf
True Mother's Speech at THE PENTECOST SERVICE..pdf
 
PPT: El fundamento del gobierno de Dios.
PPT: El fundamento del gobierno de Dios.PPT: El fundamento del gobierno de Dios.
PPT: El fundamento del gobierno de Dios.
 
Asistencia Tecnica Cultura Escolar Inclusiva Ccesa007.pdf
Asistencia Tecnica Cultura Escolar Inclusiva Ccesa007.pdfAsistencia Tecnica Cultura Escolar Inclusiva Ccesa007.pdf
Asistencia Tecnica Cultura Escolar Inclusiva Ccesa007.pdf
 
SESION ORDENAMOS NÚMEROS EN FORMA ASCENDENTE Y DESCENDENTE 20 DE MAYO.docx
SESION ORDENAMOS NÚMEROS EN FORMA ASCENDENTE Y DESCENDENTE 20 DE MAYO.docxSESION ORDENAMOS NÚMEROS EN FORMA ASCENDENTE Y DESCENDENTE 20 DE MAYO.docx
SESION ORDENAMOS NÚMEROS EN FORMA ASCENDENTE Y DESCENDENTE 20 DE MAYO.docx
 
Fase 1, Lenguaje algebraico y pensamiento funcional
Fase 1, Lenguaje algebraico y pensamiento funcionalFase 1, Lenguaje algebraico y pensamiento funcional
Fase 1, Lenguaje algebraico y pensamiento funcional
 
3° UNIDAD 3 CUIDAMOS EL AMBIENTE RECICLANDO EN FAMILIA 933623393 PROF YESSENI...
3° UNIDAD 3 CUIDAMOS EL AMBIENTE RECICLANDO EN FAMILIA 933623393 PROF YESSENI...3° UNIDAD 3 CUIDAMOS EL AMBIENTE RECICLANDO EN FAMILIA 933623393 PROF YESSENI...
3° UNIDAD 3 CUIDAMOS EL AMBIENTE RECICLANDO EN FAMILIA 933623393 PROF YESSENI...
 
El fundamento del gobierno de Dios. Lec. 09. docx
El fundamento del gobierno de Dios. Lec. 09. docxEl fundamento del gobierno de Dios. Lec. 09. docx
El fundamento del gobierno de Dios. Lec. 09. docx
 
Mapa_Conceptual de los fundamentos de la evaluación educativa
Mapa_Conceptual de los fundamentos de la evaluación educativaMapa_Conceptual de los fundamentos de la evaluación educativa
Mapa_Conceptual de los fundamentos de la evaluación educativa
 
El fundamento del gobierno de Dios. El amor
El fundamento del gobierno de Dios. El amorEl fundamento del gobierno de Dios. El amor
El fundamento del gobierno de Dios. El amor
 
Sesión: El fundamento del gobierno de Dios.pdf
Sesión: El fundamento del gobierno de Dios.pdfSesión: El fundamento del gobierno de Dios.pdf
Sesión: El fundamento del gobierno de Dios.pdf
 
ROMPECABEZAS DE ECUACIONES DE PRIMER GRADO OLIMPIADA DE PARÍS 2024. Por JAVIE...
ROMPECABEZAS DE ECUACIONES DE PRIMER GRADO OLIMPIADA DE PARÍS 2024. Por JAVIE...ROMPECABEZAS DE ECUACIONES DE PRIMER GRADO OLIMPIADA DE PARÍS 2024. Por JAVIE...
ROMPECABEZAS DE ECUACIONES DE PRIMER GRADO OLIMPIADA DE PARÍS 2024. Por JAVIE...
 

Recursividad 2017 jdchc

  • 1. M.Sc. Ing. Javier David Chávez Centeno DEPARTAMENTO ACADÉMICO DE INFORMÁTICA jdchavez5@hotmail.com CUSCO – PERÚ 2017
  • 2. UNIVERSIDAD DE SAN ANTONIO ABAD DEL CUSCO – PERÚ - 2017 JAVIER DAVID CHÁVEZ CENTENO 31/05/2017 2Dpto Académico de Informática UNIDAD I TEMA RECURSIVIDAD “La recursividad es la forma en la cual se especifica un proceso basado en su propia definición”
  • 3. UNIVERSIDAD DE SAN ANTONIO ABAD DEL CUSCO – PERÚ - 2017 JAVIER DAVID CHÁVEZ CENTENO 31/05/2017 3Dpto Académico de Informática CONTENIDO Evaluación de Funciones Una función es una relación entre un conjunto X; y otro conjunto Y, de forma que a cada elemento de X le corresponde un elemento de Y. Subprograma Uno de los métodos para resolver problemas, es dividirlo en problemas más pequeños denominados módulos o subprogramas. Recursividad Un módulo se dice que es recursivo, si durante su ejecución se invoca asi mismo. Dependiendo de al menos una condición de corte que provoca la finalización de la recursión. Vestajas/Desventajas  Resolución de problemas de manera natural, sencilla y elegante.  Ineficiencia tanto en tiempo como en memoria. Tipos: Según:  El número de llamadas recursivas.  El principio de inducción. Ejercicios Resuletos: Area de un cuadrado, Factorial de un número, Hanoi, Par/Impar, Decimal a Binario, Fibonacci, etc.
  • 4. UNIVERSIDAD DE SAN ANTONIO ABAD DEL CUSCO – PERÚ - 2017 JAVIER DAVID CHÁVEZ CENTENO 31/05/2017 4Dpto Académico de Informática Supongamos que alguien nos pide dibujar cuadrados empezando por un cuadrado de 3 x 3 unidades (amarillo) hasta obtener el cuadrado más pequeño posible. Entonces el siguiente cuadrado a dibujar es un cuadrado de 2 x 2 unidades (verde), y finalmentel el cuadrado de 1 x 1 unidad (rojo). Para diseñar algoritmos que resuelvan este tipo de problemas, empezando por una instancia más pequeña, a esta técnica se llama recursividad.
  • 5. UNIVERSIDAD DE SAN ANTONIO ABAD DEL CUSCO – PERÚ - 2017 JAVIER DAVID CHÁVEZ CENTENO 31/05/2017 5Dpto Académico de Informática Evaluación de funciones.- Una función es una relación entre un conjunto X (dominio) y otro conjunto Y (codominio), de forma que a cada elemento de X le corresponde un único elemento de Y. Ejemplo 1: Dada la siguiente función, hallar F(2), F(0) y F(100). 0 S 0 ( ) 1 S 0 i X f x i X     F(2) = F(0) = F(100) = 1 0 1
  • 6. UNIVERSIDAD DE SAN ANTONIO ABAD DEL CUSCO – PERÚ - 2017 JAVIER DAVID CHÁVEZ CENTENO 31/05/2017 6Dpto Académico de Informática Ejemplo 2: Se tiene la siguiente función, hallar F(0) y F(4). F(0) = F(4) = 4 * F(3) F(3) = 3 * F(2) 1 6 1      )1(*)(0 1)(0 xfxxfxsi xfxsi F(2) = 2 * F(1) F(1) = 1 * F(0) F(0) = 1 = 1 1 = 2 2 = 6 = 24
  • 7. UNIVERSIDAD DE SAN ANTONIO ABAD DEL CUSCO – PERÚ - 2017 JAVIER DAVID CHÁVEZ CENTENO 31/05/2017 7Dpto Académico de Informática Subprograma.- Uno de los métodos para resolver problemas es dividirlo en problemas más pequeños en su forma más simple llamados subproblemas (subprogramas ó módulos). Modulo Función.- Procedimiento.- Devuelve un solo valor. Realiza una tarea específica. problema
  • 8. UNIVERSIDAD DE SAN ANTONIO ABAD DEL CUSCO – PERÚ - 2017 JAVIER DAVID CHÁVEZ CENTENO 31/05/2017 8Dpto Académico de Informática Recursividad.- Un modulo se dice que es recursiva si durante su ejecución se invoca así mismo. Esta invocación depende al menos de una condición que actúa como condición de corte que provoca la finalización de la recursión. Consta de: Caso base: Es la parte de la definición para la que se conoce un resultado y corresponde a la expresión mínima. Ejemplo: Caso recurrente: Es la parte de la definición que vuelve a invocar al subprograma con un caso más pequeño del mismo cada vez. Ejemplo:  0 ( ) 1si x f x    0 ( ) * ( 1)si x f x x f x   
  • 9. UNIVERSIDAD DE SAN ANTONIO ABAD DEL CUSCO – PERÚ - 2017 JAVIER DAVID CHÁVEZ CENTENO 31/05/2017 9Dpto Académico de Informática Ventajas: - Simplicidad de comprensión y gran potencia. - Resolución de problemas de manera natural, sencilla y elegante. - Facilidad para comprobar la solución del problema. Desventajas: Ineficiencia tanto en tiempo como en memoria, dado que para permitir su uso es necesario transformar el programa recursivo en otro iterativo, que utiliza bucles y pilas para almacenar las variables.
  • 10. UNIVERSIDAD DE SAN ANTONIO ABAD DEL CUSCO – PERÚ - 2017 JAVIER DAVID CHÁVEZ CENTENO 31/05/2017 10Dpto Académico de Informática Lineal (simple) Número de llamadas recursivas Una llamada recursiva (Factorial) Decrementos en uno (Factorial) Tipos de Recursividad.- La clasificación se considera según la bibliografía básica indicada. Principio de inducción No lineal Mutua Estructural No estructural Varias llamadas recursiva (Hanoi) Dos o más subprogramas se llaman entre si (Par, Impar) (Cuerpo del subprograma) (Reducción de la complejidad) Decrementos distintos a uno (DecimalBinario).
  • 11. UNIVERSIDAD DE SAN ANTONIO ABAD DEL CUSCO – PERÚ - 2017 JAVIER DAVID CHÁVEZ CENTENO 31/05/2017 11Dpto Académico de Informática Problema 1.- Escribir una función recursiva para hallar el área de un cuadrado. 1. ANÁLISIS 1.1 Entender el problema. DATOS N (Lado) RESULTADOS Area PROCESO 3 9 4 16 Ejercicios Resueltos.-
  • 12. UNIVERSIDAD DE SAN ANTONIO ABAD DEL CUSCO – PERÚ - 2017 JAVIER DAVID CHÁVEZ CENTENO 31/05/2017 12Dpto Académico de Informática 1.2 Modelo Area(3) = Area(2) + 5 Area(2) = Area(1) + 3 Area(1) = 1 4 1 = 4 = 9Caso Recu- rrente Caso Base Area(N) = 1, Area(N-1) + (2N – 1), Si (N=1) Si (N>1) Caso base Caso recurrente
  • 13. UNIVERSIDAD DE SAN ANTONIO ABAD DEL CUSCO – PERÚ - 2017 JAVIER DAVID CHÁVEZ CENTENO 31/05/2017 13Dpto Académico de Informática 1.3 Especificación del algoritmo - Diccionario de variables - Pre condición - Acción que debe realizar el algoritmo - Post condición {| Area = Lado x Lado |} Calcular el área de un cuadrado conociendo su lado {| N > 0 |} Resultados Datos Area = área de un cuadrado = entero N = lado del cuadrado = entero
  • 14. UNIVERSIDAD DE SAN ANTONIO ABAD DEL CUSCO – PERÚ - 2017 JAVIER DAVID CHÁVEZ CENTENO 31/05/2017 14Dpto Académico de Informática 2. CODIFICACIÓN public int Area ( int N) { } if (N == 1) { Caso Base } return 1; else { Caso Recurrente } return Area (N – 1) + (2 * N – 1); // ------------------------------------------------------------- // -------------------------------------------------------------
  • 15. UNIVERSIDAD DE SAN ANTONIO ABAD DEL CUSCO – PERÚ - 2017 JAVIER DAVID CHÁVEZ CENTENO 31/05/2017 15Dpto Académico de Informática Gracias ¿Alguna pregunta? You can find me at: jdchavez5@hotmail.com , javier david chávez centeno