SlideShare ist ein Scribd-Unternehmen logo
1 von 12
MENU

 RECURSIÓN E
 ITERATIVIDAD


 NUMEROS DE
  CATALAN


 ALGORITMOS



 EJECUCIÓN DE
LOS ALGORITMOS


CONCLUSIONES Y
RECOMENDACION
     ES
La recursión o recursividad es un concepto amplio, con muchas variantes.
Aparece en numerosas actividades de la vida diaria; por ejemplo en una
fotografía donde se observa otra fotografía.

La recursión es un recurso muy poderoso que permite expresar soluciones
simples y naturales a ciertos tipos de problemas. Es importante considerar
que no todos los problemas son naturalmente recursivos.

Un objeto recursivo es aquel que aparece en la definición de sí mismo, así
como el que se llama a sí mismo.
Subprograma P
                                  Directa: el programa o subprograma se llama
     --------------------------            directamente a sí mismo.
     --------------------------
     --------------------------
     --------------------------
         Llamada a P
                                         Subprograma P                Subprograma Q
                                       --------------------------   --------------------------
                                       --------------------------   --------------------------
     Indirecta: el                     --------------------------   --------------------------
                                       --------------------------   --------------------------
 subprograma llama a                       Llamada a Q                  Llamada a P
 otro subprograma, y
    éste, en algún
   momento, llama
nuevamente a primero.



La iteración es la repetición de una secuencia de instrucciones o eventos por
un cierto numero de veces.
Estos números se utilizan en una gran variedad de problemas de
combinatoria. Tienen varias aplicaciones; por ejemplo, determinar el
numero de formas en que un polígono con n+2 lados se puede
descomponer en n triángulos.

En combinatoria los números de catalán forman una secuencia de
números naturales. Obtienen su nombre del matemático belga Eugéne
Charles Catalan

El enésimo numero de catalán se obtiene con la formula

                                   con n>=0

 La complejidad computacional de este problema es P ya que puede
 ser resuelto en un tiempo polinómico por una maquina Turing
 Determinista y que puede ser tratable.
El problema de distancia de Los numero s de catalán se puede
     realizar con recursión al igual que iterativamente.


1.  Inicio
2.  Asignar variables: a, c, n, b=1,fac,x=1,factorial=1.
3.  Pedir el numero natural la cual será la posición del numero catalán.
4.  Insertar el numero.
5.  Asignarlo a la variable n.
6.  La formula para sacar el numero de catalán es:
  Con esto separamos las operaciones en
a= 2n; fac=n+1 y x.

7. Asignamos la primera operación a=2n y ponemos un for para sacar su
    factorial ya multiplicado:
a=2*n;
    for(c=1;c<=a;c++)
    b=c*b;                   7.1El resultado de la operación pasa al for y el
                          resultado de la primera operación se va asignando a
                          la variable b, lo cual se va multiplicando esta misma
                          por todos los valores anteriores a n. El resultado se
                                           asigna a la variable b.
8. Lo mismo pasa con la formula fac=n+1
Se hace con otro for :
fac=n+1;
      for(c=1;c<=fac;c++)
      x=c*x;

Repetir paso 7.1y el resultado se asigna a la variable x.

9. Con la tercera formula se hace lo mismo :
for(c=1;c<=n;c++)
factorial=c*factorial;
Entonces se realiza lo mismo que en el paso 7.1 pero solo se saca el factorial
de n,
el resultado se asigna a la variable factorial.

10. Ya que sacamos el resultado de las tres formulas las juntamos:
 catalan= b/(x*factorial)
11. Se despliega el resultado.
1. Pedir el numero
2. Asignarlo a la variable n.
3. Mandar a llamar a la función numeroscatalan.
4. Preguntar si el numero es igual a cero:
Si es verdad numeroscatalan=1(estado basico)
Falso
numeroscatalan=(2*((2*n)-1))/(n+1)*numeroscatalan(n-1).
5. Imprimir numeroscatalan.
6.Fin


 Asintóticamente los números de catalán crecen:
#include<stdio.h>
#include<conio.h>

