SlideShare ist ein Scribd-Unternehmen logo
1 von 21
Downloaden Sie, um offline zu lesen
Algoritmos y solución de problemas


     Fundamentos de Programación
                Otoño 2008
     Mtro. Luis Eduardo Pérez Bernal
Departamento de Electrónica, Sistemas e Informática



                    Introducción

• En las ciencias de la computación se ocupa de los
  problemas computables.
• Se le llama problema computable a aquella
  abstracción de la realidad que tiene representación
  algorítmica.
• Los algoritmos permiten encontrar la solución a
  problemas computables.
• Intuitivamente las personas efectuamos cotidianamente
  una serie de pasos, procedimientos o acciones que nos
  permitan alcanzar algún resultado o resolver un
  problema (al bañarnos, al desayunar, al ir a la
  universidad). En realidad todo el tiempo estamos
  aplicando algoritmos para resolver problemas.
Departamento de Electrónica, Sistemas e Informática



                      Algoritmo



• Es un método para la resolución de problemas.
• Es un conjunto de pasos a seguir para la solución a un
  problema.
• Es una serie finita de instrucciones para realizar una
  tarea.

• Formalmente:
  Es un conjunto de pasos, procedimientos o acciones
  que nos permiten alcanzar un resultado o resolver
  un problema.
Departamento de Electrónica, Sistemas e Informática



        Características de los algoritmos


• Las características que debe cumplir un algoritmo son:
   – Un algoritmo debe ser Preciso e indicar el órden de
     realización de cada paso.
   – Un algoritmo debe ser Definido, es decir, si se sigue un
     algoritmo dos veces, se debe obtener el mismo resultado.
   – Un algoritmo debe ser Finito, es decir, si se sigue el
     algoritmo se debe terminar el algún momento.
Departamento de Electrónica, Sistemas e Informática



     Otras características de los algoritmos


Debe cumplir con:

• Una secuencia de instrucciones claras y finitas
• Debe ser correcto y debe resolver el problema planteado
  en todas sus facetas
• Debe ser legible
Departamento de Electrónica, Sistemas e Informática



                 Resolver problemas


• ¿Qué tipo de problemas se pueden resolver?
   – Computables




• ¿Qué métodos hay para resolver problemas
  computables?
   – Metodología de la programación (centrado en los
     algoritmos)
Departamento de Electrónica, Sistemas e Informática



 Fases para resolver un problema computable

• Diseño de programas
   – Análisis del problema        • Análisis
   – Diseño del algoritmo         • Diseño (descendente,
   – Verificación manual del        refinamiento paso a paso)
     algoritmo
• En la computadora
   – Codificación del algoritmo
   – Ejecución del programa       •   Codificación
   – Verificación del programa    •   Ejecución
   – Mantenimiento                •   Prueba
     (documentación)              •   Mantenimiento
Departamento de Electrónica, Sistemas e Informática



   Fases para la solución de un problema computable



                                                                 Solución de un
                                                                   problema
                                                                  computable




                                                                        Diseño y      Codificación        Ejecución
                 Análisis                                              verificación                                   Prueba del
                                                                                          del                del
                   del                                                      del        Algoritmo                      Programa
                problema                                                algoritmo                         Programa
                                                                                      Lenguaje C




                                                                                        Herramientas de
              Identificar los    Identificar los                                         programación:
  Definir y                     datos de salida                       Refinamiento       -Diagramas de
                datos de                             Diseño
 entender                               =                                  por                flujo
                 Entrada                           Descendente
El problema                        resultado                             Pasos          - Pseudocódigo
Departamento de Electrónica, Sistemas e Informática



               Análisis del problema

• Es el primer paso a seguir para encontrar la solución a
  un problema computable es el análisis del problema.
• En el análisis del problema se requiere del máximo de
  creatividad e imaginación.
• Debido a que se busca una solución se debe examinar
  cuidadosamente el problema a fin de identificar que
  tipo de información es necesaria producir. En seguida se
  deben identificar aquellos elementos de información
  ofrecidos por el problema y que resulten útiles para
  obtener la solución al problema.
• Finalmente, un procedimiento para producir los
  resultados deseados a partir de los datos, es decir, el
  algoritmo.
