0
2.3 DEFINICIÓN DE LENGUAJES ALGORÍTMICOS<br />METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS<br />
Elementos y reglas de la representación gráfica y manuscrita de los algoritmos<br />Características de los algoritmos<br /...
Elementos y reglas de la representación gráfica y manuscrita de los algoritmos<br />Ejemplo 4:<br /> <br />En un algoritmo...
Elementos y reglas de la representación gráfica y manuscrita de los algoritmos<br />Ejemplo 5:<br /> 	Un cliente ejecuta u...
Elementos y reglas de la representación gráfica y manuscrita de los algoritmos<br />Ejemplo 6<br />Se desea diseñar un alg...
Elementos y reglas de la representación gráfica y manuscrita de los algoritmos<br />Diseño de un algoritmo<br />Una comput...
Elementos y reglas de la representación gráfica y manuscrita de los algoritmos<br />Ejemplo 7:<br />	Un problema que prete...
Elementos y reglas de la representación gráfica y manuscrita de los algoritmos<br />	La descomposición del problema origin...
Elementos y reglas de la representación gráfica y manuscrita de los algoritmos<br />Las ventajas más importantes del diseñ...
Las modificaciones en los módulos son más fáciles.
La comprobación del problema se puede verificar fácilmente.</li></ul> <br />	Tras los pasos anteriores (diseño descendente...
Elementos y reglas de la representación gráfica y manuscrita de los algoritmos<br />Diagramas de flujo<br />Un diagrama de...
Elementos y reglas de la representación gráfica y manuscrita de los algoritmos<br />Símbolos de diagramas de flujo<br />
Elementos y reglas de la representación gráfica y manuscrita de los algoritmos<br /><ul><li>Símbolos de diagramas de flujo...
Elementos y reglas de la representación gráfica y manuscrita de los algoritmos<br />Diagrama de flujo<br />Fin del ejemplo...
Elementos y reglas de la representación gráfica y manuscrita de los algoritmos<br />Pseudocódigo<br />El pseudocódigo es e...
Elementos y reglas de la representación gráfica y manuscrita de los algoritmos<br />Pseudocódigo<br />Ejemplo 9:<br />El p...
Elementos y reglas de la representación gráfica y manuscrita de los algoritmos<br />Pseudocódigo<br />	El algoritmo comien...
Elementos y reglas de la representación gráfica y manuscrita de los algoritmos<br />Diagramas de Nassi-Scheneiderman (N-S)...
Elementos y reglas de la representación gráfica y manuscrita de los algoritmos<br />Ejemplo 10:<br />
Elementos y reglas de la representación gráfica y manuscrita de los algoritmos<br />Otro ejemplo es la representación de l...
Upcoming SlideShare
Loading in...5
×

DEFINICIÓN DE LENGUAJES ALGORÍTMICOS

14,120

Published on

DEFINICIÓN DE LENGUAJES ALGORÍTMICOS

2 Comments
0 Likes
Statistics
Notes
  • Be the first to like this

No Downloads
Views
Total Views
14,120
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
322
Comments
2
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "DEFINICIÓN DE LENGUAJES ALGORÍTMICOS"

  1. 1. 2.3 DEFINICIÓN DE LENGUAJES ALGORÍTMICOS<br />METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS<br />
  2. 2. Elementos y reglas de la representación gráfica y manuscrita de los algoritmos<br />Características de los algoritmos<br />Las características fundamentales que debe cumplir todo algoritmo son:<br />Un algoritmo debe ser preciso e indicar el orden de realización de cada paso. <br />Un algoritmo debe estar definido. Si se sigue un algoritmo dos veces, se debe obtener el mismo resultado cada vez.<br />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.<br />La definición de un algoritmo debe describir tres partes: Entrada, Proceso y Salida.<br />
  3. 3. Elementos y reglas de la representación gráfica y manuscrita de los algoritmos<br />Ejemplo 4:<br /> <br />En un algoritmo de receta de cocina se tiene que:<br /> <br />Entrada: Ingredientes y utensilios empleados.<br /> <br />Proceso: Elaboración de la receta de cocina.<br />Salida: Terminación del platillo, por ejemplo enchiladas.<br /> <br />Fin del ejemplo 4<br />
  4. 4. Elementos y reglas de la representación gráfica y manuscrita de los algoritmos<br />Ejemplo 5:<br />  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. <br />Solución: <br />Los pasos del algoritmo son:<br /> <br />Inicio<br />Leer el pedido<br />Examinar la ficha del cliente<br />Si el cliente es solvente, aceptar pedido; en caso contrario, rechazar pedido.<br />Fin<br /> <br />Fin del ejemplo 5.<br />
  5. 5. Elementos y reglas de la representación gráfica y manuscrita de los algoritmos<br />Ejemplo 6<br />Se desea diseñar un algoritmo para saber si un número es primo o no. <br /> 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. <br />Solución:<br />Inicio<br />Hacer X igual a 2 (X = 2, X variable que representa a los divisores del número N que se busca)<br />Dividir N entre X (N/X)<br />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.<br />Sumar 1 a X (X = X+1)<br />Si X es igual a N, entonces N es un número primo; en caso contrario, continuar con el paso 3.<br />Fin.<br /> <br />Fin del ejemplo 6.<br />
  6. 6. Elementos y reglas de la representación gráfica y manuscrita de los algoritmos<br />Diseño de un algoritmo<br />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.<br />La información proporcionada al algoritmo constituye su entrada y la información producida por el algoritmo constituye su salida.<br /> <br />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. <br />
  7. 7. Elementos y reglas de la representación gráfica y manuscrita de los algoritmos<br />Ejemplo 7:<br /> 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:<br />
  8. 8. Elementos y reglas de la representación gráfica y manuscrita de los algoritmos<br /> 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.<br /> <br /> El problema de cálculo del perímetro y área del círculo se puede descomponer en subproblemas más simples:<br /> <br />Leer datos de entrada<br />Calcular el perímetro y área del círculo<br />Escribir resultados (datos de salida)<br />
  9. 9. Elementos y reglas de la representación gráfica y manuscrita de los algoritmos<br />Las ventajas más importantes del diseño descendente son:<br /><ul><li>El problema se comprende más fácilmente al dividirse en partes más simples denominadas módulos.
  10. 10. Las modificaciones en los módulos son más fáciles.
  11. 11. La comprobación del problema se puede verificar fácilmente.</li></ul> <br /> 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.<br />
  12. 12. Elementos y reglas de la representación gráfica y manuscrita de los algoritmos<br />Diagramas de flujo<br />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.<br />Símbolos de diagramas de flujo<br />
  13. 13. Elementos y reglas de la representación gráfica y manuscrita de los algoritmos<br />Símbolos de diagramas de flujo<br />
  14. 14. Elementos y reglas de la representación gráfica y manuscrita de los algoritmos<br /><ul><li>Símbolos de diagramas de flujo</li></li></ul><li>Elementos y reglas de la representación gráfica y manuscrita de los algoritmos<br />Ejemplo 8:<br /> <br /> 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.<br /> <br />Solución:<br /> <br />Algoritmo <br />Leer datos del archivo de la empresa, hasta que se encuentre la ficha final del archivo (HORAS, PRECIO_HORA, NOMBRE).<br />Si HORAS &lt;= 40, entonces SALARIO es el producto de HORAS por PRECIO_HORA.<br />Si HORAS &gt; 40, entonces SALARIO = 40 x PRECIO_HORA + 1.5 x PRECIO_HORA x (HORAS – 40)<br />
  15. 15. Elementos y reglas de la representación gráfica y manuscrita de los algoritmos<br />Diagrama de flujo<br />Fin del ejemplo 8<br />
  16. 16. Elementos y reglas de la representación gráfica y manuscrita de los algoritmos<br />Pseudocódigo<br />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.<br /> <br /> 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. <br /> <br /> 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.<br />
  17. 17. Elementos y reglas de la representación gráfica y manuscrita de los algoritmos<br />Pseudocódigo<br />Ejemplo 9:<br />El pseudocódigo correspondiente al diagrama de flujo del ejemplo 2.3.3 es el siguiente:<br /> <br />Start<br /> / cálculo de impuesto y salarios<br />read HORAS, PRECIO_HORA, NOMBRE<br />if HORAS &gt;= 40 then<br /> SALARIO= HORAS * PRECIO_HORA<br />else<br /> SALARIO=40*PRECIO_HORA + 1.5*PRECIO_HORA*(HORAS –40)<br />endif<br />Write SALARIO<br /> <br />end<br />fin del ejemplo 9.<br />
  18. 18. Elementos y reglas de la representación gráfica y manuscrita de los algoritmos<br />Pseudocódigo<br /> 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.<br /> 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.<br />
  19. 19. Elementos y reglas de la representación gráfica y manuscrita de los algoritmos<br />Diagramas de Nassi-Scheneiderman (N-S)<br />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.<br />Un algoritmo se representa con un rectángulo en el que cada banda es una acción a realizar:<br />
  20. 20. Elementos y reglas de la representación gráfica y manuscrita de los algoritmos<br />Ejemplo 10:<br />
  21. 21. Elementos y reglas de la representación gráfica y manuscrita de los algoritmos<br />Otro ejemplo es la representación de la estructura condicional:<br />
  22. 22. Elementos y reglas de la representación gráfica y manuscrita de los algoritmos<br />Implementación de algoritmos secuenciales<br />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.<br />
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×