Ppt5 presentacion ip algoritmia_2011_p2

6,620 views

Published on

Published in: Technology, Design
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
6,620
On SlideShare
0
From Embeds
0
Number of Embeds
5,464
Actions
Shares
0
Downloads
26
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Ppt5 presentacion ip algoritmia_2011_p2

  1. 1. Algoritmia (II)<br />Departamento de ingeniería<br />
  2. 2. Tipos de algoritmos (II)<br />Algoritmos cuantitativos<br />Son todos aquellos pasos o instrucciones que involucran cálculos numéricos para llegar a un resultado satisfactorio.<br /><ul><li>Ej.: Multiplicar dos números, ordenar una cantidad de números en forma ascendente, dividir dos números, encontrar de un conjunto de números el mayor, etc.</li></ul>Departamento de ingeniería<br />
  3. 3. Pasos que deben seguirse en la Elaboración de un Algoritmo.<br />Leer el enunciado del problema cuantas veces sea necesario, hasta entenderlo completamente, si tiene duda sobre el significado de alguna pregunta o condición aclararla, ojala se aprenda de memoria el enunciado.<br />Determinar claramente con que datos de entrada se cuenta para la solución del problema.<br />Aclarar y determinar la información o resultados que se soliciten.<br />Información Intermedia.<br />Información Final.<br />Definir que cálculos y/o comparaciones se necesitan para llegar al resultado final.<br />Cálculos y comparaciones intermedias.<br />Cálculos y comparaciones finales.<br />Tener en cuenta toda clase de condiciones y restricciones para la solución del problema.<br />Todos los pasos tienen la misma importancia, la falta de analisis de alguno de ellos causara problemas en el transcurso del desarrollo del algoritmo.<br />
  4. 4. Ejemplo: - Elaborar un algoritmo que calcule el promedio de edad de los estudiantes del salón de clase, de acuerdo al numero de estudiantes.<br />Departamento de ingeniería<br />
  5. 5. Diagrama de Flujo.<br />Terminador<br />Inicio<br />Entrada de Datos<br />Leer (numero)<br />contador  0<br />acumulador  0<br />Proceso<br />Decisión<br />SI<br />NO<br />contador < numero<br />NO<br />SI<br />contador > 0<br />contador  contador + 1<br />promedio  0<br />promedio  acumulador/contador<br />Leer (edad)<br />Salida de Datos<br />Escribir (promedio)<br />acumulador  acumulador + edad<br />Fin<br />Departamento de ingeniería<br />
  6. 6. Pseudo Código<br />INICIO<br /> leer(numero)<br /> contador 0<br /> acumulador 0<br />MIENTRAS contador < numero HACER<br /> contador  contador +1<br />leer(edad)<br /> acumulador  acumulador + edad<br />FIN MIENTRAS<br /> SI contador >0 ENTONCES<br /> promedio  acumulador/contador<br /> SINO<br /> promedio  0<br /> FIN SI<br />escribir(promedio)<br />FIN<br />Departamento de ingeniería<br />
  7. 7. Que es una Variable?<br /><ul><li>Variable son todos aquellos valores que pueden o no cambiar en transcurso de un algoritmo. Usualmente son introducidas como datos.
  8. 8. Toda variable se compone de dos partes.
  9. 9. NOMBRE: Es el conjunto de caracteres, letras y números, con los cuales se identifica un valor en un momento determinado.
  10. 10. VALOR: Es la cantidad que una variable representa o tiene asociada en un determinado momento.
  11. 11. Ejemplo : contador  0</li></ul>Departamento de ingeniería<br />
  12. 12. Que es una Constante?<br /><ul><li>Constantes son todos aquellos valores que no cambian en el transcurso de un algoritmo y son introducidos en el momento de utilizarse.
  13. 13. En determinados casos se puede presentar que le valor de una variable no cambie en el transcurso de un algoritmo; pero este hecho no se considera constante, sigue siendo una variable, porque puede cambiar su valor y las constantes no lo pueden hacer.
  14. 14. Cuando se presenta esta situación se dice que es una variable que se comporta como una constante.
  15. 15. Ejemplo : retención  pagobruto * 0.07</li></ul>Departamento de ingeniería<br />
  16. 16. Expresiones Aritméticas.<br /><ul><li>Expresión aritmética es un conjunto de variables y/o constantes unidas o relacionadas por operadores aritméticos.
  17. 17. Los operadores aritméticos son los siguientes:
  18. 18. Exponenciación **
  19. 19. Multiplicación *
  20. 20. División /
  21. 21. Menos -
  22. 22. Mas +
  23. 23. Modulo %
  24. 24. Ejemplo: </li></ul>salario_neto  salario_bruto – iss + bono<br />Departamento de ingeniería<br />
  25. 25. Expresiones Relacionales.<br /><ul><li>Expresión relacional es un conjunto de variable y/o constantes unidas o relacionadas por operadores relacionales.
  26. 26. Los operadores relacionales son los siguientes:
  27. 27. MAYOR QUE > Complemento <=
  28. 28. MENOR QUE < Complemento >=
  29. 29. DIFERENTE QUE <> Complemento =
  30. 30. IGUAL A = Complemento <>
  31. 31. MAYOR O IGUAL >= Complemento <
  32. 32. MENOR O IGUAL <= Complemento >
  33. 33. Ejemplo: descuento >= pago</li></ul>Departamento de ingeniería<br />
  34. 34. Enunciado de Lectura.<br />El enunciado de lectura se utiliza para introducir datos que se van a utilizar en la solución de un algoritmo.<br />Ejemplo:<br />Leer(edad)<br />Departamento de ingeniería<br />
  35. 35. Enunciado de Escritura.<br />El enunciado de escritura se utiliza para informar los resultados que se esperaban obtener al ejecutarse el algoritmo.<br />Ejemplo:<br />Escribir(promedio)<br />Departamento de ingeniería<br />
  36. 36. Enunciado de Asignación.<br /><ul><li>Es una acción o proceso por el cual se le asigna un valor (constante o variable) o el resultado de una operación (expresión) a una variable. Los enunciados de asignación se utilizan generalmente para cambiarle de valor a una variable o definirla.
  37. 37. Definir una variable consiste en asignarle o darle por primera vez un valor; y puede hacerse de dos maneras:
  38. 38. Por medio de una lectura de datos, o
  39. 39. Utilizando un enunciado de asignación.
  40. 40. Ejemplo: </li></ul>leer(edad) <br />edad  25<br />Departamento de ingeniería<br />
  41. 41. Reglas para la construcción de enunciados de asignación.<br /><ul><li>Toda variable que aparezca al lado derecho de un enunciado de asignación debe estar definida.
  42. 42. Ejemplo 1: </li></ul>edad 25<br />contador 0 <br />contador  contador + edad<br /><ul><li>Las variables edad y contador se definieron correctamente
  43. 43. Ejemplo 2: </li></ul>contador 0 <br />contador  contador + edad <br /><ul><li>La variable edad nunca fue definida.</li></ul>Departamento de ingeniería<br />
  44. 44. Reglas para la construcción de enunciados de asignación.<br />En un enunciado de asignación la variable de la izquierda es la única que cambia de valor cuando con anterioridad tiene un valor asignado.<br />Ejemplo :<br />edad 25<br />contador 0 <br />contador contador + edad <br />Departamento de ingeniería<br />
  45. 45. Reglas para la construcción de enunciados de asignación.<br />Las variables que aparecen en la parte derecha de un enunciado de asignación conservan su valor después de ejecutarse la asignación.<br />Ejemplo :<br />salario 1000<br />bono 120<br />salario_neto salario + bono<br />Departamento de ingeniería<br />
  46. 46. Reglas para la construcción de enunciados de asignación.<br />Si la variable de la parte izquierda del enunciado se encuentra también en el lado derecho, esta variable cambia de valor por aparecer en la izquierda.<br />Ejemplo :<br />acumulador  0<br />edad  25<br />acumulador acumulador + edad <br />Departamento de ingeniería<br />
  47. 47. Enunciado de Decisión.<br />Los enunciados de decisión se utilizan para tomar una acción o conocer el estado de alguna situación especial, que generalmente toman un valor Verdadero o Falso.<br />Departamento de ingeniería<br />
  48. 48. Enunciado de Decisión – Si.. Sino<br />Diagrama de Flujo<br />SI<br />NO<br /><comparación><br />SI <comparación> ENTONCES<br /> VERDADERO<br />Enunciado(s)<br />SINO<br />FALSO<br /> Enunciado(s)<br />FIN SI<br />Pseudo Código<br />Departamento de ingeniería<br />
  49. 49. Enunciado de Decisión – SI .. Sino<br />Diagrama de Flujo<br />SI<br />NO<br />contador > 0<br />promedio  acumulador/contador<br />promedio  0<br />SI contador >0 ENTONCES<br />promedio  acumulador/contador<br />SINO<br />promedio  0<br />FIN SI<br />Pseudo Código<br />Departamento de ingeniería<br />
  50. 50. Enunciado de Repetición.<br />Son los enunciados que permiten repetir varias o muchas veces un conjunto de enunciados según se necesite de acuerdo a una condición.<br />Se les conoce también como ciclos.<br />Departamento de ingeniería<br />
  51. 51. Enunciado de Repetición - Mientras<br />Diagrama de Flujo<br />SI<br />NO<br /><comparación><br />MIENTRAS <comparación> HACER<br /> VERDADERO<br />Enunciado(s) a repetir<br />FIN MIENTRAS<br />FALSO<br />Enunciado(s)<br />Pseudo Código<br />Departamento de ingeniería<br />
  52. 52. Enunciado de Repetición - Mientras<br />Diagrama de Flujo<br />contador < numero<br />SI<br />NO<br />contador  contador + 1<br />promedio  acumulador/contador<br />MIENTRAS contador < numero HACER<br />contador  contador +1<br />leer(edad)<br /> acumulador  acumulador + edad<br />FIN MIENTRAS<br />promedio  acumulador/contador<br />escribir(promedio)<br />Pseudo Código<br />Leer(edad)<br />Escribir (promedio)<br />acumulador  acumulador + edad<br />Departamento de ingeniería<br />Fin<br />
  53. 53. Enunciado de Repetición – Haga .. Mientras<br />Diagrama de Flujo<br />SI<br />NO<br /><comparación><br />HAGA<br /> VERDADERO<br />Enunciado(s) a repetir<br />MIENTRAS <comparación> <br />FALSO<br />Enunciado(s)<br />Pseudo Código<br />Departamento de ingeniería<br />
  54. 54. Enunciado de Repetición – Haga .. Mientras<br />Diagrama de Flujo<br />SI<br />Leer (Edad)<br />NO<br />Edad > 0<br />Promedio  acumulador/contador<br />contador  contador + 1<br />Acumulador  acumulador + edad<br />Escriba(promedio)<br />HAGA<br /> leer (edad)<br /> contador  contador + 1<br /> Acumulador  acumulador + edad<br />MIENTRAS edad > 0<br />promedio  acumulador/contador<br />Escriba (promedio)<br />Pseudo Código<br />Departamento de ingeniería<br />
  55. 55. Representación de Algoritmos.<br /><ul><li>Ejemplo: </li></ul>Elaborar un algoritmo que calcule el promedio de edad de los estudiantes del salón de clase, de acuerdo al numero de estudiantes.<br />Calcule ademas el promedio de edad de los hombres y mujeres del salón.<br />Departamento de ingeniería<br />
  56. 56. Solución completa utilizando Pseudo Código<br />INICIO<br />leer(numero)<br /> contador 0<br /> acumulador 0 <br />cont_mujeres  0<br />cont_hombres  0<br />acum_mujeres  0<br />acum_hombres 0<br />MIENTRAS contador < numero HACER<br /> contador  contador +1<br />leer(edad)<br />leer(sexo)<br />SI sexo = ‘mujer’ ENTONCES<br />cont_mujeres  cont_mujeres +1<br />acum_mujeres  acum_mujeres + edad<br />SINO<br />cont_hombres  cont_hombres +1<br />acum_hombres  acum_hombres + edad<br />FIN SI<br /> acumulador  acumulador + edad<br />FIN MIENTRAS<br />Departamento de ingeniería<br />
  57. 57. Solución completa utilizando Pseudo Código<br />SI contador >0 ENTONCES<br /> promedio  acumulador/contador<br /> SINO<br /> promedio  0<br /> FIN SI<br /> SI cont_mujeres >0 ENTONCES<br />prom_mujeres  acum_mujeres/cont_mujeres<br /> SINO<br />prom_mujeres  0<br /> FIN SI<br /> SI cont_hombres >0 ENTONCES<br />prom_hombres  acum_hombre/cont_hombres<br /> SINO<br />prom_hombres  0<br /> FIN SI<br />escribir(promedio)<br />escribir(prom_mujeres)<br />escribir(prom_hombres)<br />FIN<br />Departamento de ingeniería<br />
  58. 58. Gracias!!!<br />Departamento de ingeniería<br />

×