Departamento de Electrónica, Sistemas e Informática



                 Análisis del problema



                         Análisis del
                          problema




                                                   Identificar los datos
Definir y entender   Identificar los datos
                                                        de salida
  El problema            de entrada
                                                      = resultados
Departamento de Electrónica, Sistemas e Informática



    Elementos que conforman un algoritmo


• Entrada. Los datos iniciales que posee el algoritmo
  antes de ejecutarse.
• Proceso. Acciones que lleva a cabo el algoritmo.
• Salida. Datos que obtiene finalmente el algoritmo.
Departamento de Electrónica, Sistemas e Informática



   Ejemplo: calcular el área de un rectángulo


• Análisis del problema
   – El cálculo del área del rectángulo se puede dividir en:
      • Entrada de datos (altura, base)
      • Proceso: Cálculo del área (= base x altura)
      • Salida de datos (base, altura, área)
Departamento de Electrónica, Sistemas e Informática



                   Diseño del algoritmo

• La solución de un problema complejo puede requerir muchos
  pasos, es necesario dividir el problema en subproblemas más
  sencillos de resolver.
• Este método se denomina divide y vencerás y es aplicable a la
  resolución y escritura de algoritmos y programas para computadora.
• Este método de división de un problema en otros subproblemas
  más sencillos se puede expresar para conseguir su solución en una
  computadora, mediante el método denominado diseño
  descendente.
• El proceso de la rotura de un problema principal en etapas o
  subproblemas más sencillos se denomina refinamiento paso a
  paso o sucesivos.
Departamento de Electrónica, Sistemas e Informática



Diseño descendente y refinamiento paso a paso


                                    Problema del cálculo
                                        Del área del
                                         rectángulo




          Entrada de               Cálculo del                                 Salida de
            Datos                     área                                     resultados




Entrada                Entrada      AREA =                    Salida             Salida            Salida

ALTURA                 BASE      BASE x ALTURA               ALTURA              BASE              AREA
Departamento de Electrónica, Sistemas e Informática



          Herramientas de programación


• Las herramientas de programación utilizadas como
  lenguajes algorítmicos son:
   – Pseudocódigo: es un lenguaje algorítmico, muy parecido
     al español pero más conciso que permite la redacción
     rápida del algoritmo.
   – Diagramas de flujo: ha sido la herramienta de
     programación por excelencia, y aún hoy sigue siendo muy
     utilizada. Es fácil de diseñar pues el flujo lógico del
     algoritmo se muestra en un diagrama en lugar de
     palabras.
Departamento de Electrónica, Sistemas e Informática



                       Pseudocódigo


• Es un lenguaje de pseudoprogramación, es decir, muy
  parecido a un lenguaje de programación.
• El pseudocódigo es muy fácil de utilizar, ya que es muy
  similar al español.
• Algunas palabras utilizadas en el pseudocódigo:
   –   Inicio
   –   Fin
   –   Leer
   –   Escribir
   –   Asignar (x   y+z)
Departamento de Electrónica, Sistemas e Informática



            Ejemplo de pseudocódigo


Programa CalculoAreaRectangulo
Inicio
   leer; base, altura
   area base x altura
   escribir; base, altura, area
Fin
Departamento de Electrónica, Sistemas e Informática



                 Diagramas de flujo


• Un diagrama de flujo utiliza símbolos estándar en el que
  cada paso del algoritmo se visualiza dentro del símbolo
  y en el orden en que estos pasos se ejecutan, se indica
  conectándolos con flechas llamadas líneas de flujo, ya
  que indican el flujo lógico del algoritmo.
• Los símbolos utilizados en los diagramas de flujo han
  sido estandarizados por la ANSI (American National
  Institute) y por la ISO (International Standard
  Organization)
Departamento de Electrónica, Sistemas e Informática



Símbolos de diagramas de flujo
Departamento de Electrónica, Sistemas e Informática



Ejemplo: Diagrama de flujo


              INICIO




             Leer:
            base, altura




         Area←base x altura




            Imprimir:
            base, altura,
            área



                FIN
