SlideShare une entreprise Scribd logo
1  sur  10
Télécharger pour lire hors ligne
Pontificia Universidad Católica de Valparaíso
                                                                                                                            Escuela de Ingeniería Informática

                 Pontificia Universidad Católica de Valparaíso
                             Facultad de Ingeniería                                               Definición de Algoritmo (RAE)
                       Escuela de Ingeniería Informática


                                                                                                  • Conjunto ordenado y finito de operaciones
                                                                                                    que permite hallar la solución de un
                                                                                                    problema.
               “Introducción a los Algoritmos”

                                                                                                  • Método y notación en las distintas formas del
                                        Asignatura                                                  cálculo.
                              INF 140 – Informática I
                                        Profesores
                         Pamela Hermosilla Monckton
                           Daniel Cabrera Paniagua

                                        Ayudantes



Profesores                                                                                        Profesores
                                                                                                                                                                      INF 140 – Informática I
PHM/DCP                                                                                           PHM/DCP




                        Pontificia Universidad Católica de Valparaíso                                                 Pontificia Universidad Católica de Valparaíso
                              Escuela de Ingeniería Informática                                                             Escuela de Ingeniería Informática



                                                                                                               Algoritmo (informalmente)
             Algoritmo (Otras fuentes)
                                                                                                        Si a una persona se le entrega dicha lista, y ésta
• Procedimiento para resolver un problema
                                                                                                        sigue las instrucciones cuidadosamente
  matemático en un número finito de pasos, lo
                                                                                                        entonces al llegar al final se habrá resuelto la
  que frecuentemente involucra repetición de una
                                                                                                        tarea en cuestión
  operación.

      Método detallado paso a paso para lograr una
      tarea.




Profesores                                                                                        Profesores
                                                                        INF 140 – Informática I                                                                       INF 140 – Informática I
PHM/DCP                                                                                           PHM/DCP
Pontificia Universidad Católica de Valparaíso                                                      Pontificia Universidad Católica de Valparaíso
                                  Escuela de Ingeniería Informática                                                                  Escuela de Ingeniería Informática


              Nuestra Definición de Algoritmo
                                                                                                                               Algoritmos
Un algoritmo es un conjunto finito de instrucciones que especifican la
secuencia de operaciones a realizar, en orden, para resolver un problema
                                                                                                      Nivel de Abstracción
determinado.
En otras palabras es una fórmula para resolver un problema.

                                                                                                            Olvidar información y consecuentemente tratar
Generalmente es una lista de la siguiente forma:
                                                                                                            cosas que son diferentes como si fueran las
Paso 1: “Hacer algo”
                                                                                                            mismas. Esto con el fin de simplificar el análisis
Paso 2: “Hacer algo”
Paso 3: “Hacer algo”                                                                                        separando los atributos relevantes dentro de un
              .
              .
              .                                                                                             contexto determinado.
Paso n: “Hacer algo”


                                                                                                      Dividir & Vencer (divide & conquer)

Profesores                                                                                            Profesores
                                                                            INF 140 – Informática I                                                                            INF 140 – Informática I
PHM/DCP                                                                                               PHM/DCP




                            Pontificia Universidad Católica de Valparaíso                                                      Pontificia Universidad Católica de Valparaíso
                                  Escuela de Ingeniería Informática                                                                  Escuela de Ingeniería Informática



                                                                                                                         Otros Ejemplos
             Algoritmos Cotidianos (Narrativos)
                                                                                                      Un alumno solicita ser el ayudante de un ramo. El profesor examina en la
                                                                                                      base de datos de la escuela el historial del alumno. Si el alumno está
                                                                                                      capacitado el profesor lo acepta como ayudante, en caso contrario la solicitud
Llamar por teléfono
                                                                                                      del alumno será rechazada.
Planchar
                                                                                                      Los pasos del algoritmo en descripción narrativa son los siguientes:
Cocinar panqueques
                                                                                                      1. Inicio
Inscribir una asignatura…                                                                             2. Leer solicitud del alumno
                                                                                                      3. Leer historial del alumno
etc.
                                                                                                      4. Si, el alumno está capacitado, el profesor acepta la solicitud, en caso contrario
                                                                                                      la solicitud es rechazada.
                                                                                                      5. Fin




Profesores                                                                                            Profesores
                                                                            INF 140 – Informática I                                                                            INF 140 – Informática I
PHM/DCP                                                                                               PHM/DCP
Pontificia Universidad Católica de Valparaíso                                                     Pontificia Universidad Católica de Valparaíso
                              Escuela de Ingeniería Informática                                                                 Escuela de Ingeniería Informática



                                                                                                                       Características
Calcular el promedio de 3 notas:

1. Inicio
                                                                                                  •     Correcto - Fiable
2. Leer nota 1
3. Leer nota 2
                                                                                                  •     Eficiencia tiempo & recursos
3. Leer nota 3
4. Asignar a suma_de_notas el resultado de nota1+ nota2 + nota3                                   •     Claro - Fácil de mantener
5. Asignar a promedio el resultado de suma_de_notas / 3
                                                                                                  •     Interfaz apropiada
6. Escribir resultado
7. Fin
                                                                                                  •     Preciso : orden en cada paso
Realizar una venta con factura…                                                                   •     Definido: siempre se obtiene el mismo resultado
                                                                                                  •     Finito: número finito de pasos




Profesores                                                                                        Profesores
                                                                        INF 140 – Informática I                                                                           INF 140 – Informática I
PHM/DCP                                                                                           PHM/DCP




                        Pontificia Universidad Católica de Valparaíso                                                     Pontificia Universidad Católica de Valparaíso
                              Escuela de Ingeniería Informática                                                                 Escuela de Ingeniería Informática




 • Error – creer que:
                                                                                                         Realidad:
        Aprender a programar significa aprender un
                                                                                                               La parte medular de la programación
        lenguaje computacional hasta dominarlo
                                                                                                               consiste en resolver el problema.
        completamente, y luego utilizarlo para
                                                                                                               Esto es independiente del lenguaje en el cual
        expresar, en la forma que el computador
                                                                                                               se expresará posteriormente esta solución
        entiende, el problema particular que se
        quiere resolver




