• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
DEFINICIÓN DE LENGUAJES ALGORÍTMICOS
 

DEFINICIÓN DE LENGUAJES ALGORÍTMICOS

on

  • 15,107 views

DEFINICIÓN DE LENGUAJES ALGORÍTMICOS

DEFINICIÓN DE LENGUAJES ALGORÍTMICOS

Statistics

Views

Total Views
15,107
Views on SlideShare
15,099
Embed Views
8

Actions

Likes
0
Downloads
314
Comments
2

1 Embed 8

http://www.slideshare.net 8

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel

12 of 2 previous next

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
  • bien
    Are you sure you want to
    Your message goes here
    Processing…
  • alkluda mucho etos
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    DEFINICIÓN DE LENGUAJES ALGORÍTMICOS DEFINICIÓN DE LENGUAJES ALGORÍTMICOS Presentation Transcript

    • 2.3 DEFINICIÓN DE LENGUAJES ALGORÍTMICOS
      METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS
    • Elementos y reglas de la representación gráfica y manuscrita de los algoritmos
      Características de los algoritmos
      Las características fundamentales que debe cumplir todo algoritmo son:
      Un algoritmo debe ser preciso e indicar el orden de realización de cada paso. 
      Un algoritmo debe estar definido. Si se sigue un algoritmo dos veces, se debe obtener el mismo resultado cada vez.
      Un algoritmo debe ser finito. Si se sigue un algoritmo, se debe terminar en algún momento; o sea debe tener un número finito de pasos.
      La definición de un algoritmo debe describir tres partes: Entrada, Proceso y Salida.
    • Elementos y reglas de la representación gráfica y manuscrita de los algoritmos
      Ejemplo 4:
       
      En un algoritmo de receta de cocina se tiene que:
       
      Entrada: Ingredientes y utensilios empleados.
       
      Proceso: Elaboración de la receta de cocina.
      Salida: Terminación del platillo, por ejemplo enchiladas.
       
      Fin del ejemplo 4
    • Elementos y reglas de la representación gráfica y manuscrita de los algoritmos
      Ejemplo 5:
        Un cliente ejecuta un pedido a una fábrica. La fábrica examina en su base de datos la ficha del cliente, si el cliente es solvente entonces la empresa acepta el pedido; en caso contrario, rechazará el pedido. Redactar el algoritmo correspondiente. 
      Solución: 
      Los pasos del algoritmo son:
       
      Inicio
      Leer el pedido
      Examinar la ficha del cliente
      Si el cliente es solvente, aceptar pedido; en caso contrario, rechazar pedido.
      Fin
       
      Fin del ejemplo 5.
    • Elementos y reglas de la representación gráfica y manuscrita de los algoritmos
      Ejemplo 6
      Se desea diseñar un algoritmo para saber si un número es primo o no. 
      Un número es primo si sólo puede dividirse entre sí mismo y entre la unidad, es decir, no tiene más divisores que él mismo y la unidad. Por ejemplo, 9, 8 6, 4, 12, 16, 20 no son primos, ya que son divisibles pro números distintos a ellos mismos y a la unidad. El 9 es divisible entre 3, el 8 es divisible entre 2 y entre 4, etc.
      Solución:
      Inicio
      Hacer X igual a 2 (X = 2, X variable que representa a los divisores del número N que se busca)
      Dividir N entre X (N/X)
      Si el resultado de N/X es entero, entonces N no es un número primo y continuar con el paso 7; en caso contrario, continuar con el siguiente paso.
      Sumar 1 a X (X = X+1)
      Si X es igual a N, entonces N es un número primo; en caso contrario, continuar con el paso 3.
      Fin.
       
      Fin del ejemplo 6.
    • Elementos y reglas de la representación gráfica y manuscrita de los algoritmos
      Diseño de un algoritmo
      Una computadora no tiene capacidad para solucionar problemas a menos de que se le proporcionen los pasos sucesivos a realizar. Estos pasos sucesivos que indican las instrucciones a ejecutar constituyen, como ya se mencionó, el algoritmo.
      La información proporcionada al algoritmo constituye su entrada y la información producida por el algoritmo constituye su salida.
       
      Los problemas complejos pueden resolverse más eficazmente con la computadora cuando se divide en subproblemas que sean más fáciles de solucionar que el problema original. Este método suele denominarse “divide y vencerás”, y consiste en dividir el problema complejo en otros más simples.
    • Elementos y reglas de la representación gráfica y manuscrita de los algoritmos
      Ejemplo 7:
      Un problema que pretende encontrar el perímetro y el área de un círculo puede dividirse en tres problemas más simples, como se muestra en la siguiente figura:
    • Elementos y reglas de la representación gráfica y manuscrita de los algoritmos
      La descomposición del problema original en subproblemas más simples y a continuación dividir estos subproblemas en otros más simples que pueden implementarse para su solución en la computadora se denomina diseño descendente (top-downdesign). Normalmente los pasos diseñados en el primer esbozo del algoritmo son incompletos e indican sólo unos pocos pasos (un máximo de doce). Tras esta primera descripción, estos se amplían en una descripción más detallada con más pasos específicos. Este proceso se denomina refinamiento del algoritmo (stepwiserefinement). Para problemas complejos se necesitan con frecuencia diferentes niveles de refinamiento antes de que se pueda obtener un algoritmo claro, preciso y completo.
       
      El problema de cálculo del perímetro y área del círculo se puede descomponer en subproblemas más simples:
       
      Leer datos de entrada
      Calcular el perímetro y área del círculo
      Escribir resultados (datos de salida)
    • Elementos y reglas de la representación gráfica y manuscrita de los algoritmos
      Las ventajas más importantes del diseño descendente son:
      • El problema se comprende más fácilmente al dividirse en partes más simples denominadas módulos.
      • Las modificaciones en los módulos son más fáciles.
      • La comprobación del problema se puede verificar fácilmente.
       
      Tras los pasos anteriores (diseño descendente y refinamiento sucesivo por pasos) es preciso representar el algoritmo mediante una determinada herramienta de programación: diagrama de flujo, pseudocódigo o diagrama N-S.
    • Elementos y reglas de la representación gráfica y manuscrita de los algoritmos
      Diagramas de flujo
      Un diagrama de flujo (flowchart) es una de las técnicas de representación del algoritmo más antigua y a la vez más utilizada, aunque su empleo ha disminuido considerablemente, sobre todo desde la aparición de lenguajes de programación estructurados.
      Símbolos de diagramas de flujo
    • Elementos y reglas de la representación gráfica y manuscrita de los algoritmos
      Símbolos de diagramas de flujo
    • Elementos y reglas de la representación gráfica y manuscrita de los algoritmos
      • Símbolos de diagramas de flujo
    • Elementos y reglas de la representación gráfica y manuscrita de los algoritmos
      Ejemplo 8:
       
      Se desea realizar el algoritmo que resuelva el siguiente problema: Cálculo de los salarios mensuales de los empleados de una empresa, sabiendo que éstos se calculan en base a las horas semanales trabajadas y de acuerdo a un precio especificado por horas. Si se pasan de cuarenta horas semanales, las horas extraordinarias se pagarán a razón de 1.5 veces la hora ordinaria.
       
      Solución:
       
      Algoritmo 
      Leer datos del archivo de la empresa, hasta que se encuentre la ficha final del archivo (HORAS, PRECIO_HORA, NOMBRE).
      Si HORAS <= 40, entonces SALARIO es el producto de HORAS por PRECIO_HORA.
      Si HORAS > 40, entonces SALARIO = 40 x PRECIO_HORA + 1.5 x PRECIO_HORA x (HORAS – 40)
    • Elementos y reglas de la representación gráfica y manuscrita de los algoritmos
      Diagrama de flujo
      Fin del ejemplo 8
    • Elementos y reglas de la representación gráfica y manuscrita de los algoritmos
      Pseudocódigo
      El pseudocódigo es en lenguaje de especificación de algoritmos. El uso de tal lenguaje hace el paso de codificación final (esto es, la traducción a un lenguaje de programación) relativamente fácil.
       
      El pseudocódigo nació como un lenguaje similar al inglés y era un medio de representar básicamente las estructuras de control de programación estructurada.
       
      El pseudocódigo original utiliza para representar las acciones sucesivas palabras reservadas en inglés, similares a sus homónimos en lenguajes de programación, tales como start, end, stop, if-then-else, repeat-until, etc. La escritura de pseudocódigo exige normalmente la indentación (sangría en el margen izquierdo) de diferentes líneas.
    • Elementos y reglas de la representación gráfica y manuscrita de los algoritmos
      Pseudocódigo
      Ejemplo 9:
      El pseudocódigo correspondiente al diagrama de flujo del ejemplo 2.3.3 es el siguiente:
       
      Start
      / cálculo de impuesto y salarios
      read HORAS, PRECIO_HORA, NOMBRE
      if HORAS >= 40 then
      SALARIO= HORAS * PRECIO_HORA
      else
      SALARIO=40*PRECIO_HORA + 1.5*PRECIO_HORA*(HORAS –40)
      endif
      Write SALARIO
       
      end
      fin del ejemplo 9.
    • Elementos y reglas de la representación gráfica y manuscrita de los algoritmos
      Pseudocódigo
      El algoritmo comienza con la palabra start y finaliza con la palabra end, en inglés (en español, inicio, fin). Entre estas palabras, sólo se escribe una instrucción o acción por línea.
      La línea precedida por // se denomina comentario. Es una información para el lector del programa y no realiza ninguna instrucción ejecutable, sólo tiene efecto de documentación interna del programa.
    • Elementos y reglas de la representación gráfica y manuscrita de los algoritmos
      Diagramas de Nassi-Scheneiderman (N-S)
      El diagrama N-S de Nassi-Schneiderman, también conocido como diagrama de Chapin, es como un diagrama de flujo en el que se omiten las flechas de unión y las cajas son contiguas. Las acciones sucesivas se escriben en cajas sucesivas y, como en los diagramas de flujo, se pueden escribir diferentes acciones en una misma caja.
      Un algoritmo se representa con un rectángulo en el que cada banda es una acción a realizar:
    • Elementos y reglas de la representación gráfica y manuscrita de los algoritmos
      Ejemplo 10:
    • Elementos y reglas de la representación gráfica y manuscrita de los algoritmos
      Otro ejemplo es la representación de la estructura condicional:
    • Elementos y reglas de la representación gráfica y manuscrita de los algoritmos
      Implementación de algoritmos secuenciales
      En un algoritmo secuencial se ejecutan las sentencias en orden secuencial, es decir, cuando termina la ejecución de una sentencia comienza la que está inmediatamente después.