Your SlideShare is downloading. ×
0
IntroduccióN A La Programacion Tema 3 Algoritmia
IntroduccióN A La Programacion Tema 3 Algoritmia
IntroduccióN A La Programacion Tema 3 Algoritmia
IntroduccióN A La Programacion Tema 3 Algoritmia
IntroduccióN A La Programacion Tema 3 Algoritmia
IntroduccióN A La Programacion Tema 3 Algoritmia
IntroduccióN A La Programacion Tema 3 Algoritmia
IntroduccióN A La Programacion Tema 3 Algoritmia
IntroduccióN A La Programacion Tema 3 Algoritmia
IntroduccióN A La Programacion Tema 3 Algoritmia
IntroduccióN A La Programacion Tema 3 Algoritmia
IntroduccióN A La Programacion Tema 3 Algoritmia
IntroduccióN A La Programacion Tema 3 Algoritmia
IntroduccióN A La Programacion Tema 3 Algoritmia
IntroduccióN A La Programacion Tema 3 Algoritmia
IntroduccióN A La Programacion Tema 3 Algoritmia
IntroduccióN A La Programacion Tema 3 Algoritmia
IntroduccióN A La Programacion Tema 3 Algoritmia
IntroduccióN A La Programacion Tema 3 Algoritmia
IntroduccióN A La Programacion Tema 3 Algoritmia
IntroduccióN A La Programacion Tema 3 Algoritmia
IntroduccióN A La Programacion Tema 3 Algoritmia
IntroduccióN A La Programacion Tema 3 Algoritmia
IntroduccióN A La Programacion Tema 3 Algoritmia
IntroduccióN A La Programacion Tema 3 Algoritmia
IntroduccióN A La Programacion Tema 3 Algoritmia
IntroduccióN A La Programacion Tema 3 Algoritmia
IntroduccióN A La Programacion Tema 3 Algoritmia
IntroduccióN A La Programacion Tema 3 Algoritmia
IntroduccióN A La Programacion Tema 3 Algoritmia
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

IntroduccióN A La Programacion Tema 3 Algoritmia

6,200

Published on