main()
{
   int catalan,a,c,n,b=1,fac,x=1,factorial=1;
   printf("ttttNUMEROS DE CATALANn");
   printf(“Numero:");
   scanf("%d",&n);
   a=2*n;
   for(c=1;c<=a;c++)
   {
             b=c*b;
             }
fac=n+1;
      for(c=1;c<=fac;c++)
    {
             x=c*x;
             }
    for(c=1;c<=n;c++)
    {
             factorial=c*factorial;
             }
   catalan= b/(x*factorial);
   printf("catalan=%d",catalan);
   getche();
   return 0;
}
#include<stdio.h>
#include<conio.h>
double res;
double numeroscatalan(double n);
main(double n)
{
printf("ttNUMEROS DE CATALANn");
printf("Numero: ");
scanf("%lf",&n);
res=numeroscatalan(n);
printf("Catalan:%.0lf",res);
getche();
    }
double numeroscatalan(double n)
{
if (n==0) //Condicion de parada de la recursión
{
return 1;
}
else
{

return(2*((2*n)-1))/(n+1)*numeroscatalan(n-1);

}
}
El código se simplifica.
  Cuando utilizamos una estructura de datos recursiva ejemplo: arboles.
  Los algoritmos recursivos ofrecen soluciones estructuradas, modulares y
elegantemente simples.




 Cuando los métodos usen arreglos largos.
 Cuando el método cambie de manera impredecible de campos.



 Recomendamos utilizar solo la recursión cuando algún problema no se pueda
realizar de forma iterativa o que sea más fácil realizarlo con recursión. Para
este problema el algoritmo recursivo es mejor.

Weitere ähnliche Inhalte

Was ist angesagt?

What Is Dynamic Programming? | Dynamic Programming Explained | Programming Fo...
What Is Dynamic Programming? | Dynamic Programming Explained | Programming Fo...What Is Dynamic Programming? | Dynamic Programming Explained | Programming Fo...
What Is Dynamic Programming? | Dynamic Programming Explained | Programming Fo...Simplilearn
 
sum of subset problem using Backtracking
sum of subset problem using Backtrackingsum of subset problem using Backtracking
sum of subset problem using BacktrackingAbhishek Singh
 
Asymptotic notations
Asymptotic notationsAsymptotic notations
Asymptotic notationsNikhil Sharma
 
Time and space complexity
Time and space complexityTime and space complexity
Time and space complexityAnkit Katiyar
 
Job sequencing with Deadlines
Job sequencing with DeadlinesJob sequencing with Deadlines
Job sequencing with DeadlinesYashiUpadhyay3
 
Manual codeblocks luis_ocampo
Manual codeblocks luis_ocampoManual codeblocks luis_ocampo
Manual codeblocks luis_ocampoluis_ocampo27
 
Algorithm Specification and Data Abstraction
Algorithm Specification and Data Abstraction Algorithm Specification and Data Abstraction
Algorithm Specification and Data Abstraction Ashutosh Satapathy
 
El problema de la mochila
El problema de la mochilaEl problema de la mochila
El problema de la mochilaEn todos lados
 
0-1 KNAPSACK PROBLEM
0-1 KNAPSACK PROBLEM0-1 KNAPSACK PROBLEM
0-1 KNAPSACK PROBLEMi i
 
Amortized analysis
Amortized analysisAmortized analysis
Amortized analysisajmalcs
 
Knapsack Problem (DP & GREEDY)
Knapsack Problem (DP & GREEDY)Knapsack Problem (DP & GREEDY)
Knapsack Problem (DP & GREEDY)Ridhima Chowdhury
 
Webinar : P, NP, NP-Hard , NP - Complete problems
Webinar : P, NP, NP-Hard , NP - Complete problems Webinar : P, NP, NP-Hard , NP - Complete problems
Webinar : P, NP, NP-Hard , NP - Complete problems Ziyauddin Shaik
 
Np completeness
Np completenessNp completeness
Np completenessRajendran
 
Intermediate code generation
Intermediate code generationIntermediate code generation
Intermediate code generationAkshaya Arunan
 
Dynamic Programming Matrix Chain Multiplication
Dynamic Programming Matrix Chain MultiplicationDynamic Programming Matrix Chain Multiplication
Dynamic Programming Matrix Chain MultiplicationKrishnakoumarC
 

Was ist angesagt? (20)

What Is Dynamic Programming? | Dynamic Programming Explained | Programming Fo...
What Is Dynamic Programming? | Dynamic Programming Explained | Programming Fo...What Is Dynamic Programming? | Dynamic Programming Explained | Programming Fo...
What Is Dynamic Programming? | Dynamic Programming Explained | Programming Fo...
 
sum of subset problem using Backtracking
sum of subset problem using Backtrackingsum of subset problem using Backtracking
sum of subset problem using Backtracking
 
1D Array
1D Array1D Array
1D Array
 
Asymptotic notations
Asymptotic notationsAsymptotic notations
Asymptotic notations
 
Dualidad
DualidadDualidad
Dualidad
 
Time and space complexity
Time and space complexityTime and space complexity
Time and space complexity
 
Job sequencing with Deadlines
Job sequencing with DeadlinesJob sequencing with Deadlines
Job sequencing with Deadlines
 
Manual codeblocks luis_ocampo
Manual codeblocks luis_ocampoManual codeblocks luis_ocampo
Manual codeblocks luis_ocampo
 
Algorithm Specification and Data Abstraction
Algorithm Specification and Data Abstraction Algorithm Specification and Data Abstraction
Algorithm Specification and Data Abstraction
 
El problema de la mochila
El problema de la mochilaEl problema de la mochila
El problema de la mochila
 
0-1 KNAPSACK PROBLEM
0-1 KNAPSACK PROBLEM0-1 KNAPSACK PROBLEM
0-1 KNAPSACK PROBLEM
 
Amortized analysis
Amortized analysisAmortized analysis
Amortized analysis
 
Knapsack Problem (DP & GREEDY)
Knapsack Problem (DP & GREEDY)Knapsack Problem (DP & GREEDY)
Knapsack Problem (DP & GREEDY)
 
Webinar : P, NP, NP-Hard , NP - Complete problems
Webinar : P, NP, NP-Hard , NP - Complete problems Webinar : P, NP, NP-Hard , NP - Complete problems
Webinar : P, NP, NP-Hard , NP - Complete problems
 
Np completeness
Np completenessNp completeness
Np completeness
 
Python algorithm
Python algorithmPython algorithm
Python algorithm
 
Intermediate code generation
Intermediate code generationIntermediate code generation
Intermediate code generation
 
Algorithm
AlgorithmAlgorithm
Algorithm
 
Recurrences
RecurrencesRecurrences
Recurrences
 
Dynamic Programming Matrix Chain Multiplication
Dynamic Programming Matrix Chain MultiplicationDynamic Programming Matrix Chain Multiplication
Dynamic Programming Matrix Chain Multiplication
 

Andere mochten auch

Andere mochten auch (12)

Números en catalan Java NetBeans
Números en catalan Java NetBeansNúmeros en catalan Java NetBeans
Números en catalan Java NetBeans
 
Historias ingles
Historias inglesHistorias ingles
Historias ingles
 
Algorithms with-java-1.0
Algorithms with-java-1.0Algorithms with-java-1.0
Algorithms with-java-1.0
 
, Programacion java
, Programacion  java, Programacion  java
, Programacion java
 
6.funciones y recursividad en c++
6.funciones y recursividad en c++6.funciones y recursividad en c++
6.funciones y recursividad en c++
 
En patufet en imatges
En patufet en imatgesEn patufet en imatges
En patufet en imatges
 
Arreglos en pseudocodigo 01
Arreglos en pseudocodigo 01Arreglos en pseudocodigo 01
Arreglos en pseudocodigo 01
 
Ejercicios (Algoritmo: Pseudocódigo-Diagrama de Flujo)
Ejercicios (Algoritmo: Pseudocódigo-Diagrama de Flujo)Ejercicios (Algoritmo: Pseudocódigo-Diagrama de Flujo)
Ejercicios (Algoritmo: Pseudocódigo-Diagrama de Flujo)
 
Problemas resueltos sobre inducción matemática
Problemas resueltos sobre inducción matemáticaProblemas resueltos sobre inducción matemática
Problemas resueltos sobre inducción matemática
 
Algoritmos ejemplos
Algoritmos ejemplosAlgoritmos ejemplos
Algoritmos ejemplos
 
52 ejercicios-resueltos-en-pseudocodigo
52 ejercicios-resueltos-en-pseudocodigo52 ejercicios-resueltos-en-pseudocodigo
52 ejercicios-resueltos-en-pseudocodigo
 
Apuntes De Algoritmos
Apuntes De AlgoritmosApuntes De Algoritmos
Apuntes De Algoritmos
 

Ähnlich wie Algoritmos recursivos y números de Catalán

Ähnlich wie Algoritmos recursivos y números de Catalán (20)

Catalan
CatalanCatalan
Catalan
 
Unidad 2
Unidad 2Unidad 2
Unidad 2
 
Unidad 2
Unidad 2Unidad 2
Unidad 2
 
Arreglo unidimensionales y bidimensionales
Arreglo unidimensionales y bidimensionalesArreglo unidimensionales y bidimensionales
Arreglo unidimensionales y bidimensionales
 
03 tda1 t2018
03 tda1 t201803 tda1 t2018
03 tda1 t2018
 
Classpad 330
Classpad 330Classpad 330
Classpad 330
 
Classpad 330
Classpad 330Classpad 330
Classpad 330
 
Funciones recursivas en C++
Funciones recursivas en C++Funciones recursivas en C++
Funciones recursivas en C++
 
Tarea info
Tarea infoTarea info
Tarea info
 
Semana2
Semana2Semana2
Semana2
 
Analisis Clase2
Analisis  Clase2Analisis  Clase2
Analisis Clase2
 
Deber 7-cap-2-matlab-nise
Deber 7-cap-2-matlab-niseDeber 7-cap-2-matlab-nise
Deber 7-cap-2-matlab-nise
 
recursividad.pptx
recursividad.pptxrecursividad.pptx
recursividad.pptx
 
recursividad EN PROGRAMACION ORIENTADA .pptx
recursividad EN PROGRAMACION ORIENTADA .pptxrecursividad EN PROGRAMACION ORIENTADA .pptx
recursividad EN PROGRAMACION ORIENTADA .pptx
 
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
 
Funciones recursivas
Funciones recursivasFunciones recursivas
Funciones recursivas
 
Unidad 4 est. dat. recursividad
Unidad 4  est. dat. recursividadUnidad 4  est. dat. recursividad
Unidad 4 est. dat. recursividad
 
Algoritmos 50 ejemplos
Algoritmos 50 ejemplosAlgoritmos 50 ejemplos
Algoritmos 50 ejemplos
 
Algoritmos 50 ejemplos (1)
Algoritmos 50 ejemplos (1)Algoritmos 50 ejemplos (1)
Algoritmos 50 ejemplos (1)
 
Algoritmos 50 ejemplos
Algoritmos 50 ejemplosAlgoritmos 50 ejemplos
Algoritmos 50 ejemplos
 

Mehr von Blanca Rodríguez (20)

Proyecto final
Proyecto finalProyecto final
Proyecto final
 
Fase4
Fase4Fase4
Fase4
 
Adaptativos
AdaptativosAdaptativos
Adaptativos
 
Interfaz Gráfica
Interfaz GráficaInterfaz Gráfica
Interfaz Gráfica
 
Prefinal
PrefinalPrefinal
Prefinal
 
Proyecto
ProyectoProyecto
Proyecto
 
Catalan
CatalanCatalan
Catalan
 
Catalan
CatalanCatalan
Catalan
 
Google apps engine
Google apps engineGoogle apps engine
Google apps engine
 
Prolog
PrologProlog
Prolog
 
Palíndromo.ppt
 Palíndromo.ppt  Palíndromo.ppt
Palíndromo.ppt
 
Palíndromo.ppt
 Palíndromo.ppt  Palíndromo.ppt
Palíndromo.ppt
 
Logico1
Logico1Logico1
Logico1
 
Logico1
Logico1Logico1
Logico1
 
Caballos
CaballosCaballos
Caballos
 
Caballos
CaballosCaballos
Caballos
 
Código intermedio
Código intermedioCódigo intermedio
Código intermedio
 
Levenshtein (2)
Levenshtein (2)Levenshtein (2)
Levenshtein (2)
 
Levenshtein (2)
Levenshtein (2)Levenshtein (2)
Levenshtein (2)
 
LENGUAJES DE PROGRAMACIÓN
LENGUAJES DE PROGRAMACIÓNLENGUAJES DE PROGRAMACIÓN
LENGUAJES DE PROGRAMACIÓN
 

Kürzlich hochgeladen

TEST DE RAVEN es un test conocido para la personalidad.pdf
TEST DE RAVEN es un test conocido para la personalidad.pdfTEST DE RAVEN es un test conocido para la personalidad.pdf
TEST DE RAVEN es un test conocido para la personalidad.pdfDannyTola1
 
Plan Año Escolar Año Escolar 2023-2024. MPPE
Plan Año Escolar Año Escolar 2023-2024. MPPEPlan Año Escolar Año Escolar 2023-2024. MPPE
Plan Año Escolar Año Escolar 2023-2024. MPPELaura Chacón
 
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARONARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFAROJosé Luis Palma
 
FICHA DE MONITOREO Y ACOMPAÑAMIENTO 2024 MINEDU
FICHA DE MONITOREO Y ACOMPAÑAMIENTO  2024 MINEDUFICHA DE MONITOREO Y ACOMPAÑAMIENTO  2024 MINEDU
FICHA DE MONITOREO Y ACOMPAÑAMIENTO 2024 MINEDUgustavorojas179704
 
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxSINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxlclcarmen
 
Los Nueve Principios del Desempeño de la Sostenibilidad
Los Nueve Principios del Desempeño de la SostenibilidadLos Nueve Principios del Desempeño de la Sostenibilidad
Los Nueve Principios del Desempeño de la SostenibilidadJonathanCovena1
 
Mapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdfMapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdfvictorbeltuce
 
La evolucion de la especie humana-primero de secundaria
La evolucion de la especie humana-primero de secundariaLa evolucion de la especie humana-primero de secundaria
La evolucion de la especie humana-primero de secundariamarco carlos cuyo
 
Fisiologia.Articular. 3 Kapandji.6a.Ed.pdf
Fisiologia.Articular. 3 Kapandji.6a.Ed.pdfFisiologia.Articular. 3 Kapandji.6a.Ed.pdf
Fisiologia.Articular. 3 Kapandji.6a.Ed.pdfcoloncopias5
 
PLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docx
PLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docxPLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docx
PLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docxJUANSIMONPACHIN
 
c3.hu3.p1.p3.El ser humano como ser histórico.pptx
c3.hu3.p1.p3.El ser humano como ser histórico.pptxc3.hu3.p1.p3.El ser humano como ser histórico.pptx
c3.hu3.p1.p3.El ser humano como ser histórico.pptxMartín Ramírez
 
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADODECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADOJosé Luis Palma
 
Unidad II Doctrina de la Iglesia 1 parte
Unidad II Doctrina de la Iglesia 1 parteUnidad II Doctrina de la Iglesia 1 parte
Unidad II Doctrina de la Iglesia 1 parteJuan Hernandez
 
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdfTarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdfManuel Molina
 
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdf
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdfTema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdf
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdfDaniel Ángel Corral de la Mata, Ph.D.
 
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdf
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdfBIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdf
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdfCESARMALAGA4
 
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).ppt
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).pptPINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).ppt
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).pptAlberto Rubio
 
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdfOswaldoGonzalezCruz
 