Profesores                                                                                        Profesores
                                                                        INF 140 – Informática I                                                                           INF 140 – Informática I
PHM/DCP                                                                                           PHM/DCP
Pontificia Universidad Católica de Valparaíso                                                    Pontificia Universidad Católica de Valparaíso
                          Escuela de Ingeniería Informática                                                                Escuela de Ingeniería Informática




                                                                                                  • Resolver un problema usando un computador no es
                                                                                                    solamente conocer un lenguaje de programación.
• Programar NO es fácil, ya que no es fácil
                                                                                                  • Es disponer de la capacidad para analizar un
  resolver problemas
                                                                                                    problema, entenderlo y especificar el algoritmo que
                                                                                                    permite solucionarlo, usando un lenguaje de
                                                                                                    programación.
• ... y enseñar a programar tampoco lo es
  porque en realidad lo que se debe                                                               • Para ello no basta con aprender un lenguaje de
                                                                                                    programación, además hay que disponer de una
  enseñar son técnicas de solución de
                                                                                                    metodología que permita resolver problemas
  problemas.                                                                                        computacionalmente.




Profesores                                                                                    Profesores
                                                                    INF 140 – Informática I                                                                          INF 140 – Informática I
PHM/DCP                                                                                       PHM/DCP




                    Pontificia Universidad Católica de Valparaíso                                                    Pontificia Universidad Católica de Valparaíso
                          Escuela de Ingeniería Informática                                                                Escuela de Ingeniería Informática



    • El medio para resolver un problema en forma                                                          ¿Qué es un lenguaje? (1)
      computacional es un conjunto preciso de
      instrucciones expresadas en un cierto lenguaje, lo
                                                                                              Def. RAE:
      cual constituye lo que se denomina un programa.

                                                                                                    “Conjunto de sonidos articulados con que el hombre
    • Pero el programa puede ser visto simplemente como                                             manifiesta lo que piensa o siente.”
      un algoritmo expresado en un lenguaje de
      programación.                                                                                 “Estilo y modo de hablar y escribir de cada persona en
                                                                                                    particular.”
    • Este algoritmo es independiente del lenguaje y
                                                                                                    “Conjunto de señales que dan a entender algo. (El lenguaje
      constituye la forma en que se resuelve el problema.
                                                                                                    de los ojos, el de las flores).”


Profesores                                                                                    Profesores
                                                                    INF 140 – Informática I                                                                          INF 140 – Informática I
PHM/DCP                                                                                       PHM/DCP
Pontificia Universidad Católica de Valparaíso                                                     Pontificia Universidad Católica de Valparaíso
                           Escuela de Ingeniería Informática                                                                 Escuela de Ingeniería Informática


                                                                                                              ¿Qué es un lenguaje de
             ¿Qué es un lenguaje? (2)
                                                                                                                 programación?
• Un lenguaje es un medio de comunicación entre los
                                                                                               • Es un lenguaje utilizado es la escritura de programas para
  seres humanos a través de signos orales y escritos que
                                                                                                 computadores, de tal modo que puedan ser entendidos por
  poseen un significado.
                                                                                                 estos últimos.

                                                                                               • Se clasifican en tres grupos:

                                                                                                        – Máquina
                                                                                                        – Bajo Nivel
                                                                                                        – Alto Nivel




Profesores                                                                                     Profesores
                                                                     INF 140 – Informática I                                                                           INF 140 – Informática I
PHM/DCP                                                                                        PHM/DCP




                     Pontificia Universidad Católica de Valparaíso                                                     Pontificia Universidad Católica de Valparaíso
                           Escuela de Ingeniería Informática                                                                 Escuela de Ingeniería Informática




                Lenguaje Máquina                                                                            Lenguaje de Bajo Nivel
• Es el lenguaje propio de los computadores, basado en la                                      • La programación en lenguaje máquina es difícil. Es por ello se
  lógica binaria, de ceros y unos (00010111).                                                    necesitan lenguajes que faciliten este proceso. En base a esto
                                                                                                 se han sido diseñados los lenguajes de bajo nivel.
• Este lenguaje resulta difícil de utilizar para las personas, ya
  que el programador debe introducir todos y cada uno de los                                   • Los lenguajes de bajo nivel permiten crear programas muy
  comandos y datos en forma binaria.                                                             rápidos, pero que son a menudo difíciles de comprender.

• La programación en lenguaje máquina es una tarea tan                                         • Se requiere que el programador piense a nivel de máquina.
  tediosa y consume tanto tiempo que raras veces lo que se
  ahorra en la ejecución del programa justifica los días o                                     • Un ejemplo de este tipo de lenguaje es el ensamblador.
  semanas que se han necesitado para escribir el mismo.




Profesores                                                                                     Profesores
                                                                     INF 140 – Informática I                                                                           INF 140 – Informática I
PHM/DCP                                                                                        PHM/DCP
Pontificia Universidad Católica de Valparaíso                                                 Pontificia Universidad Católica de Valparaíso
                                Escuela de Ingeniería Informática                                                             Escuela de Ingeniería Informática




              Lenguaje Ensamblador                                                                               Lenguaje de Alto Nivel (1)
• El lenguaje ensamblador es un lenguaje funcionalmente                                             • Los llamados lenguajes de alto nivel son los que se emplean
  similar al lenguaje máquina, pero más sencillo de utilizar.                                         con mayor frecuencia como lenguajes de programación,
                                                                                                      porque permiten expresar los algoritmos de una manera y con
                                                                                                      un estilo fácilmente reconocible por parte de diversos
• En este lenguaje, los programadores utilizan códigos
                                                                                                      programadores.
  alfabéticos que se corresponden con instrucciones de tipo
  numérico de las máquinas.
                                                                                                    • Son útiles para simplificar el proceso de programación.
