Introducción a los Algortimos

559 views

Published on

Presentación para el módulo 2, unidad 3 y 4 de la asignatura Computación I

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
559
On SlideShare
0
From Embeds
0
Number of Embeds
12
Actions
Shares
0
Downloads
25
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Introducción a los Algortimos

  1. 1. • Es un conjunto de pasos, instrucciones o acciones que se deben seguir y realizar ordenadamente para llegar a un fin determinado.• Ej: Solución de un problema, obtención de una respuesta, realización de una tarea, mejorar un proceso, etc.• 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.• Ej.: La utilización del directorio telefónico, una recta de cocina (preparar sancocho), montaje de una llanta, etc.• 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.
  2. 2. Algoritmo para comprar los boletos de entrada al cine1. Inicio.2. Llegar al lugar de proyección de la película.3. Revisar la cartelera.4. Seleccionar la película.5. Hacer la cola de pago.6. Esperar el turno.7. Solicitar la película.8. Si la hay (ir al paso 10), sino (ir al paso 9).9. Escoger otra película (ir al paso 8), o retirarse (ir al paso 12).10. Entregar el dinero.11. Esperar por los boletos y la diferencia de pago.12. Fin.
  3. 3. Todo algoritmo debe obedecer a la estructura básica de un sistema, es decir: entrada, proceso y salida.ENTRADA: Corresponde al insumo, a los datos necesarios que requiere el proceso para ofrecer los resultados esperados.PROCESO: Pasos necesarios para obtener la solución del problema o la situación planteada.SALIDA: Resultados arrojados por el proceso como solución.
  4. 4. . Datos Datos procesados SALIADA PROCESO ENTRADA
  5. 5. Ejemplo de un algoritmo de la sumatoria de los dos números Inicio Leer A Leer B Suma= A + B Escribir Suma FinTenemos que:ENTRADA : Valores de las variables A y B.PROCESO: Asignar a la variable Suma, el valor de A mas el valor de B.SALIDA:Impresión del valor de la variable Suma, que contiene la sumatoria de los valores de A y B.
  6. 6. Principios de Algoritmia Características de los AlgoritmosConsecuente:Indica el orden de realización de cada paso dentro del proceso.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 debeobtener el mismo resultado.Finitud: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
  7. 7. Dado que un algoritmo es un conjunto de instrucciones que permitenresolver un problema, los elementos que se utilizan enla construcción de algoritmos son los siguientes:●Comandos: Son palabras que denotan una acción que son interpretadasy ejecutarlas el computador. Cada comandoconserva 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.●Datos:Numéricos (Reales, Enteros)Lógicos (Binarios)Carácter (Char, String)
  8. 8. ●Variables y contantes:Son espacios de memoria que contienen valores de un tipo especifico dedato que pueden mantenerse (Constantes)o que puedan variar (Variables). •Constante: Es un dato que permanece con un valor por siempre Ej: PI, e, etc. •Variable: Es un dato cuyo valor puede variar a lo largo del desarrollo del algoritmo Ej: Velocidad, aceleración, contador, etc.
  9. 9. ●Operadores: Son todos los símbolos y palabras que permiten crearoperaciones de diversos tipo tales como: •Aritméticas: +(Suma) , -(Resta), /(División),*(Multiplicación), % Residuo. •Relacionales: >(Mayor que),< (Menor que),<>(Diferente), >=(Mayor o igual),<=(Menor o igual). •Lógicos: AND-&& (Conjunción), OR-|| (Disyunción), NOT-! (Negación),
  10. 10. • Para representar los algoritmos se utilizan los: – Diagramas de Flujo – Pseudo Código o Pseudo Lenguaje.
  11. 11. En los algoritmos se emplean estructuras básicas o de controlya prediseñadas para el tratamiento de información, las cualesrealizan acciones a las cuales deba someterse la información.Estas estructuras son: •Secuenciales: cuando se requiere que una instrucción siga después de otra. •Selección o decisión: Para tomar decisiones lógicas, la ejecución de la instrucciones dependerá de que se cumplan o no, una o varias condiciones. •Repetición o Iteración: se utiliza cuando un proceso debe repetir se un número determinado o no de veces, una vez .
  12. 12. • Símbolos diagramas de flujo. Inicio/Fin Entrada/S alida de datos Proceso Flujo de datos Proceso alterno Bifurcación (Decisión) Si No
  13. 13. Terminador Inicio Entrada de Datos Leer Se recibe el número (numero) de estudiantes contador  0 Proceso acumulador  0 Decisión SI NO contador < numero NO SI contador  contador > 0 contador + 1 promedio  promedio  0 acumulador/contador Leer (edad) Salida de Datos Escribiracumulador  acumulador (promedio) + edad Fin
  14. 14. INICIO leer(numero) contador 0 acumulador 0 MIENTRAS contador < numero HACER contador  contador +1 leer(edad) acumulador  acumulador + edad FIN MIENTRAS SI contador >0 ENTONCES promedio  acumulador/contador SINO promedio  0 FIN SI escribir(promedio)FIN
  15. 15.  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. Definir una variable consiste en asignarle o darle por primera vez un valor; y puede hacerse de dos maneras:  Por medio de una lectura de datos, o  Utilizando un enunciado de asignación. Ejemplo: leer(edad) edad  25
  16. 16.  Toda variable que aparezca al lado derecho de un enunciado de asignación debe estar definida. Ejemplo 1: edad  25 contador  0 contador  contador + edad  Las variables edad y contador se definieron correctamente Ejemplo 2: contador  0 contador  contador + edad  La variable edad nunca fue definida.
  17. 17.  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. Ejemplo : edad  25 contador  0 contador  contador + edad
  18. 18.  Las variables que aparecen en la parte derecha de un enunciado de asignación conservan su valor después de ejecutarse la asignación. Ejemplo : salario  1000 bono  120 salario_neto  salario + bono
  19. 19.  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.
  20. 20. SI NO <comparación>Pseudo Código SI <comparación> ENTONCES VERDADERO Enunciado(s) SINO FALSO Enunciado(s) FIN SI
  21. 21. Diagrama de Flujo SI contador > NO 0 promedio  promedio  0 acumulador/contador Pseudo CódigoSI contador >0 ENTONCES promedio  acumulador/contadorSINO promedio  0FIN SI
  22. 22.  Son los enunciados que permiten repetir varias o muchas veces un conjunto de enunciados según se necesite de acuerdo a una condición. Se les conoce también como ciclos.
  23. 23. Diagrama de Flujo SI <comparación NO > MIENTRAS <comparación> HACERPseudo Código VERDADERO Enunciado(s) a repetir FIN MIENTRAS FALSO Enunciado(s)
  24. 24. Diagrama de Flujo SI contador < NO numero contador  contador + 1 promedio  acumulador/contador Leer(edad) Escribir (promedio) acumulador  acumulador + edad FinPseudo MIENTRAS contador < numero HACERCódigo contador  contador +1 leer(edad) acumulador  acumulador + edad FIN MIENTRAS promedio  acumulador/contador escribir(promedio)
  25. 25.  El enunciado de lectura se utiliza para introducir datos que se van a utilizar en la solución de un algoritmo. Ejemplo: ◦ Leer(edad)
  26. 26. El enunciado de escritura se utiliza para informar los resultados que seesperaban obtener al ejecutarse el algoritmo.Ejemplo: Escribir(promedio)
  27. 27. 1. 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.2. Determinar claramente con que datos de entrada se cuenta para la solución del problema.3. Aclarar y determinar la información o resultados que se soliciten. 1. Información Intermedia. 2. Información Final.4. Definir que cálculos y/o comparaciones se necesitan para llegar al resultado final. 1. Cálculos y comparaciones intermedias. 2. Cálculos y comparaciones finales.5. Tener en cuenta toda clase de condiciones y restricciones para la solución del problema.Todos los pasos tienen la misma importancia, la falta de analisis de alguno de ellos causara problemas en el transcurso del desarrollo del algoritmo.
  28. 28. INICIO leer(numero) contador 0 acumulador 0 cont_mujeres  0 cont_hombres  0 acum_mujeres  0 acum_hombres 0 MIENTRAS contador < numero HACER contador  contador +1 leer(edad) leer(sexo) SI sexo = ‘mujer’ ENTONCES cont_mujeres  cont_mujeres +1 acum_mujeres  acum_mujeres + edad SINO cont_hombres  cont_hombres +1 acum_hombres  acum_hombres + edad FIN SI acumulador  acumulador + edad FIN MIENTRAS
  29. 29. SI contador >0 ENTONCES promedio  acumulador/contador SINO promedio  0 FIN SI SI cont_mujeres >0 ENTONCES prom_mujeres  acum_mujeres/cont_mujeres SINO prom_mujeres  0 FIN SI SI cont_hombres >0 ENTONCES prom_hombres  acum_hombre/cont_hombres SINO prom_hombres  0 FIN SI escribir(promedio) escribir(prom_mujeres) escribir(prom_hombres)FIN

×