Kürzlich hochgeladen (20)

TEST DE RAVEN es un test conocido para la personalidad.pdf
TEST DE RAVEN es un test conocido para la personalidad.pdfTEST DE RAVEN es un test conocido para la personalidad.pdf
TEST DE RAVEN es un test conocido para la personalidad.pdf
 
Plan Año Escolar Año Escolar 2023-2024. MPPE
Plan Año Escolar Año Escolar 2023-2024. MPPEPlan Año Escolar Año Escolar 2023-2024. MPPE
Plan Año Escolar Año Escolar 2023-2024. MPPE
 
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARONARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
 
PPTX: La luz brilla en la oscuridad.pptx
PPTX: La luz brilla en la oscuridad.pptxPPTX: La luz brilla en la oscuridad.pptx
PPTX: La luz brilla en la oscuridad.pptx
 
FICHA DE MONITOREO Y ACOMPAÑAMIENTO 2024 MINEDU
FICHA DE MONITOREO Y ACOMPAÑAMIENTO  2024 MINEDUFICHA DE MONITOREO Y ACOMPAÑAMIENTO  2024 MINEDU
FICHA DE MONITOREO Y ACOMPAÑAMIENTO 2024 MINEDU
 
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxSINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
 
Sesión La luz brilla en la oscuridad.pdf
Sesión  La luz brilla en la oscuridad.pdfSesión  La luz brilla en la oscuridad.pdf
Sesión La luz brilla en la oscuridad.pdf
 