• El “enlace” entre el programador y el computador, un
  programa llamado ensamblador, traduce cada instrucción de                                         • Algunos ejemplos de lenguaje de alto nivel son:
  este lenguaje en la sentencia máquina que corresponda.                                               – Java
                                                                                                       – C/C++
                                                                                                       – Visual Basic
                                                                                                       – HTML, XML, Prolog, Lisp, …y un gran etc…

Profesores                                                                                          Profesores
                                                                          INF 140 – Informática I                                                                       INF 140 – Informática I
PHM/DCP                                                                                             PHM/DCP




                          Pontificia Universidad Católica de Valparaíso                                                 Pontificia Universidad Católica de Valparaíso
                                Escuela de Ingeniería Informática                                                             Escuela de Ingeniería Informática




             Lenguaje de Alto Nivel (2)                                                                              Compiladores (1)
• Ventaja:                                                                                          • Un compilador es un traductor.
         – Son fácilmente transportables de una máquina a otra sin
           necesidad de realizar grandes cambios en ellos, por lo que se                            • El compilador traduce un código fuente íntegramente a
           dice que son independientes de la máquina empleada.
                                                                                                      lenguaje máquina antes de su ejecución, por lo que el
                                                                                                      resultado se ejecuta con tanta rapidez como si se hubiese
• Tanto los lenguajes de alto nivel como de bajo nivel no son                                         escrito directamente en lenguaje máquina.
  entendibles directamente por la máquina, sino que necesitan
  ser traducidos a instrucciones en lenguaje máquina.
                                                                                                    • El compilador es el más eficaz para la mayor parte de las
                                                                                                      máquinas, puesto que presenta la ventaja que cada una de las
• Para ello se emplean Compiladores, e Intérpretes.                                                   sentencias del programa es interpretada y traducida al
                                                                                                      lenguaje máquina sólo una vez.




Profesores                                                                                          Profesores
                                                                          INF 140 – Informática I                                                                       INF 140 – Informática I
PHM/DCP                                                                                             PHM/DCP
Pontificia Universidad Católica de Valparaíso                                                          Pontificia Universidad Católica de Valparaíso
                             Escuela de Ingeniería Informática                                                                      Escuela de Ingeniería Informática




              Compiladores (2)                                                                                                Intérpretes
 • Un compilador crea una lista de instrucciones de código                                         • Son programas que se traducen línea por línea el código
   máquina, basándose en un código fuente.                                                           fuente.

 • El código objeto resultante es un programa rápido y listo para                                  • Son traductores más lentos que los compiladores, ya que no
   funcionar, pero que puede hacer que falle el ordenador si no                                      producen un código objeto, sino que recorren el código fuente
   está bien diseñado.                                                                               una línea cada vez.

                                                                                                   • Cada línea se traduce a código máquina y se ejecuta.




 Profesores                                                                                        Profesores
                                                                         INF 140 – Informática I                                                                              INF 140 – Informática I
 PHM/DCP                                                                                           PHM/DCP




                       Pontificia Universidad Católica de Valparaíso                                                          Pontificia Universidad Católica de Valparaíso
                             Escuela de Ingeniería Informática                                                                      Escuela de Ingeniería Informática




                                                                                                                Resolución de Problemas
Alto Nivel                          Bajo Nivel                                       Máquina
                                                                                                   • Entender el problema -> Definir el problema con claridad !!!

                                                                                    Ejecutable
  Código                               Código                                                      • Idear un plan para resolver el problema
  fuente                               Objeto
              Compilador /                                                                                  – Identificar recursos, personas, información, etc.
                                                               Ensamblador
               Intérprete                                                                                   – Establecer el modo de utilizar los elementos identificados.
                                        SUB                                           011010
                                           …                                          100010
                                                                                                   • Ejecutar el plan

                                                           Incorporación de
                                                                                                   • Evaluar la solución obtenida
                                                             bibliotecas ya
                                                               existentes                                   – ¿Se ha resuelto efectivamente el problema existente?
                                                                                                            – La solución alcanzada, ¿es útil para otros problemas?



 Profesores                                                                                        Profesores
                                                                         INF 140 – Informática I                                                                              INF 140 – Informática I
 PHM/DCP                                                                                           PHM/DCP
Pontificia Universidad Católica de Valparaíso                                                 Pontificia Universidad Católica de Valparaíso
                                   Escuela de Ingeniería Informática                                                             Escuela de Ingeniería Informática




             Proceso de Programación                                                                                   Alcances… (1)
• La programación es una forma especializada del modelo de                                             • En general, los problemas a resolver son tan complejos, que no
  resolución de problemas…                                                                               es posible resolverlos de una sola vez.

• Sus fases son:                                                                                       • Es por ello que usualmente se divide un problema mayor en un
                                                                                                         listado de sub-problemas más pequeños y abordables.
         –   Definición del problema.
         –   Creación, depuración y verificación del algoritmo.                                        • Cada uno de estos sub-problemas son, a la vez, divisibles en
                                                                                                         otros sub-problemas de menor tamaño.
         –   Escritura del programa.
         –   Verificación y depuración del programa.
                                                                                                       • Algunos autores llaman a esto Dividir y Conquistar, o
                                                                                                         Refinamiento por Pasos.



Profesores                                                                                             Profesores
                                                                             INF 140 – Informática I                                                                       INF 140 – Informática I
PHM/DCP                                                                                                PHM/DCP




                             Pontificia Universidad Católica de Valparaíso                                                 Pontificia Universidad Católica de Valparaíso
                                   Escuela de Ingeniería Informática                                                             Escuela de Ingeniería Informática




                         Alcances… (2)                                                                                 Alcances… (3)
• Este tipo de proceso se asocia a un enfoque “de arriba abajo”                                        • Este algoritmo suele estar escrito en un formato denominado
  (Top Down), ya que el problema se aborda desde lo más                                                  Pseudocódigo, una mezcla entre lenguaje informático y
  general (“desde arriba”), y progresivamente se introducen                                              lenguaje natural.
  mayores detalles según se requiera (“hacia abajo)”.
                                                                                                       • Una vez que los detalles del algoritmo están correctos, el paso