Departamento de Electrónica, Sistemas e Informática



   Fases para la solución de un problema computable



                                                                 Solución de un
                                                                   problema
                                                                  computable




                                                                        Diseño y      Codificación        Ejecución
                 Análisis                                              verificación                                   Prueba del
                                                                                          del                del
                   del                                                      del        Algoritmo                      Programa
                problema                                                algoritmo                         Programa
                                                                                      Lenguaje C




                                                                                        Herramientas de
              Identificar los    Identificar los                                         programación:
  Definir y                     datos de salida                       Refinamiento       -Diagramas de
                datos de                             Diseño
 entender                               =                                  por                flujo
                 Entrada                           Descendente
El problema                        resultado                             Pasos          - Pseudocódigo

Weitere ähnliche Inhalte

Andere mochten auch

Cap%c3%8 dtulo+1+programacion+orientada+a+objetos
Cap%c3%8 dtulo+1+programacion+orientada+a+objetosCap%c3%8 dtulo+1+programacion+orientada+a+objetos
Cap%c3%8 dtulo+1+programacion+orientada+a+objetosCINTHI11
 
19 Luglio 2013 - Il Futuro della Televisione -
19 Luglio 2013 - Il Futuro della Televisione - 19 Luglio 2013 - Il Futuro della Televisione -
19 Luglio 2013 - Il Futuro della Televisione - CSP Scarl
 
Study: The Future of VR, AR and Self-Driving Cars
Study: The Future of VR, AR and Self-Driving CarsStudy: The Future of VR, AR and Self-Driving Cars
Study: The Future of VR, AR and Self-Driving CarsLinkedIn
 
Hype vs. Reality: The AI Explainer
Hype vs. Reality: The AI ExplainerHype vs. Reality: The AI Explainer
Hype vs. Reality: The AI ExplainerLuminary Labs
 

Andere mochten auch (8)

Lenguajec++
Lenguajec++Lenguajec++
Lenguajec++
 
Lenguajec++
Lenguajec++Lenguajec++
Lenguajec++
 
audio conferencia
audio conferenciaaudio conferencia
audio conferencia
 
Cap%c3%8 dtulo+1+programacion+orientada+a+objetos
Cap%c3%8 dtulo+1+programacion+orientada+a+objetosCap%c3%8 dtulo+1+programacion+orientada+a+objetos
Cap%c3%8 dtulo+1+programacion+orientada+a+objetos
 
Evaluación de páginas web1
Evaluación de páginas web1Evaluación de páginas web1
Evaluación de páginas web1
 
19 Luglio 2013 - Il Futuro della Televisione -
19 Luglio 2013 - Il Futuro della Televisione - 19 Luglio 2013 - Il Futuro della Televisione -
19 Luglio 2013 - Il Futuro della Televisione -
 
Study: The Future of VR, AR and Self-Driving Cars
Study: The Future of VR, AR and Self-Driving CarsStudy: The Future of VR, AR and Self-Driving Cars
Study: The Future of VR, AR and Self-Driving Cars
 
Hype vs. Reality: The AI Explainer
Hype vs. Reality: The AI ExplainerHype vs. Reality: The AI Explainer
Hype vs. Reality: The AI Explainer
 

Ähnlich wie Algoritmos2

Algoritmos y solución de problemas.pptx Algoritmos y solución de problemas.pptx
Algoritmos y solución de problemas.pptx Algoritmos y solución de problemas.pptxAlgoritmos y solución de problemas.pptx Algoritmos y solución de problemas.pptx
Algoritmos y solución de problemas.pptx Algoritmos y solución de problemas.pptxanytrix
 
Metodología para la solución de problemas con el uso de algoritmos
Metodología para la solución de problemas con el uso de algoritmosMetodología para la solución de problemas con el uso de algoritmos
Metodología para la solución de problemas con el uso de algoritmosIEO Santo Tomás
 
Fases Para Solucionar Problemas con computadoras
Fases Para Solucionar Problemas con computadorasFases Para Solucionar Problemas con computadoras
Fases Para Solucionar Problemas con computadorasJosmary Romero
 
3 programacion estructurada
3 programacion estructurada3 programacion estructurada
3 programacion estructuradacortezbfajardo
 
Diseño de pseudocodigo
Diseño de pseudocodigoDiseño de pseudocodigo
Diseño de pseudocodigoANIMEFLV
 