Los Nueve Principios del Desempeño de la Sostenibilidad
Los Nueve Principios del Desempeño de la SostenibilidadLos Nueve Principios del Desempeño de la Sostenibilidad
Los Nueve Principios del Desempeño de la Sostenibilidad
 
Mapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdfMapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdf
 
La evolucion de la especie humana-primero de secundaria
La evolucion de la especie humana-primero de secundariaLa evolucion de la especie humana-primero de secundaria
La evolucion de la especie humana-primero de secundaria
 
Fisiologia.Articular. 3 Kapandji.6a.Ed.pdf
Fisiologia.Articular. 3 Kapandji.6a.Ed.pdfFisiologia.Articular. 3 Kapandji.6a.Ed.pdf
Fisiologia.Articular. 3 Kapandji.6a.Ed.pdf
 
PLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docx
PLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docxPLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docx
PLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docx
 
c3.hu3.p1.p3.El ser humano como ser histórico.pptx
c3.hu3.p1.p3.El ser humano como ser histórico.pptxc3.hu3.p1.p3.El ser humano como ser histórico.pptx
c3.hu3.p1.p3.El ser humano como ser histórico.pptx
 
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADODECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
 
Unidad II Doctrina de la Iglesia 1 parte
Unidad II Doctrina de la Iglesia 1 parteUnidad II Doctrina de la Iglesia 1 parte
Unidad II Doctrina de la Iglesia 1 parte
 
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdfTarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
 
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdf
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdfTema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdf
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdf
 
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdf
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdfBIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdf
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdf
 
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).ppt
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).pptPINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).ppt
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).ppt
 
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf
 