• El resultado es un algoritmo, que corresponde a un conjunto                                            siguiente es traducir las instrucciones existentes en
  de instrucciones paso a paso que, luego de ser ejecutadas,                                             pseudocódigo a un lenguaje de programación de alto nivel.
  resuelven el problema original.




Profesores                                                                                             Profesores
                                                                             INF 140 – Informática I                                                                       INF 140 – Informática I
PHM/DCP                                                                                                PHM/DCP
Pontificia Universidad Católica de Valparaíso                                                     Pontificia Universidad Católica de Valparaíso
                            Escuela de Ingeniería Informática                                                                 Escuela de Ingeniería Informática


             Forma Difícil de Resolver un                                                        Forma Adecuada de Resolver un
                     Problema                                                                            Problema (1)
                                              Solución en forma de
                                                   programa                                                                                                             Solución en forma de
                                                                                                                                                                             programa
                                                                                                                                 Solución en
                                       ?                                                                                            forma
                  Problema                                                                          Problema                     algorítmica




• Énfasis en dar una solución rápida al problema, pero…
                                                                                                               Comprensión                              Implementación
     ¿Qué problema estoy resolviendo?                                                                          del problema                              de la Solución
     ¿Abordé el problema de manera adecuada?

Profesores                                                                                      Profesores
                                                                      INF 140 – Informática I                                                                                INF 140 – Informática I
PHM/DCP                                                                                         PHM/DCP




                      Pontificia Universidad Católica de Valparaíso                                                     Pontificia Universidad Católica de Valparaíso
                            Escuela de Ingeniería Informática                                                                 Escuela de Ingeniería Informática


 Forma Adecuada de Resolver un                                                                        Aspectos a tener en cuenta en
         Problema (2)                                                                                       un algoritmo (1)
                                                                                                • Como ya se ha mencionado, un algoritmo se desarrolla con
• Lo importante radica en comprender efectivamente qué
                                                                                                  el objetivo de resolver un problema.
  problema pretendemos resolver, y plantear una
  solución analítica que lo resuelva.
                                                                                                • Por lo tanto, se espera que, luego de la ejecución del
                                                                                                  algoritmo, exista un resultado o salida.
• Si fallamos en la comprensión del problema, sus
  consecuencias se arrastran hasta la solución final…                                           • Pero para obtener esta salida, es necesario que exista un
                                                                                                  proceso que sea capaz de entregarlo.

                                                                                                • Ahora bien, un proceso requiere de entradas, elementos
                                                                                                  inicialmente externos al proceso, pero que se incorporan a
                                                                                                  él con el fin de obtener la salida esperada (solución).

Profesores                                                                                      Profesores
                                                                      INF 140 – Informática I                                                                                INF 140 – Informática I
PHM/DCP                                                                                         PHM/DCP
Pontificia Universidad Católica de Valparaíso                                                              Pontificia Universidad Católica de Valparaíso
                                  Escuela de Ingeniería Informática                                                                          Escuela de Ingeniería Informática


      Aspectos a tener en cuenta en                                                                                Aspectos a tener en cuenta en
            un algoritmo (2)                                                                                             un algoritmo (3)
                                                                                                             • Entradas:
                                            PROCESO                             Salida 1                              – ¿Cuántas entradas son requeridas por el proceso establecido?
                Entrada 1
                                                                                                                      – ¿Qué tipo de entradas son requeridas por el proceso
                                                                                 Salida 2
              Entrada 2                                                                                                 establecido?
                                                                                   Salida 3
             Entrada 3
                                                                                                             • Proceso:
                                                                                   …
                …
                                                                                                                      – ¿Cuál es el proceso más adecuado para resolver el problema
                                                                               …
                     …
                                                                                                                        planteado?
                  Entrada N                                                 Salida N

                                                                                                             • Salidas:
                                                                                                                      – ¿Cuál es el resultado final esperado?


Profesores                                                                                                   Profesores
                                                                                   INF 140 – Informática I                                                                             INF 140 – Informática I
PHM/DCP                                                                                                      PHM/DCP




                            Pontificia Universidad Católica de Valparaíso
                                  Escuela de Ingeniería Informática




                                            Fin




Profesores
                                                                                   INF 140 – Informática I
PHM/DCP

Contenu connexe

En vedette

AULA VIRTUAL Y CORREO INSTITUCIONAL
AULA VIRTUAL Y CORREO INSTITUCIONALAULA VIRTUAL Y CORREO INSTITUCIONAL
AULA VIRTUAL Y CORREO INSTITUCIONALj21gabriel
 
Primary audience research feedback
Primary audience research feedbackPrimary audience research feedback
Primary audience research feedbackLeahhBoyd
 
Dissemination training, by N. Geeson
Dissemination training, by N. GeesonDissemination training, by N. Geeson
Dissemination training, by N. Geesonnickyprojects
 
Esta es la materia de edumática
Esta es la materia de edumáticaEsta es la materia de edumática
Esta es la materia de edumáticamatedumatica
 
Adjectives1
Adjectives1Adjectives1
Adjectives1nespe
 
Table of Contents Presentation
Table of Contents PresentationTable of Contents Presentation
Table of Contents PresentationErosV
 
Aulas virtuales y correo
Aulas virtuales y correo Aulas virtuales y correo
Aulas virtuales y correo jhon9029
 
Fotos del proyecto empresarial
Fotos del proyecto empresarialFotos del proyecto empresarial
Fotos del proyecto empresarialCristian López
 
Formato proyecto final pimaria
Formato proyecto final   pimariaFormato proyecto final   pimaria
Formato proyecto final pimariaCristian López
 
Unidad1 1
Unidad1 1Unidad1 1
Unidad1 1ggsr66
 

En vedette (20)

Educación virtual
Educación virtualEducación virtual
Educación virtual
 
AULA VIRTUAL Y CORREO INSTITUCIONAL
AULA VIRTUAL Y CORREO INSTITUCIONALAULA VIRTUAL Y CORREO INSTITUCIONAL
AULA VIRTUAL Y CORREO INSTITUCIONAL
 
Primary audience research feedback
Primary audience research feedbackPrimary audience research feedback
Primary audience research feedback
 