Pres algoritmos
Pres algoritmosPres algoritmos
Pres algoritmoslrobalinos
 
Pres algoritmos
Pres algoritmosPres algoritmos
Pres algoritmoswmvp
 
Pres algoritmos
Pres algoritmosPres algoritmos
Pres algoritmosegalarzar
 

Ähnlich wie Algoritmos2 (20)

AlgoritmoSoluciondeProblema.pdf
AlgoritmoSoluciondeProblema.pdfAlgoritmoSoluciondeProblema.pdf
AlgoritmoSoluciondeProblema.pdf
 
Algoritmos y solución de problemas.pptx Algoritmos y solución de problemas.pptx
Algoritmos y solución de problemas.pptx Algoritmos y solución de problemas.pptxAlgoritmos y solución de problemas.pptx Algoritmos y solución de problemas.pptx
Algoritmos y solución de problemas.pptx Algoritmos y solución de problemas.pptx
 
Metodología para la solución de problemas con el uso de algoritmos
Metodología para la solución de problemas con el uso de algoritmosMetodología para la solución de problemas con el uso de algoritmos
Metodología para la solución de problemas con el uso de algoritmos
 
Presentación1
Presentación1Presentación1
Presentación1
 
Presentación1
Presentación1Presentación1
Presentación1
 
Fases Para Solucionar Problemas con computadoras
Fases Para Solucionar Problemas con computadorasFases Para Solucionar Problemas con computadoras
Fases Para Solucionar Problemas con computadoras
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
3 programacion estructurada
3 programacion estructurada3 programacion estructurada
3 programacion estructurada
 
Diseño de pseudocodigo
Diseño de pseudocodigoDiseño de pseudocodigo
Diseño de pseudocodigo
 
Algoritmos y programas estructuras
Algoritmos y programas estructurasAlgoritmos y programas estructuras
Algoritmos y programas estructuras
 
Pres algoritmos
Pres algoritmosPres algoritmos
Pres algoritmos
 
Pres algoritmos
Pres algoritmosPres algoritmos
Pres algoritmos
 
Pres algoritmos
Pres algoritmosPres algoritmos
Pres algoritmos
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Pres algoritmos
Pres algoritmosPres algoritmos
Pres algoritmos
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Algoritmos.
Algoritmos.Algoritmos.
Algoritmos.
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 

Kürzlich hochgeladen

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
 
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
 
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
 
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
 
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptx
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptxc3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptx
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptxMartín Ramírez
 
Fundamentos y Principios de Psicopedagogía..pdf
Fundamentos y Principios de Psicopedagogía..pdfFundamentos y Principios de Psicopedagogía..pdf
Fundamentos y Principios de Psicopedagogía..pdfsamyarrocha1
 
LA OVEJITA QUE VINO A CENAR CUENTO INFANTIL.pdf
LA OVEJITA QUE VINO A CENAR CUENTO INFANTIL.pdfLA OVEJITA QUE VINO A CENAR CUENTO INFANTIL.pdf
LA OVEJITA QUE VINO A CENAR CUENTO INFANTIL.pdfNataliaMalky1
 
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
 
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJOTUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJOweislaco
 
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
 
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...fcastellanos3
 
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
 
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
 
VOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMAL
VOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMALVOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMAL
VOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMALEDUCCUniversidadCatl
 
periodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicasperiodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicas123yudy
 
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxPPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxOscarEduardoSanchezC
 
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
 

Kürzlich hochgeladen (20)

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
 
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
 
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
 
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
 
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptx
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptxc3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptx
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptx
 
Fundamentos y Principios de Psicopedagogía..pdf
Fundamentos y Principios de Psicopedagogía..pdfFundamentos y Principios de Psicopedagogía..pdf
Fundamentos y Principios de Psicopedagogía..pdf
 
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
 
LA OVEJITA QUE VINO A CENAR CUENTO INFANTIL.pdf
LA OVEJITA QUE VINO A CENAR CUENTO INFANTIL.pdfLA OVEJITA QUE VINO A CENAR CUENTO INFANTIL.pdf
LA OVEJITA QUE VINO A CENAR CUENTO INFANTIL.pdf
 
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
 
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJOTUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
 
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
 