0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
6,200
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
270
Comments
0
Likes
3
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Algoritmos<br />Facultad de ingeniería<br />
  • 2. ¿Que es la algoritmia?<br /><ul><li> Es un conjunto de pasos, instrucciones o acciones que se deben seguir y realizar ordenadamente para llegar a un fin determinado.
  • 3. Ej: Solución de un problema, obtención de una respuesta, realización de una tarea, mejorar un proceso, etc.
  • 4. Algoritmos cualitativos. Son aquellos pasos o instrucciones descritos por medio de palabras que sirven para llegar a la obtención de una respuesta o solución de un problema.
  • 5. Ej.: La utilización del directorio telefónico, una recta de cocina (preparar sancocho), montaje de una llanta, etc.
  • 6. Algoritmos cuantitativos.Son todos aquellos pasos o instrucciones que involucran cálculos numéricos para llegar aun resultado satisfactorio Ej: Una ecuación diferencial, hallar una raíz, etc.</li></ul>Facultad de ingeniería<br />
  • 7. Ejemplo de un algoritmo<br /> Algoritmo para comprar los boletos de entrada al cine<br />Inicio. <br />Llegar al lugar de proyección de la película. <br />Revisar la cartelera. <br />Seleccionar la película. <br /> Hacer la cola de pago.<br />Esperar el turno.<br />Solicitar la película.<br />Si la hay (ir al paso 10), sino (ir al paso 9).<br />Escoger otra película (ir al paso 8), o retirarse (ir al paso 12). <br />Entregar el dinero. <br /> Esperar por los boletos y la diferencia de pago.<br /> Fin.<br />Facultad de ingeniería<br />
  • 8. Partes de un algoritmo<br />Todo algoritmo debe obedecer a la estructura básica de un sistema, es decir: entrada, proceso y salida. <br />ENTRADA:<br />  Corresponde al insumo, a los datos necesarios que requiere  el<br /> proceso para ofrecer los resultados esperados. <br />PROCESO: Pasos necesarios para obtener la solución del problema o la <br /> situación planteada. <br />SALIDA:  <br /> Resultados arrojados por el proceso como solución.<br />Facultad de ingeniería<br />
  • 9. Partes de un algoritmo<br />. <br />Datos<br />Datos procesados<br />PROCESO<br />SALIADA<br />ENTRADA<br />Facultad de ingeniería<br />
  • 10. Partes de un algoritmo<br />Ejemplo de un algoritmo de la sumatoria de los dos números     <br />Tenemos que: <br />ENTRADA : Valores de las variables A y B. PROCESO:  Asignar a la variable Suma, el valor de A mas el valor de B.<br />SALIDA: Impresión del valor de la variable Suma, que contiene la sumatoria de los valores de A y B.<br />Inicio<br />Leer A <br />Leer B <br />Suma= A + B <br />Escribir Suma <br />Fin <br />Facultad de ingeniería<br />
  • 11. Características de un algoritmo<br />Principios de Algoritmia Características de los Algoritmos <br />Consecuente: Indica el orden de realización de cada paso dentro del proceso. <br />Definición: Indica  la  exactitud  y  consistencia  de  los  pasos  descritos  en  el  proceso,  si  el  algoritmo  se  prueba  dos  veces, en estas dos pruebas, se debe obtener el mismo resultado.   <br />Finitud:<br />Indica el número razonable de pasos, los cuales deben conllevar a la finalización del proceso y producir  un resultado en un tiempo finito<br />Facultad de ingeniería<br />
  • 12. Elementos que componen un algoritmo<br />Dado que un algoritmo  es  un  conjunto  de  instrucciones  que permiten resolver  un  problema, los elementos que se utilizan en<br />la construcción de algoritmos son los siguientes: <br />●Comandos: Son palabras que denotan una acción que son  interpretadas y ejecutarlas el computador.  Cada comando <br />conserva una sintaxis determinada, es decir la forma de utilizarlo.  Los lenguajes computacionales tienen en su repertorio comandos dirigidos al procesamiento de archivos  y datos, entre ellos: Inicio, Leer, Imprimir.<br />●Datos:<br />Numéricos (Reales, Enteros)      <br />Lógicos (Binarios)         <br />Carácter (Char, String)<br />Facultad de ingeniería<br />
  • 13. Elementos que componen un algoritmo<br />●Variables y contantes:<br />Son  espacios  de  memoria  que contienen  valores  de un tipo especifico de dato que pueden  mantenerse (Constantes)<br />o que  puedan variar (Variables). <br /><ul><li>Constante: Es un dato que permanece con un valor por siempre Ej: PI, e, etc.
  • 14. Variable: Es un dato cuyo valor puede variar a lo largo del desarrollo del algoritmo</li></ul>Ej: Velocidad, aceleración, contador, etc.<br />Facultad de ingeniería<br />
  • 15. Elementos que componen un algoritmo<br />●Operadores: Son todos los símbolos y palabras que permiten crear operaciones de diversos tipo tales como:<br /><ul><li>Aritméticas: +(Suma) , -(Resta), /(División),*(Multiplicación), % Residuo.
  • 16. Relacionales: >(Mayor que),< (Menor que),<>(Diferente), >=(Mayor o igual),<=(Menor o igual).
  • 17. Lógicos: AND-&& (Conjunción), OR-|| (Disyunción), NOT-! (Negación),</li></ul>Facultad de ingeniería<br />
  • 18. ¿Cómo se representan losalgoritmos?<br /><ul><li>Para representar los algoritmos se utilizan los:
  • 19. Diagramas de Flujo
  • 20. Pseudo Código o Pseudo Lenguaje.</li></ul>Facultad de ingeniería<br />
  • 21. Estructuras básicas de los algoritmos<br />En los algoritmos se emplean  estructuras  básicas  o  de  control  <br />ya  prediseñadas  para  el tratamiento  de  información, las cuales realizan  acciones a las cuales deba someterse la información. <br />Estas  estructuras son: <br /><ul><li>Secuenciales: cuando se requiere que una instrucción siga después de otra.
  • 22. Selección  o  decisión:  Para tomar decisiones  lógicas,  </li></ul>la  ejecución de la instrucciones dependerá de que se <br />cumplan o no, una o  varias condiciones. <br /><ul><li>Repetición  o  Iteración:  se  utiliza  cuando  un  proceso  debe repetirse  un  número  determinado  o  no  de  veces,  una  vez .</li></ul>Facultad de ingeniería<br />
  • 23. ¿Cómo se representan losalgoritmos?<br /><ul><li>Símbolos diagramas de flujo.</li></ul>Inicio/Fin<br />Entrada/Salida de datos<br />Proceso <br />Proceso alterno<br />Flujo de datos<br />Bifurcación<br />(Decisión)<br />Si<br />No<br />Facultad de ingeniería<br />
  • 24. Ejemplo de un diagrama de flujo<br />Terminador<br />Inicio<br />Entrada de Datos<br />Leer (numero)<br />Se recibe el número <br />de estudiantes<br />contador  0<br />acumulador  0<br />Proceso<br />Decisión<br />SI<br />NO<br />contador &amp;lt; numero<br />NO<br />SI<br />contador &amp;gt; 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 />Facultad de ingeniería<br />
  • 25. Ejemplo de un Pseudo código<br />INICIO<br /> leer(numero)<br /> contador 0<br /> acumulador 0<br />MIENTRAS contador &amp;lt; numero HACER<br /> contador  contador +1<br />leer(edad)<br /> acumulador  acumulador + edad<br />FIN MIENTRAS<br />SI contador &amp;gt;0 ENTONCES<br /> promedio  acumulador/contador<br />SINO<br /> promedio  0<br />FIN SI<br />escribir(promedio)<br />FIN<br />Facultad de ingeniería<br />
  • 26. Enunciado de asignación<br />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. <br />Definir una variable consiste en asignarle o darle por primera vez un valor; y puede hacerse de dos maneras:<br />Por medio de una lectura de datos, o<br />Utilizando un enunciado de asignación.<br />Ejemplo: <br />leer(edad) <br />edad  25<br />Facultad de ingeniería<br />
  • 27. Reglas de construcción deenunciados de asignación<br />Toda variable que aparezca al lado derecho de un enunciado de asignación debe estar definida.<br />Ejemplo 1: <br />edad 25<br />contador 0 <br />contador  contador + edad<br />Las variables edad y contador se definieron correctamente<br />Ejemplo 2: <br />contador 0 <br />contador  contador + edad <br />La variable edad nunca fue definida.<br />Facultad de ingeniería<br />
  • 28. Reglas de construcción deenunciados 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 />Facultad de ingeniería<br />
  • 29. Reglas de construcción deenunciados 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 />Facultad de ingeniería<br />
  • 30. Reglas de construcción deenunciados 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 />Facultad de ingeniería<br />
  • 31. Reglas de construcción deenunciados de decisión<br />SI<br />NO<br />&amp;lt;comparación&amp;gt;<br />SI &amp;lt;comparación&amp;gt; ENTONCES<br /> VERDADERO<br />Enunciado(s)<br />SINO<br />FALSO<br /> Enunciado(s)<br />FIN SI<br />Pseudo Código<br />Facultad de ingeniería<br />
  • 32. Enunciado de decisión<br />Diagrama de Flujo<br />SI<br />NO<br />contador &amp;gt; 0<br />promedio  acumulador/contador<br />promedio  0<br />Pseudo Código<br />SI contador &amp;gt;0 ENTONCES<br />promedio  acumulador/contador<br />SINO<br />promedio  0<br />FIN SI<br />Facultad de ingeniería<br />
  • 33. Reglas de construcción deenunciados 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 />Facultad de ingeniería<br />
  • 34. Enunciado de repetición<br />Diagrama de Flujo<br />SI<br />NO<br />&amp;lt;comparación&amp;gt;<br />MIENTRAS &amp;lt;comparación&amp;gt; HACER<br /> VERDADERO<br />Enunciado(s) a repetir<br />FIN MIENTRAS<br />FALSO<br />Enunciado(s)<br />Pseudo Código<br />
  • 35. Enunciado de repetición<br />Diagrama de Flujo<br />contador &amp;lt; numero<br />SI<br />NO<br />contador  contador + 1<br />MIENTRAS contador &amp;lt; 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 />promedio  acumulador/contador<br />Leer(edad)<br />Escribir (promedio)<br />acumulador  acumulador + edad<br />Facultad de ingeniería<br />Fin<br />
  • 36. Reglas de construcción deenunciados de lectura<br /><ul><li>El enunciado de lectura se utiliza para introducir datos que se van a utilizar en la solución de un algoritmo.
  • 37. Ejemplo:
  • 38. Leer(edad)</li></ul>Facultad de ingeniería<br />
  • 39. Reglas de construcción deenunciados 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 />Facultad de ingeniería<br />
  • 40. Pasos para elaborar unalgoritmo<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 />Facultad de ingeniería<br />
  • 41. Ejemplo de algoritmo<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 &amp;lt; 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 />Facultad de ingeniería<br />
  • 42. Ejemplo de algoritmo<br /> SI contador &amp;gt;0 ENTONCES<br /> promedio  acumulador/contador<br /> SINO<br /> promedio  0<br /> FIN SI<br /> SI cont_mujeres &amp;gt;0 ENTONCES<br /> prom_mujeres  acum_mujeres/cont_mujeres<br /> SINO<br /> prom_mujeres  0<br /> FIN SI<br /> SI cont_hombres &amp;gt;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 />Facultad de ingeniería<br />

×