Leccion 1ª excel
Leccion 1ª excelLeccion 1ª excel
Leccion 1ª excel
 
Relatoria
RelatoriaRelatoria
Relatoria
 
Genesis uniminuto
Genesis uniminutoGenesis uniminuto
Genesis uniminuto
 
Dissemination training, by N. Geeson
Dissemination training, by N. GeesonDissemination training, by N. Geeson
Dissemination training, by N. Geeson
 
Media slide show 2
Media slide show 2Media slide show 2
Media slide show 2
 
Media publishers
Media publishersMedia publishers
Media publishers
 
Esta es la materia de edumática
Esta es la materia de edumáticaEsta es la materia de edumática
Esta es la materia de edumática
 
Adjectives1
Adjectives1Adjectives1
Adjectives1
 
Almaty 2011
Almaty 2011Almaty 2011
Almaty 2011
 
Siembra
SiembraSiembra
Siembra
 
Table of Contents Presentation
Table of Contents PresentationTable of Contents Presentation
Table of Contents Presentation
 
Aulas virtuales y correo
Aulas virtuales y correo Aulas virtuales y correo
Aulas virtuales y correo
 
Fotos del proyecto empresarial
Fotos del proyecto empresarialFotos del proyecto empresarial
Fotos del proyecto empresarial
 
Formato proyecto final pimaria
Formato proyecto final   pimariaFormato proyecto final   pimaria
Formato proyecto final pimaria
 
Unidad1 1
Unidad1 1Unidad1 1
Unidad1 1
 
Practica 2 color
Practica 2 colorPractica 2 color
Practica 2 color
 
Final pitch
Final pitchFinal pitch
Final pitch
 

Similaire à [Inf 140] Introduccion A Los Algoritmos (4 Diap X Hoja)

[Inf 140] Procedimientos Y Funciones (1 X Hoja)
[Inf 140] Procedimientos Y Funciones (1 X Hoja)[Inf 140] Procedimientos Y Funciones (1 X Hoja)
[Inf 140] Procedimientos Y Funciones (1 X Hoja)Daniel Barraza
 
[Inf 140] Estructuras Repetitivas Y Selectivas (6 X Hoja)
[Inf 140]   Estructuras Repetitivas Y Selectivas (6 X Hoja)[Inf 140]   Estructuras Repetitivas Y Selectivas (6 X Hoja)
[Inf 140] Estructuras Repetitivas Y Selectivas (6 X Hoja)Daniel Barraza
 
[Inf 140] Algoritmos Y Arreglos (6 X Hoja)
[Inf 140]  Algoritmos Y Arreglos (6 X Hoja)[Inf 140]  Algoritmos Y Arreglos (6 X Hoja)
[Inf 140] Algoritmos Y Arreglos (6 X Hoja)Daniel Barraza
 
[Inf 140] Algoritmos Y Arreglos (1 X Hoja)
[Inf 140]  Algoritmos Y Arreglos (1 X Hoja)[Inf 140]  Algoritmos Y Arreglos (1 X Hoja)
[Inf 140] Algoritmos Y Arreglos (1 X Hoja)Daniel Barraza
 
Plan de seguimiento gestión 2011
Plan de seguimiento gestión 2011Plan de seguimiento gestión 2011
Plan de seguimiento gestión 2011rosanagomezrn
 

Similaire à [Inf 140] Introduccion A Los Algoritmos (4 Diap X Hoja) (12)

[Inf 140] Procedimientos Y Funciones (1 X Hoja)
[Inf 140] Procedimientos Y Funciones (1 X Hoja)[Inf 140] Procedimientos Y Funciones (1 X Hoja)
[Inf 140] Procedimientos Y Funciones (1 X Hoja)
 
[Inf 140] Estructuras Repetitivas Y Selectivas (6 X Hoja)
[Inf 140]   Estructuras Repetitivas Y Selectivas (6 X Hoja)[Inf 140]   Estructuras Repetitivas Y Selectivas (6 X Hoja)
[Inf 140] Estructuras Repetitivas Y Selectivas (6 X Hoja)
 
[Inf 140] Algoritmos Y Arreglos (6 X Hoja)
[Inf 140]  Algoritmos Y Arreglos (6 X Hoja)[Inf 140]  Algoritmos Y Arreglos (6 X Hoja)
[Inf 140] Algoritmos Y Arreglos (6 X Hoja)
 
Introduccion a so
Introduccion a soIntroduccion a so
Introduccion a so
 
[Inf 140] Algoritmos Y Arreglos (1 X Hoja)
[Inf 140]  Algoritmos Y Arreglos (1 X Hoja)[Inf 140]  Algoritmos Y Arreglos (1 X Hoja)
[Inf 140] Algoritmos Y Arreglos (1 X Hoja)
 
Tutorial de matrices matlab
Tutorial de matrices matlabTutorial de matrices matlab
Tutorial de matrices matlab
 
Plan de seguimiento gestión 2011
Plan de seguimiento gestión 2011Plan de seguimiento gestión 2011
Plan de seguimiento gestión 2011
 
Clase 1 algoritmos y programas
Clase 1  algoritmos y programasClase 1  algoritmos y programas
Clase 1 algoritmos y programas
 
Curriculum Vitae
Curriculum VitaeCurriculum Vitae
Curriculum Vitae
 
Sesion 1 Eureka
Sesion 1 EurekaSesion 1 Eureka
Sesion 1 Eureka
 
Sesion 1 Eureka
Sesion 1 EurekaSesion 1 Eureka
Sesion 1 Eureka
 
Sesion 1 Eureka
Sesion 1 EurekaSesion 1 Eureka
Sesion 1 Eureka
 

Plus de Daniel Barraza

Plus de Daniel Barraza (20)

Lista
ListaLista
Lista
 
[Pauta] [Inf 140] Control Ii
[Pauta] [Inf 140]   Control Ii[Pauta] [Inf 140]   Control Ii
[Pauta] [Inf 140] Control Ii
 
Lista
ListaLista
Lista
 