VISITA À PROTEÇÃO CIVIL _
VISITA À PROTEÇÃO CIVIL                  _VISITA À PROTEÇÃO CIVIL                  _
VISITA À PROTEÇÃO CIVIL _
 
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
 
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
 
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
 
VOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMAL
VOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMALVOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMAL
VOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMAL
 
DIA INTERNACIONAL DAS FLORESTAS .
DIA INTERNACIONAL DAS FLORESTAS         .DIA INTERNACIONAL DAS FLORESTAS         .
DIA INTERNACIONAL DAS FLORESTAS .
 
periodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicasperiodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicas
 
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxPPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
 
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
 

Algoritmos2

  • 1. Algoritmos y solución de problemas Fundamentos de Programación Otoño 2008 Mtro. Luis Eduardo Pérez Bernal
  • 2. Departamento de Electrónica, Sistemas e Informática Introducción • En las ciencias de la computación se ocupa de los problemas computables. • Se le llama problema computable a aquella abstracción de la realidad que tiene representación algorítmica. • Los algoritmos permiten encontrar la solución a problemas computables. • Intuitivamente las personas efectuamos cotidianamente una serie de pasos, procedimientos o acciones que nos permitan alcanzar algún resultado o resolver un problema (al bañarnos, al desayunar, al ir a la universidad). En realidad todo el tiempo estamos aplicando algoritmos para resolver problemas.
  • 3. Departamento de Electrónica, Sistemas e Informática Algoritmo • Es un método para la resolución de problemas. • Es un conjunto de pasos a seguir para la solución a un problema. • Es una serie finita de instrucciones para realizar una tarea. • Formalmente: Es un conjunto de pasos, procedimientos o acciones que nos permiten alcanzar un resultado o resolver un problema.
  • 4. Departamento de Electrónica, Sistemas e Informática Características de los algoritmos • Las características que debe cumplir un algoritmo son: – Un algoritmo debe ser Preciso e indicar el órden de realización de cada paso. – Un algoritmo debe ser Definido, es decir, si se sigue un algoritmo dos veces, se debe obtener el mismo resultado. – Un algoritmo debe ser Finito, es decir, si se sigue el algoritmo se debe terminar el algún momento.
  • 5. Departamento de Electrónica, Sistemas e Informática Otras características de los algoritmos Debe cumplir con: • Una secuencia de instrucciones claras y finitas • Debe ser correcto y debe resolver el problema planteado en todas sus facetas • Debe ser legible
  • 6. Departamento de Electrónica, Sistemas e Informática Resolver problemas • ¿Qué tipo de problemas se pueden resolver? – Computables • ¿Qué métodos hay para resolver problemas computables? – Metodología de la programación (centrado en los algoritmos)
  • 7. Departamento de Electrónica, Sistemas e Informática Fases para resolver un problema computable • Diseño de programas – Análisis del problema • Análisis – Diseño del algoritmo • Diseño (descendente, – Verificación manual del refinamiento paso a paso) algoritmo • En la computadora – Codificación del algoritmo – Ejecución del programa • Codificación – Verificación del programa • Ejecución – Mantenimiento • Prueba (documentación) • Mantenimiento
  • 8. Departamento de Electrónica, Sistemas e Informática Fases para la solución de un problema computable Solución de un problema computable Diseño y Codificación Ejecución Análisis verificación Prueba del del del del del Algoritmo Programa problema algoritmo Programa Lenguaje C Herramientas de Identificar los Identificar los programación: Definir y datos de salida Refinamiento -Diagramas de datos de Diseño entender = por flujo Entrada Descendente El problema resultado Pasos - Pseudocódigo
  • 9. Departamento de Electrónica, Sistemas e Informática Análisis del problema • Es el primer paso a seguir para encontrar la solución a un problema computable es el análisis del problema. • En el análisis del problema se requiere del máximo de creatividad e imaginación. • Debido a que se busca una solución se debe examinar cuidadosamente el problema a fin de identificar que tipo de información es necesaria producir. En seguida se deben identificar aquellos elementos de información ofrecidos por el problema y que resulten útiles para obtener la solución al problema. • Finalmente, un procedimiento para producir los resultados deseados a partir de los datos, es decir, el algoritmo.
  • 10. Departamento de Electrónica, Sistemas e Informática Análisis del problema Análisis del problema Identificar los datos Definir y entender Identificar los datos de salida El problema de entrada = resultados
  • 11. Departamento de Electrónica, Sistemas e Informática Elementos que conforman un algoritmo • Entrada. Los datos iniciales que posee el algoritmo antes de ejecutarse. • Proceso. Acciones que lleva a cabo el algoritmo. • Salida. Datos que obtiene finalmente el algoritmo.
  • 12. Departamento de Electrónica, Sistemas e Informática Ejemplo: calcular el área de un rectángulo • Análisis del problema – El cálculo del área del rectángulo se puede dividir en: • Entrada de datos (altura, base) • Proceso: Cálculo del área (= base x altura) • Salida de datos (base, altura, área)
  • 13. Departamento de Electrónica, Sistemas e Informática Diseño del algoritmo • La solución de un problema complejo puede requerir muchos pasos, es necesario dividir el problema en subproblemas más sencillos de resolver. • Este método se denomina divide y vencerás y es aplicable a la resolución y escritura de algoritmos y programas para computadora. • Este método de división de un problema en otros subproblemas más sencillos se puede expresar para conseguir su solución en una computadora, mediante el método denominado diseño descendente. • El proceso de la rotura de un problema principal en etapas o subproblemas más sencillos se denomina refinamiento paso a paso o sucesivos.
  • 14. Departamento de Electrónica, Sistemas e Informática Diseño descendente y refinamiento paso a paso Problema del cálculo Del área del rectángulo Entrada de Cálculo del Salida de Datos área resultados Entrada Entrada AREA = Salida Salida Salida ALTURA BASE BASE x ALTURA ALTURA BASE AREA
  • 15. Departamento de Electrónica, Sistemas e Informática Herramientas de programación • Las herramientas de programación utilizadas como lenguajes algorítmicos son: – Pseudocódigo: es un lenguaje algorítmico, muy parecido al español pero más conciso que permite la redacción rápida del algoritmo. – Diagramas de flujo: ha sido la herramienta de programación por excelencia, y aún hoy sigue siendo muy utilizada. Es fácil de diseñar pues el flujo lógico del algoritmo se muestra en un diagrama en lugar de palabras.
  • 16. Departamento de Electrónica, Sistemas e Informática Pseudocódigo • Es un lenguaje de pseudoprogramación, es decir, muy parecido a un lenguaje de programación. • El pseudocódigo es muy fácil de utilizar, ya que es muy similar al español. • Algunas palabras utilizadas en el pseudocódigo: – Inicio – Fin – Leer – Escribir – Asignar (x y+z)
  • 17. Departamento de Electrónica, Sistemas e Informática Ejemplo de pseudocódigo Programa CalculoAreaRectangulo Inicio leer; base, altura area base x altura escribir; base, altura, area Fin
  • 18. Departamento de Electrónica, Sistemas e Informática Diagramas de flujo • Un diagrama de flujo utiliza símbolos estándar en el que cada paso del algoritmo se visualiza dentro del símbolo y en el orden en que estos pasos se ejecutan, se indica conectándolos con flechas llamadas líneas de flujo, ya que indican el flujo lógico del algoritmo. • Los símbolos utilizados en los diagramas de flujo han sido estandarizados por la ANSI (American National Institute) y por la ISO (International Standard Organization)
  • 19. Departamento de Electrónica, Sistemas e Informática Símbolos de diagramas de flujo
  • 20. Departamento de Electrónica, Sistemas e Informática Ejemplo: Diagrama de flujo INICIO Leer: base, altura Area←base x altura Imprimir: base, altura, área FIN
  • 21. Departamento de Electrónica, Sistemas e Informática Fases para la solución de un problema computable Solución de un problema computable Diseño y Codificación Ejecución Análisis verificación Prueba del del del del del Algoritmo Programa problema algoritmo Programa Lenguaje C Herramientas de Identificar los Identificar los programación: Definir y datos de salida Refinamiento -Diagramas de datos de Diseño entender = por flujo Entrada Descendente El problema resultado Pasos - Pseudocódigo