Algoritmos recursivos y números de Catalán

  • 1. MENU RECURSIÓN E ITERATIVIDAD NUMEROS DE CATALAN ALGORITMOS EJECUCIÓN DE LOS ALGORITMOS CONCLUSIONES Y RECOMENDACION ES
  • 2. La recursión o recursividad es un concepto amplio, con muchas variantes. Aparece en numerosas actividades de la vida diaria; por ejemplo en una fotografía donde se observa otra fotografía. La recursión es un recurso muy poderoso que permite expresar soluciones simples y naturales a ciertos tipos de problemas. Es importante considerar que no todos los problemas son naturalmente recursivos. Un objeto recursivo es aquel que aparece en la definición de sí mismo, así como el que se llama a sí mismo.
  • 3. Subprograma P Directa: el programa o subprograma se llama -------------------------- directamente a sí mismo. -------------------------- -------------------------- -------------------------- Llamada a P Subprograma P Subprograma Q -------------------------- -------------------------- -------------------------- -------------------------- Indirecta: el -------------------------- -------------------------- -------------------------- -------------------------- subprograma llama a Llamada a Q Llamada a P otro subprograma, y éste, en algún momento, llama nuevamente a primero. La iteración es la repetición de una secuencia de instrucciones o eventos por un cierto numero de veces.
  • 4. Estos números se utilizan en una gran variedad de problemas de combinatoria. Tienen varias aplicaciones; por ejemplo, determinar el numero de formas en que un polígono con n+2 lados se puede descomponer en n triángulos. En combinatoria los números de catalán forman una secuencia de números naturales. Obtienen su nombre del matemático belga Eugéne Charles Catalan El enésimo numero de catalán se obtiene con la formula con n>=0 La complejidad computacional de este problema es P ya que puede ser resuelto en un tiempo polinómico por una maquina Turing Determinista y que puede ser tratable.
  • 5. El problema de distancia de Los numero s de catalán se puede realizar con recursión al igual que iterativamente. 1. Inicio 2. Asignar variables: a, c, n, b=1,fac,x=1,factorial=1. 3. Pedir el numero natural la cual será la posición del numero catalán. 4. Insertar el numero. 5. Asignarlo a la variable n. 6. La formula para sacar el numero de catalán es: Con esto separamos las operaciones en a= 2n; fac=n+1 y x. 7. Asignamos la primera operación a=2n y ponemos un for para sacar su factorial ya multiplicado: a=2*n; for(c=1;c<=a;c++) b=c*b; 7.1El resultado de la operación pasa al for y el resultado de la primera operación se va asignando a la variable b, lo cual se va multiplicando esta misma por todos los valores anteriores a n. El resultado se asigna a la variable b.
  • 6. 8. Lo mismo pasa con la formula fac=n+1 Se hace con otro for : fac=n+1; for(c=1;c<=fac;c++) x=c*x; Repetir paso 7.1y el resultado se asigna a la variable x. 9. Con la tercera formula se hace lo mismo : for(c=1;c<=n;c++) factorial=c*factorial; Entonces se realiza lo mismo que en el paso 7.1 pero solo se saca el factorial de n, el resultado se asigna a la variable factorial. 10. Ya que sacamos el resultado de las tres formulas las juntamos: catalan= b/(x*factorial) 11. Se despliega el resultado.
  • 7. 1. Pedir el numero 2. Asignarlo a la variable n. 3. Mandar a llamar a la función numeroscatalan. 4. Preguntar si el numero es igual a cero: Si es verdad numeroscatalan=1(estado basico) Falso numeroscatalan=(2*((2*n)-1))/(n+1)*numeroscatalan(n-1). 5. Imprimir numeroscatalan. 6.Fin Asintóticamente los números de catalán crecen:
  • 8. #include<stdio.h> #include<conio.h> main() { int catalan,a,c,n,b=1,fac,x=1,factorial=1; printf("ttttNUMEROS DE CATALANn"); printf(“Numero:"); scanf("%d",&n); a=2*n; for(c=1;c<=a;c++) { b=c*b; }
  • 9. fac=n+1; for(c=1;c<=fac;c++) { x=c*x; } for(c=1;c<=n;c++) { factorial=c*factorial; } catalan= b/(x*factorial); printf("catalan=%d",catalan); getche(); return 0; }
  • 10. #include<stdio.h> #include<conio.h> double res; double numeroscatalan(double n); main(double n) { printf("ttNUMEROS DE CATALANn"); printf("Numero: "); scanf("%lf",&n); res=numeroscatalan(n); printf("Catalan:%.0lf",res); getche(); }
  • 11. double numeroscatalan(double n) { if (n==0) //Condicion de parada de la recursión { return 1; } else { return(2*((2*n)-1))/(n+1)*numeroscatalan(n-1); } }
  • 12. El código se simplifica. Cuando utilizamos una estructura de datos recursiva ejemplo: arboles. Los algoritmos recursivos ofrecen soluciones estructuradas, modulares y elegantemente simples. Cuando los métodos usen arreglos largos. Cuando el método cambie de manera impredecible de campos. Recomendamos utilizar solo la recursión cuando algún problema no se pueda realizar de forma iterativa o que sea más fácil realizarlo con recursión. Para este problema el algoritmo recursivo es mejor.