[Pauta] [Inf 140] Control I
[Pauta] [Inf 140]   Control I[Pauta] [Inf 140]   Control I
[Pauta] [Inf 140] Control I
 
[Pauta] [Inf 140] Certamen Ii
[Pauta] [Inf 140]   Certamen Ii[Pauta] [Inf 140]   Certamen Ii
[Pauta] [Inf 140] Certamen Ii
 
[Pauta] [Inf 140] Certamen I
[Pauta] [Inf 140]   Certamen I[Pauta] [Inf 140]   Certamen I
[Pauta] [Inf 140] Certamen I
 
Pauta Control1
Pauta Control1Pauta Control1
Pauta Control1
 
Ayudantia 1
Ayudantia 1Ayudantia 1
Ayudantia 1
 
Pauta Guia 1(1) Bloc De Notas
Pauta Guia 1(1)   Bloc De NotasPauta Guia 1(1)   Bloc De Notas
Pauta Guia 1(1) Bloc De Notas
 
Suma Numeros
Suma NumerosSuma Numeros
Suma Numeros
 
Pauta Guia 3
Pauta Guia 3Pauta Guia 3
Pauta Guia 3
 
Inf 140 Programa
Inf 140   ProgramaInf 140   Programa
Inf 140 Programa
 
Inf 140 Guia3 2008 01
Inf 140   Guia3 2008 01Inf 140   Guia3 2008 01
Inf 140 Guia3 2008 01
 
Inf 140 Guia2 2008 01
Inf 140   Guia2 2008 01Inf 140   Guia2 2008 01
Inf 140 Guia2 2008 01
 
Ejercicio Extra 1
Ejercicio Extra 1Ejercicio Extra 1
Ejercicio Extra 1
 
[Pauta] Trabajo Grupal
[Pauta] Trabajo Grupal[Pauta] Trabajo Grupal
[Pauta] Trabajo Grupal
 
[Inf 140] Representacion Interna De Datos (1 X Hoja)
[Inf 140] Representacion Interna De Datos (1 X Hoja)[Inf 140] Representacion Interna De Datos (1 X Hoja)
[Inf 140] Representacion Interna De Datos (1 X Hoja)
 
[Inf 140] Programacion De Presentaciones
[Inf 140] Programacion De Presentaciones[Inf 140] Programacion De Presentaciones
[Inf 140] Programacion De Presentaciones
 
[Inf 140] Guia4 2008 01
[Inf 140]   Guia4 2008 01[Inf 140]   Guia4 2008 01
[Inf 140] Guia4 2008 01
 
[Inf 140] Guia1 2008 01
[Inf 140]   Guia1 2008 01[Inf 140]   Guia1 2008 01
[Inf 140] Guia1 2008 01
 

Dernier

"CUENTOS PROHIBIDOS POR LA ABUELA"...pdf
"CUENTOS PROHIBIDOS POR LA ABUELA"...pdf"CUENTOS PROHIBIDOS POR LA ABUELA"...pdf
"CUENTOS PROHIBIDOS POR LA ABUELA"...pdfLuisMarioLosadaSuare1
 
Trabajo de grado de Alejandra Paisano Belankazar (1).pdf
Trabajo de grado de Alejandra Paisano Belankazar (1).pdfTrabajo de grado de Alejandra Paisano Belankazar (1).pdf
Trabajo de grado de Alejandra Paisano Belankazar (1).pdfUniversidadPrenatalT
 
pdf-padres-obedientes-hijos-tiranos_compress.pdf
pdf-padres-obedientes-hijos-tiranos_compress.pdfpdf-padres-obedientes-hijos-tiranos_compress.pdf
pdf-padres-obedientes-hijos-tiranos_compress.pdfVictorGarzaRodarte1
 
El Ego - Ramiro Nicolás Nordmann Castañeda
El Ego - Ramiro Nicolás Nordmann CastañedaEl Ego - Ramiro Nicolás Nordmann Castañeda
El Ego - Ramiro Nicolás Nordmann CastañedaCynthiaSaid2
 
3. Marzo Mandato DNC_2024_Comunicado para ver
3. Marzo Mandato DNC_2024_Comunicado para ver3. Marzo Mandato DNC_2024_Comunicado para ver
3. Marzo Mandato DNC_2024_Comunicado para verjersoneduardocc
 
Cómo superar la ansiedad - Créditos a su autor
Cómo superar la ansiedad - Créditos a su autorCómo superar la ansiedad - Créditos a su autor
Cómo superar la ansiedad - Créditos a su autorlesliecarrion06
 

Dernier (6)

"CUENTOS PROHIBIDOS POR LA ABUELA"...pdf
"CUENTOS PROHIBIDOS POR LA ABUELA"...pdf"CUENTOS PROHIBIDOS POR LA ABUELA"...pdf
"CUENTOS PROHIBIDOS POR LA ABUELA"...pdf
 
Trabajo de grado de Alejandra Paisano Belankazar (1).pdf
Trabajo de grado de Alejandra Paisano Belankazar (1).pdfTrabajo de grado de Alejandra Paisano Belankazar (1).pdf
Trabajo de grado de Alejandra Paisano Belankazar (1).pdf
 
pdf-padres-obedientes-hijos-tiranos_compress.pdf
pdf-padres-obedientes-hijos-tiranos_compress.pdfpdf-padres-obedientes-hijos-tiranos_compress.pdf
pdf-padres-obedientes-hijos-tiranos_compress.pdf
 
El Ego - Ramiro Nicolás Nordmann Castañeda
El Ego - Ramiro Nicolás Nordmann CastañedaEl Ego - Ramiro Nicolás Nordmann Castañeda
El Ego - Ramiro Nicolás Nordmann Castañeda
 
3. Marzo Mandato DNC_2024_Comunicado para ver
3. Marzo Mandato DNC_2024_Comunicado para ver3. Marzo Mandato DNC_2024_Comunicado para ver
3. Marzo Mandato DNC_2024_Comunicado para ver
 
Cómo superar la ansiedad - Créditos a su autor
Cómo superar la ansiedad - Créditos a su autorCómo superar la ansiedad - Créditos a su autor
Cómo superar la ansiedad - Créditos a su autor
 

[Inf 140] Introduccion A Los Algoritmos (4 Diap X Hoja)

  • 1. Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Pontificia Universidad Católica de Valparaíso Facultad de Ingeniería Definición de Algoritmo (RAE) Escuela de Ingeniería Informática • Conjunto ordenado y finito de operaciones que permite hallar la solución de un problema. “Introducción a los Algoritmos” • Método y notación en las distintas formas del Asignatura cálculo. INF 140 – Informática I Profesores Pamela Hermosilla Monckton Daniel Cabrera Paniagua Ayudantes Profesores Profesores INF 140 – Informática I PHM/DCP PHM/DCP Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática Algoritmo (informalmente) Algoritmo (Otras fuentes) Si a una persona se le entrega dicha lista, y ésta • Procedimiento para resolver un problema sigue las instrucciones cuidadosamente matemático en un número finito de pasos, lo entonces al llegar al final se habrá resuelto la que frecuentemente involucra repetición de una tarea en cuestión operación. Método detallado paso a paso para lograr una tarea. Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP
  • 2. Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática Nuestra Definición de Algoritmo Algoritmos Un algoritmo es un conjunto finito de instrucciones que especifican la secuencia de operaciones a realizar, en orden, para resolver un problema Nivel de Abstracción determinado. En otras palabras es una fórmula para resolver un problema. Olvidar información y consecuentemente tratar Generalmente es una lista de la siguiente forma: cosas que son diferentes como si fueran las Paso 1: “Hacer algo” mismas. Esto con el fin de simplificar el análisis Paso 2: “Hacer algo” Paso 3: “Hacer algo” separando los atributos relevantes dentro de un . . . contexto determinado. Paso n: “Hacer algo” Dividir & Vencer (divide & conquer) Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática Otros Ejemplos Algoritmos Cotidianos (Narrativos) Un alumno solicita ser el ayudante de un ramo. El profesor examina en la base de datos de la escuela el historial del alumno. Si el alumno está capacitado el profesor lo acepta como ayudante, en caso contrario la solicitud Llamar por teléfono del alumno será rechazada. Planchar Los pasos del algoritmo en descripción narrativa son los siguientes: Cocinar panqueques 1. Inicio Inscribir una asignatura… 2. Leer solicitud del alumno 3. Leer historial del alumno etc. 4. Si, el alumno está capacitado, el profesor acepta la solicitud, en caso contrario la solicitud es rechazada. 5. Fin Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP
  • 3. Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática Características Calcular el promedio de 3 notas: 1. Inicio • Correcto - Fiable 2. Leer nota 1 3. Leer nota 2 • Eficiencia tiempo & recursos 3. Leer nota 3 4. Asignar a suma_de_notas el resultado de nota1+ nota2 + nota3 • Claro - Fácil de mantener 5. Asignar a promedio el resultado de suma_de_notas / 3 • Interfaz apropiada 6. Escribir resultado 7. Fin • Preciso : orden en cada paso Realizar una venta con factura… • Definido: siempre se obtiene el mismo resultado • Finito: número finito de pasos Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática • Error – creer que: Realidad: Aprender a programar significa aprender un La parte medular de la programación lenguaje computacional hasta dominarlo consiste en resolver el problema. completamente, y luego utilizarlo para Esto es independiente del lenguaje en el cual expresar, en la forma que el computador se expresará posteriormente esta solución entiende, el problema particular que se quiere resolver Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP
  • 4. Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática • Resolver un problema usando un computador no es solamente conocer un lenguaje de programación. • Programar NO es fácil, ya que no es fácil • Es disponer de la capacidad para analizar un resolver problemas problema, entenderlo y especificar el algoritmo que permite solucionarlo, usando un lenguaje de programación. • ... y enseñar a programar tampoco lo es porque en realidad lo que se debe • Para ello no basta con aprender un lenguaje de programación, además hay que disponer de una enseñar son técnicas de solución de metodología que permita resolver problemas problemas. computacionalmente. Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática • El medio para resolver un problema en forma ¿Qué es un lenguaje? (1) computacional es un conjunto preciso de instrucciones expresadas en un cierto lenguaje, lo Def. RAE: cual constituye lo que se denomina un programa. “Conjunto de sonidos articulados con que el hombre • Pero el programa puede ser visto simplemente como manifiesta lo que piensa o siente.” un algoritmo expresado en un lenguaje de programación. “Estilo y modo de hablar y escribir de cada persona en particular.” • Este algoritmo es independiente del lenguaje y “Conjunto de señales que dan a entender algo. (El lenguaje constituye la forma en que se resuelve el problema. de los ojos, el de las flores).” Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP
  • 5. Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática ¿Qué es un lenguaje de ¿Qué es un lenguaje? (2) programación? • Un lenguaje es un medio de comunicación entre los • Es un lenguaje utilizado es la escritura de programas para seres humanos a través de signos orales y escritos que computadores, de tal modo que puedan ser entendidos por poseen un significado. estos últimos. • Se clasifican en tres grupos: – Máquina – Bajo Nivel – Alto Nivel Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática Lenguaje Máquina Lenguaje de Bajo Nivel • Es el lenguaje propio de los computadores, basado en la • La programación en lenguaje máquina es difícil. Es por ello se lógica binaria, de ceros y unos (00010111). necesitan lenguajes que faciliten este proceso. En base a esto se han sido diseñados los lenguajes de bajo nivel. • Este lenguaje resulta difícil de utilizar para las personas, ya que el programador debe introducir todos y cada uno de los • Los lenguajes de bajo nivel permiten crear programas muy comandos y datos en forma binaria. rápidos, pero que son a menudo difíciles de comprender. • La programación en lenguaje máquina es una tarea tan • Se requiere que el programador piense a nivel de máquina. tediosa y consume tanto tiempo que raras veces lo que se ahorra en la ejecución del programa justifica los días o • Un ejemplo de este tipo de lenguaje es el ensamblador. semanas que se han necesitado para escribir el mismo. Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP
  • 6. Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática Lenguaje Ensamblador Lenguaje de Alto Nivel (1) • El lenguaje ensamblador es un lenguaje funcionalmente • Los llamados lenguajes de alto nivel son los que se emplean similar al lenguaje máquina, pero más sencillo de utilizar. con mayor frecuencia como lenguajes de programación, porque permiten expresar los algoritmos de una manera y con un estilo fácilmente reconocible por parte de diversos • En este lenguaje, los programadores utilizan códigos programadores. alfabéticos que se corresponden con instrucciones de tipo numérico de las máquinas. • Son útiles para simplificar el proceso de programación. • El “enlace” entre el programador y el computador, un programa llamado ensamblador, traduce cada instrucción de • Algunos ejemplos de lenguaje de alto nivel son: este lenguaje en la sentencia máquina que corresponda. – Java – C/C++ – Visual Basic – HTML, XML, Prolog, Lisp, …y un gran etc… Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática Lenguaje de Alto Nivel (2) Compiladores (1) • Ventaja: • Un compilador es un traductor. – Son fácilmente transportables de una máquina a otra sin necesidad de realizar grandes cambios en ellos, por lo que se • El compilador traduce un código fuente íntegramente a dice que son independientes de la máquina empleada. lenguaje máquina antes de su ejecución, por lo que el resultado se ejecuta con tanta rapidez como si se hubiese • Tanto los lenguajes de alto nivel como de bajo nivel no son escrito directamente en lenguaje máquina. entendibles directamente por la máquina, sino que necesitan ser traducidos a instrucciones en lenguaje máquina. • El compilador es el más eficaz para la mayor parte de las máquinas, puesto que presenta la ventaja que cada una de las • Para ello se emplean Compiladores, e Intérpretes. sentencias del programa es interpretada y traducida al lenguaje máquina sólo una vez. Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP
  • 7. Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática Compiladores (2) Intérpretes • Un compilador crea una lista de instrucciones de código • Son programas que se traducen línea por línea el código máquina, basándose en un código fuente. fuente. • El código objeto resultante es un programa rápido y listo para • Son traductores más lentos que los compiladores, ya que no funcionar, pero que puede hacer que falle el ordenador si no producen un código objeto, sino que recorren el código fuente está bien diseñado. una línea cada vez. • Cada línea se traduce a código máquina y se ejecuta. Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática Resolución de Problemas Alto Nivel Bajo Nivel Máquina • Entender el problema -> Definir el problema con claridad !!! Ejecutable Código Código • Idear un plan para resolver el problema fuente Objeto Compilador / – Identificar recursos, personas, información, etc. Ensamblador Intérprete – Establecer el modo de utilizar los elementos identificados. SUB 011010 … 100010 • Ejecutar el plan Incorporación de • Evaluar la solución obtenida bibliotecas ya existentes – ¿Se ha resuelto efectivamente el problema existente? – La solución alcanzada, ¿es útil para otros problemas? Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP
  • 8. Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática Proceso de Programación Alcances… (1) • La programación es una forma especializada del modelo de • En general, los problemas a resolver son tan complejos, que no resolución de problemas… es posible resolverlos de una sola vez. • Sus fases son: • Es por ello que usualmente se divide un problema mayor en un listado de sub-problemas más pequeños y abordables. – Definición del problema. – Creación, depuración y verificación del algoritmo. • Cada uno de estos sub-problemas son, a la vez, divisibles en otros sub-problemas de menor tamaño. – Escritura del programa. – Verificación y depuración del programa. • Algunos autores llaman a esto Dividir y Conquistar, o Refinamiento por Pasos. Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática Alcances… (2) Alcances… (3) • Este tipo de proceso se asocia a un enfoque “de arriba abajo” • Este algoritmo suele estar escrito en un formato denominado (Top Down), ya que el problema se aborda desde lo más Pseudocódigo, una mezcla entre lenguaje informático y general (“desde arriba”), y progresivamente se introducen lenguaje natural. mayores detalles según se requiera (“hacia abajo)”. • Una vez que los detalles del algoritmo están correctos, el paso • El resultado es un algoritmo, que corresponde a un conjunto siguiente es traducir las instrucciones existentes en de instrucciones paso a paso que, luego de ser ejecutadas, pseudocódigo a un lenguaje de programación de alto nivel. resuelven el problema original. Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP
  • 9. Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática Forma Difícil de Resolver un Forma Adecuada de Resolver un Problema Problema (1) Solución en forma de programa Solución en forma de programa Solución en ? forma Problema Problema algorítmica • Énfasis en dar una solución rápida al problema, pero… Comprensión Implementación ¿Qué problema estoy resolviendo? del problema de la Solución ¿Abordé el problema de manera adecuada? Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática Forma Adecuada de Resolver un Aspectos a tener en cuenta en Problema (2) un algoritmo (1) • Como ya se ha mencionado, un algoritmo se desarrolla con • Lo importante radica en comprender efectivamente qué el objetivo de resolver un problema. problema pretendemos resolver, y plantear una solución analítica que lo resuelva. • Por lo tanto, se espera que, luego de la ejecución del algoritmo, exista un resultado o salida. • Si fallamos en la comprensión del problema, sus consecuencias se arrastran hasta la solución final… • Pero para obtener esta salida, es necesario que exista un proceso que sea capaz de entregarlo. • Ahora bien, un proceso requiere de entradas, elementos inicialmente externos al proceso, pero que se incorporan a él con el fin de obtener la salida esperada (solución). Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP
  • 10. Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática Aspectos a tener en cuenta en Aspectos a tener en cuenta en un algoritmo (2) un algoritmo (3) • Entradas: PROCESO Salida 1 – ¿Cuántas entradas son requeridas por el proceso establecido? Entrada 1 – ¿Qué tipo de entradas son requeridas por el proceso Salida 2 Entrada 2 establecido? Salida 3 Entrada 3 • Proceso: … … – ¿Cuál es el proceso más adecuado para resolver el problema … … planteado? Entrada N Salida N • Salidas: – ¿Cuál es el resultado final esperado? Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Fin Profesores INF 140 – Informática I PHM/DCP