Tema 1 Algoritmos
Algoritmos <ul><li>¿Que es un algoritmo? </li></ul><ul><ul><li>“ Una lista de instrucciones donde se especifica una sucesi...
Algoritmos
Algoritmos <ul><li>5+1=6 </li></ul><ul><li>Anotar 6 </li></ul><ul><li>2+9=11 </li></ul><ul><li>Anotar 1 y guardar 1 </li><...
Algoritmos V +  F F F F F F V F F F V V V V +
Algoritmos sansano san + sano
Algoritmos <ul><li>Entrada </li></ul><ul><ul><li>¿Qué se necesita para realizar los pasos? </li></ul></ul><ul><li>Salida <...
Algoritmos <ul><li>Sirven para resolver un tipo de problema especifico. </li></ul><ul><li>Son secuencias de pasos concreto...
Algoritmos <ul><li>¿Qué tiene que ver  con la programación? </li></ul><ul><ul><li>La programación consiste en crear progra...
Algoritmos <ul><li>¿Qué es un programa de computador? </li></ul><ul><ul><li>Es una secuencia de pasos a ejecutar </li></ul...
Descripción de un algoritmo <ul><li>Es necesario contar con formas de expresar algoritmos </li></ul><ul><ul><li>Diseño del...
Descripción de un algoritmo <ul><li>Pseudo – código </li></ul><ul><ul><li>El algoritmo se expresa en lenguaje natural </li...
Descripción de un algoritmo <ul><li>Diagramas de flujo </li></ul><ul><ul><li>Presentan el algoritmo de manera gráfica. </l...
Descripción de un algoritmo <ul><li>Diagrama de Nassi-Schneidermann </li></ul><ul><ul><li>También se denominan diagramas d...
Construcción de un algoritmo <ul><li>Definir el problema a resolver </li></ul><ul><li>Identificar las entradas del algorit...
Construcción de un algoritmo <ul><li>Construcción de un programa </li></ul><ul><ul><li>Definir el problema a resolver </li...
Construcción de un algoritmo <ul><li>Ejemplo: </li></ul><ul><ul><li>Objetivo: Calcular el precio de una manzana  </li></ul...
Construcción de un algoritmo Inicio Ingresar valor de K y P Calcular G = K/100 Calcular M = G x P Devolver el valor de M F...
Construcción de un algoritmo G=K/1000 M=G x P Ingresar K y P Devolver M
Construcción de un algoritmo G=K/1000 M=G x P Ingresar K y P Devolver M
Construcción de un algoritmo <ul><li>Operaciones básicas </li></ul><ul><ul><li>Entrada de datos </li></ul></ul><ul><ul><li...
Entrada de datos <ul><li>Los algoritmos son para solucionar tipos de problemas </li></ul><ul><li>Es imprescindible poder e...
Entrada de datos <ul><li>Dispositivos de entrada </li></ul><ul><ul><li>Teclado </li></ul></ul><ul><ul><li>Mouse </li></ul>...
Entrada de datos
Entrada de datos <ul><li>Cada dispositivo tiene distintas características. </li></ul><ul><li>Por lo general, sirven para c...
Salida de datos <ul><li>De nada sirve implementar un algoritmo si no podemos saber su resultado. </li></ul><ul><li>Al fina...
Salida de datos <ul><li>Dispositivos de salida </li></ul><ul><ul><li>Pantalla </li></ul></ul><ul><ul><li>Impresora </li></...
Salida de datos C:
Salida de datos <ul><li>Al igual que con la entrada, cada dispositivo tiene finalidades distintas. </li></ul><ul><li>Los s...
Utilización de variables <ul><li>Durante la ejecución del algoritmo, es importante recordar los resultados parciales de ca...
Utilización de variables G=K/1000 Esta variable se denomina G y se utiliza para recordar el valor de un gramo de manzana. ...
Utilización de variables <ul><li>La principal característica de una variable es que su valor puede cambiar en el tiempo. <...
Utilización de constantes <ul><li>Además de las variables, un algoritmo requiere de constantes. </li></ul><ul><li>A difere...
Utilización de constantes G=K/1000 La constante “1000” sirva para transformar el valor Por kilo a un valor por gramo
Aplicación de operadores <ul><li>Para obtener resultados, generalmente es necesario “transformar” las entradas en la salid...
Aplicación de operadores M=G * P operandos operador
Asignación de valores <ul><li>El resultado de un operador se puede almacenar en una variable. </li></ul><ul><li>Para esto ...
Asignación de valores M=G * P Operador de asignación El resultado de GxP se asigna a la variable M
Combinación de operaciones básicas <ul><li>Secuencial </li></ul><ul><ul><li>Un conjunto de operaciones básicas pueden ser ...
Combinación de operaciones básicas Ingresar K=200 y P=250 G tiene el valor 0,2 M tiene el valor 50 Diagrama de flujo Diagr...
Combinación de operaciones básicas <ul><li>Selectiva </li></ul><ul><ul><li>Un algoritmo puede optar por ejecutar o no una ...
Combinación de operaciones básicas C 3 4 2 1 C: Condición
Combinación de operaciones básicas 3 si no 4 2 1 C C: Condición
Combinación de operaciones básicas <ul><li>Inicio </li></ul><ul><li>Ejecutar 1 </li></ul><ul><li>Ejecutar 2 </li></ul><ul>...
Combinación de operaciones básicas <ul><li>Ejemplo: levantarse en la mañana </li></ul>Inicio salir de la cama ducharse tom...
Combinación de operaciones básicas C 3a 3b 4 2 1 si no C: Condición
Combinación de operaciones básicas 3a 3b si no 4 2 1 C C: Condición
Combinación de operaciones básicas <ul><li>Inicio </li></ul><ul><li>Ejecutar 1 </li></ul><ul><li>Ejecutar 2 </li></ul><ul>...
Combinación de operaciones básicas <ul><li>Ejemplo: levantarse en la mañana </li></ul>Inicio salir de la cama ducharse tom...
Combinación de operaciones básicas <ul><li>Estructura de control selectiva </li></ul><ul><ul><li>Una condición es cualquie...
Combinación de operaciones básicas <ul><li>Estructura de control selectiva </li></ul><ul><ul><li>Toda decisión se puede ll...
Combinación de operaciones básicas 2a 2b 2c 3 1 x? x mayor que 0 x igual a 0 x menor que 0
Combinación de operaciones básicas 3 1 si si no no 2a 2b 2c x mayor que 0? x menor que 0?
Combinación de operaciones básicas 1 3 2a x mayor que 0? x menor que 0? 2b 2c si si no no
Combinación de operaciones básicas <ul><li>Inicio </li></ul><ul><li>Ejecutar 1 </li></ul><ul><li>Si x es mayor que cero en...
Combinación de operaciones básicas <ul><li>Ejemplo: levantarse en la mañana </li></ul>Inicio salir de la cama ducharse tom...
Combinación de operaciones básicas <ul><li>Estructura de selección múltiple </li></ul><ul><ul><li>Para algunos casos se pu...
Combinación de operaciones básicas Botón giro saldo clave error 1 3 2 … etoc salir
Combinación de operaciones básicas giro clave saldo error Botón 1 2 3 etoc salir …
Combinación de operaciones básicas <ul><li>Inicio </li></ul><ul><li>en el caso que el botón presionado </li></ul><ul><li>s...
Combinación de operaciones básicas <ul><li>Repetitiva </li></ul><ul><ul><li>Además de combinar operaciones en forma secuen...
Combinación de operaciones básicas <ul><li>MIENTRAS </li></ul><ul><ul><li>Se repite una operación mientras una condición s...
Combinación de operaciones básicas C 2 1 3 C: Condición si no
Combinación de operaciones básicas 1 3 2 C C: Condición
Combinación de operaciones básicas <ul><li>Inicio </li></ul><ul><li>ejecutar 1 </li></ul><ul><li>mientras se cumpla la con...
Combinación de operaciones básicas <ul><li>Ejemplo validar ingreso de valor positivo </li></ul>Inicio definir variable x a...
Combinación de operaciones básicas <ul><li>HASTA QUE </li></ul><ul><ul><li>Se repite la ejecución de una operación hasta q...
Combinación de operaciones básicas C 2 1 3 C: Condición si no
Combinación de operaciones básicas 1 3 2 C C: Condición
Combinación de operaciones básicas Inicio ejecutar 1 repetir ejecutar 2 hasta que se cumpla condición ejecutar 3 fin
Combinación de operaciones básicas <ul><li>Ejemplo </li></ul><ul><ul><li>Mismo ejemplo anterior </li></ul></ul>Inicio defi...
Combinación de operaciones básicas <ul><li>Repetir un número fijo de veces </li></ul><ul><ul><li>Muy útil cuando se sabe e...
Combinación de operaciones básicas Inicio contador, fin contador 2 3 1
Combinación de operaciones básicas 1 3 2 Inicio contador, fin contador
Combinación de operaciones básicas Inicio ejecutar 1 desde contador inicial hasta contador final ejecutar 2 fin desde ejec...
Combinación de operaciones básicas <ul><li>Ejemplo </li></ul>Inicio definir variable “sumatoria” asignar el valor 0 a “sum...
Combinación de operaciones básicas <ul><li>Combinación de estructuras de control seriales, selectivas y repetitivas </li><...
Combinación de operaciones básicas <ul><li>Ejemplos </li></ul><ul><ul><li>Cachi-pun </li></ul></ul><ul><ul><li>Ordenar obj...
Fin tema 1 Algoritmos
Upcoming SlideShare
Loading in...5
×

ALGORITMOS

4,116

Published on

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

  • Be the first to like this

No Downloads
Views
Total Views
4,116
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
40
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

ALGORITMOS

  1. 1. Tema 1 Algoritmos
  2. 2. Algoritmos <ul><li>¿Que es un algoritmo? </li></ul><ul><ul><li>“ Una lista de instrucciones donde se especifica una sucesión de operaciones necesarias para resolver cualquier problema de un tipo dado”. </li></ul></ul><ul><ul><li>Ejemplo sumar dos números </li></ul></ul>
  3. 3. Algoritmos
  4. 4. Algoritmos <ul><li>5+1=6 </li></ul><ul><li>Anotar 6 </li></ul><ul><li>2+9=11 </li></ul><ul><li>Anotar 1 y guardar 1 </li></ul><ul><li>4+0=4 </li></ul><ul><li>4+1=5 </li></ul><ul><li>Anotar 5 </li></ul><ul><li>El resultado es 516 </li></ul>491 + 25 516
  5. 5. Algoritmos V + F F F F F F V F F F V V V V +
  6. 6. Algoritmos sansano san + sano
  7. 7. Algoritmos <ul><li>Entrada </li></ul><ul><ul><li>¿Qué se necesita para realizar los pasos? </li></ul></ul><ul><li>Salida </li></ul><ul><ul><li>¿Que se obtiene al final del algoritmo? </li></ul></ul><ul><li>Tipos de datos </li></ul><ul><ul><li>Números: enteros, reales, complejos </li></ul></ul><ul><ul><li>Texto: letras, palabras, frases </li></ul></ul><ul><ul><li>Otros </li></ul></ul>
  8. 8. Algoritmos <ul><li>Sirven para resolver un tipo de problema especifico. </li></ul><ul><li>Son secuencias de pasos concretos. </li></ul><ul><li>Requiere la definición de la entrada y la salida. </li></ul><ul><li>Adecuados para ser ejecutados por un computador </li></ul>
  9. 9. Algoritmos <ul><li>¿Qué tiene que ver con la programación? </li></ul><ul><ul><li>La programación consiste en crear programas de computador que resuelvan problemas específicos. </li></ul></ul><ul><ul><li>Un programa de computador es la implementación de un algoritmo. </li></ul></ul>
  10. 10. Algoritmos <ul><li>¿Qué es un programa de computador? </li></ul><ul><ul><li>Es una secuencia de pasos a ejecutar </li></ul></ul><ul><ul><li>Los pasos están descritos en un lenguaje especial. </li></ul></ul><ul><ul><li>Este lenguaje se puede traducir al lenguaje del computador. </li></ul></ul><ul><ul><li>Por lo general es un archivo de texto. </li></ul></ul><ul><ul><li>El texto escrito en dicho lenguaje se denomina el código del programa. </li></ul></ul>
  11. 11. Descripción de un algoritmo <ul><li>Es necesario contar con formas de expresar algoritmos </li></ul><ul><ul><li>Diseño del algoritmo antes de codificar </li></ul></ul><ul><ul><li>Diseño del algoritmo de manera independiente del lenguaje de programación </li></ul></ul><ul><li>Diferentes alternativas </li></ul><ul><ul><li>Pseudo - código </li></ul></ul><ul><ul><li>Diagramas de flujo </li></ul></ul><ul><ul><li>Diagramas de Nassi-Schneidermann </li></ul></ul>
  12. 12. Descripción de un algoritmo <ul><li>Pseudo – código </li></ul><ul><ul><li>El algoritmo se expresa en lenguaje natural </li></ul></ul><ul><ul><li>Expresa de manera genérica los pasos del algoritmo </li></ul></ul><ul><ul><li>No provee detalles de la implementación particular del código final </li></ul></ul>
  13. 13. Descripción de un algoritmo <ul><li>Diagramas de flujo </li></ul><ul><ul><li>Presentan el algoritmo de manera gráfica. </li></ul></ul><ul><ul><li>De gran utilidad para seguir la “ruta” de un algoritmo. </li></ul></ul><ul><ul><li>Aplicables a muchas otras disciplinas. </li></ul></ul>
  14. 14. Descripción de un algoritmo <ul><li>Diagrama de Nassi-Schneidermann </li></ul><ul><ul><li>También se denominan diagramas de caja. </li></ul></ul><ul><ul><li>Menos usado que el diagrama de flujo </li></ul></ul><ul><ul><li>Mas ordenado </li></ul></ul><ul><ul><li>Ocupa mucho espacio para representar algoritmos complejos. </li></ul></ul>
  15. 15. Construcción de un algoritmo <ul><li>Definir el problema a resolver </li></ul><ul><li>Identificar las entradas del algoritmo </li></ul><ul><li>Identificar la salida del algoritmo </li></ul><ul><li>Definir los pasos a seguir para convertir las entradas en la salida </li></ul><ul><li>Seguir los pasos y comprobar que el algoritmo sea correcto analizando la salida. </li></ul><ul><li>Revisar los pasos y hacer las correcciones. </li></ul><ul><li>Resolver el problema. </li></ul>
  16. 16. Construcción de un algoritmo <ul><li>Construcción de un programa </li></ul><ul><ul><li>Definir el problema a resolver </li></ul></ul><ul><ul><li>Definir el algoritmo que lo resuelve </li></ul></ul><ul><ul><li>Escribir el programa </li></ul></ul><ul><ul><ul><li>Escribir cada uno de los pasos del algoritmo en el lenguaje de programación </li></ul></ul></ul><ul><ul><li>Ejecutar el programa en el computador </li></ul></ul><ul><ul><li>Verificar que las salidas sean correctas </li></ul></ul><ul><ul><li>Hacer correcciones al programa </li></ul></ul><ul><ul><li>Resolver el problema </li></ul></ul>
  17. 17. Construcción de un algoritmo <ul><li>Ejemplo: </li></ul><ul><ul><li>Objetivo: Calcular el precio de una manzana </li></ul></ul><ul><ul><li>Entradas </li></ul></ul><ul><ul><ul><li>Precio (en pesos) del kilo de manzanas [K] </li></ul></ul></ul><ul><ul><ul><li>Peso (en gramos) promedio de una manzana[P] </li></ul></ul></ul><ul><ul><li>Salida </li></ul></ul><ul><ul><ul><li>Precio (en pesos) de una manzana [M] </li></ul></ul></ul>
  18. 18. Construcción de un algoritmo Inicio Ingresar valor de K y P Calcular G = K/100 Calcular M = G x P Devolver el valor de M Fin.
  19. 19. Construcción de un algoritmo G=K/1000 M=G x P Ingresar K y P Devolver M
  20. 20. Construcción de un algoritmo G=K/1000 M=G x P Ingresar K y P Devolver M
  21. 21. Construcción de un algoritmo <ul><li>Operaciones básicas </li></ul><ul><ul><li>Entrada de datos </li></ul></ul><ul><ul><li>Salida de datos </li></ul></ul><ul><ul><li>Utilización de variables </li></ul></ul><ul><ul><li>Utilización de constantes </li></ul></ul><ul><ul><li>Aplicación de operadores </li></ul></ul><ul><ul><li>Asignación de valores </li></ul></ul><ul><li>Combinación de operaciones básicas </li></ul><ul><ul><li>Secuencial </li></ul></ul><ul><ul><li>Selectiva </li></ul></ul><ul><ul><li>Repetitiva </li></ul></ul>
  22. 22. Entrada de datos <ul><li>Los algoritmos son para solucionar tipos de problemas </li></ul><ul><li>Es imprescindible poder entregar entradas distintas en cada ejecución </li></ul><ul><li>La entrada de datos se realiza mediante algún dispositivo </li></ul>
  23. 23. Entrada de datos <ul><li>Dispositivos de entrada </li></ul><ul><ul><li>Teclado </li></ul></ul><ul><ul><li>Mouse </li></ul></ul><ul><ul><li>Botones </li></ul></ul><ul><ul><li>Censores de tacto </li></ul></ul><ul><ul><li>Cámaras digitales </li></ul></ul><ul><ul><li>Scanners </li></ul></ul><ul><ul><li>Archivos </li></ul></ul>
  24. 24. Entrada de datos
  25. 25. Entrada de datos <ul><li>Cada dispositivo tiene distintas características. </li></ul><ul><li>Por lo general, sirven para cosas distintas </li></ul><ul><li>Los sistemas definen un dispositivo de entrada por defecto </li></ul><ul><ul><li>Este dispositivo se denomina la entrada estándar . </li></ul></ul><ul><ul><li>En un computador suele ser el teclado. </li></ul></ul>
  26. 26. Salida de datos <ul><li>De nada sirve implementar un algoritmo si no podemos saber su resultado. </li></ul><ul><li>Al finalizar el algoritmo (o durante), es imprescindible obtener la información resultante de su ejecución. </li></ul><ul><li>La salida de datos se realiza mediante dispositivos. </li></ul>
  27. 27. Salida de datos <ul><li>Dispositivos de salida </li></ul><ul><ul><li>Pantalla </li></ul></ul><ul><ul><li>Impresora </li></ul></ul><ul><ul><li>Parlantes </li></ul></ul><ul><ul><li>Tableros luminosos </li></ul></ul><ul><ul><li>Motores </li></ul></ul><ul><ul><li>Tarjeta de red </li></ul></ul><ul><ul><li>Archivos </li></ul></ul>
  28. 28. Salida de datos C:
  29. 29. Salida de datos <ul><li>Al igual que con la entrada, cada dispositivo tiene finalidades distintas. </li></ul><ul><li>Los sistemas definen un dispositivo de salida por defecto </li></ul><ul><ul><li>Este dispositivo se denomina la salida estándar . </li></ul></ul><ul><ul><li>En un computador suele ser la pantalla. </li></ul></ul>
  30. 30. Utilización de variables <ul><li>Durante la ejecución del algoritmo, es importante recordar los resultados parciales de cada paso. </li></ul><ul><li>Estos resultados se etiquetan con un nombre. </li></ul><ul><li>Al invocar con posterioridad ese nombre, recuperamos el resultados parcial. </li></ul>
  31. 31. Utilización de variables G=K/1000 Esta variable se denomina G y se utiliza para recordar el valor de un gramo de manzana. K es un dato de entrada, y también Se considera una variable
  32. 32. Utilización de variables <ul><li>La principal característica de una variable es que su valor puede cambiar en el tiempo. </li></ul><ul><li>Usualmente se compara con una caja donde se puede almacenar una sola “cosa”. </li></ul><ul><li>Por lo general, las variables se definen con un tipo de dato. </li></ul><ul><li>El tipo de dato restringe que tipo de “cosas” se pueden guardar en las “cajas”. </li></ul>
  33. 33. Utilización de constantes <ul><li>Además de las variables, un algoritmo requiere de constantes. </li></ul><ul><li>A diferencia de las variables, su valor no puede cambiar en el tiempo. </li></ul><ul><li>Las constantes también pueden recibir nombres para mayor claridad. </li></ul><ul><ul><li>Ej.: PI = 3.1415 </li></ul></ul>
  34. 34. Utilización de constantes G=K/1000 La constante “1000” sirva para transformar el valor Por kilo a un valor por gramo
  35. 35. Aplicación de operadores <ul><li>Para obtener resultados, generalmente es necesario “transformar” las entradas en la salida. </li></ul><ul><li>Para esto se aplican operadores de distinta índole </li></ul><ul><ul><li>Aritméticos ( + , - , * , / ) </li></ul></ul><ul><ul><li>Lógicos ( igual que , mayor que , menor que , y , o , no ) </li></ul></ul><ul><ul><li>Etc. </li></ul></ul><ul><li>Los operadores requieren de operandos y entregan un resultado. </li></ul><ul><li>Por lo general, los operadores son unarios o binarios. </li></ul>
  36. 36. Aplicación de operadores M=G * P operandos operador
  37. 37. Asignación de valores <ul><li>El resultado de un operador se puede almacenar en una variable. </li></ul><ul><li>Para esto se utiliza un tipo especial de operador. </li></ul><ul><li>Este es el operador de asignación . </li></ul><ul><li>Solo se pueden asignar valores a variables, no a constantes </li></ul>
  38. 38. Asignación de valores M=G * P Operador de asignación El resultado de GxP se asigna a la variable M
  39. 39. Combinación de operaciones básicas <ul><li>Secuencial </li></ul><ul><ul><li>Un conjunto de operaciones básicas pueden ser ejecutadas en forma secuencial. </li></ul></ul><ul><ul><li>Una operación no inicia hasta que la anterior termina </li></ul></ul>
  40. 40. Combinación de operaciones básicas Ingresar K=200 y P=250 G tiene el valor 0,2 M tiene el valor 50 Diagrama de flujo Diagrama de Nassi-Schneidermann G=K/1000 M=G * P Ingresar K y P Devolver M G=K/1000 M=G * P Ingresar K y P Devolver M
  41. 41. Combinación de operaciones básicas <ul><li>Selectiva </li></ul><ul><ul><li>Un algoritmo puede optar por ejecutar o no una operación (SI –ENTONCES). </li></ul></ul><ul><ul><li>Un algoritmo puede optar por ejecutar una u otra operación (SI-ENTONCES-SINO). </li></ul></ul><ul><ul><li>Esta decisión se basa en un condición. </li></ul></ul><ul><ul><li>Esta decisión controla el flujo del algoritmo. </li></ul></ul><ul><ul><li>Por esto, se denomina una estructura de control. </li></ul></ul>
  42. 42. Combinación de operaciones básicas C 3 4 2 1 C: Condición
  43. 43. Combinación de operaciones básicas 3 si no 4 2 1 C C: Condición
  44. 44. Combinación de operaciones básicas <ul><li>Inicio </li></ul><ul><li>Ejecutar 1 </li></ul><ul><li>Ejecutar 2 </li></ul><ul><li>si se cumple C entonces </li></ul><ul><li>Ejecutar 3 </li></ul><ul><li>fin si </li></ul><ul><li>Ejecutar 4 </li></ul><ul><li>fin </li></ul>
  45. 45. Combinación de operaciones básicas <ul><li>Ejemplo: levantarse en la mañana </li></ul>Inicio salir de la cama ducharse tomar desayuno si esta lloviendo entonces tomar el paraguas fin si tomar la mochila tomar la micro fin
  46. 46. Combinación de operaciones básicas C 3a 3b 4 2 1 si no C: Condición
  47. 47. Combinación de operaciones básicas 3a 3b si no 4 2 1 C C: Condición
  48. 48. Combinación de operaciones básicas <ul><li>Inicio </li></ul><ul><li>Ejecutar 1 </li></ul><ul><li>Ejecutar 2 </li></ul><ul><li>si se cumple C entonces </li></ul><ul><li>Ejecutar 3a </li></ul><ul><li>si no </li></ul><ul><li>Ejecutar 3b </li></ul><ul><li>fin si </li></ul><ul><li>Ejecutar 4 </li></ul><ul><li>fin </li></ul>
  49. 49. Combinación de operaciones básicas <ul><li>Ejemplo: levantarse en la mañana </li></ul>Inicio salir de la cama ducharse tomar desayuno si esta lloviendo entonces llevar la parca si no llevar la chaqueta fin si tomar la mochila tomar la micro fin
  50. 50. Combinación de operaciones básicas <ul><li>Estructura de control selectiva </li></ul><ul><ul><li>Una condición es cualquier proposición lógica que tenga un valor verdadero o falso definido. </li></ul></ul><ul><ul><li>Este esquema selectivo se denomina “decision binaria”. </li></ul></ul><ul><ul><li>¿Y si hay más de dos opciones? </li></ul></ul>
  51. 51. Combinación de operaciones básicas <ul><li>Estructura de control selectiva </li></ul><ul><ul><li>Toda decisión se puede llevar a un esquema de decisión binaria. </li></ul></ul><ul><ul><li>Basta con decidir entre una alternativa y todo el resto </li></ul></ul><ul><ul><li>Si se elige “el resto”, se decide entre una alternativa y el resto del resto. </li></ul></ul><ul><ul><li>Etc… </li></ul></ul>
  52. 52. Combinación de operaciones básicas 2a 2b 2c 3 1 x? x mayor que 0 x igual a 0 x menor que 0
  53. 53. Combinación de operaciones básicas 3 1 si si no no 2a 2b 2c x mayor que 0? x menor que 0?
  54. 54. Combinación de operaciones básicas 1 3 2a x mayor que 0? x menor que 0? 2b 2c si si no no
  55. 55. Combinación de operaciones básicas <ul><li>Inicio </li></ul><ul><li>Ejecutar 1 </li></ul><ul><li>Si x es mayor que cero entonces </li></ul><ul><li>Ejecutar 2a </li></ul><ul><li>Si no </li></ul><ul><li>Si x es menor que cero entonces </li></ul><ul><li>Ejecutar 2c </li></ul><ul><li>Si no </li></ul><ul><li>Ejecutar 2b </li></ul><ul><li>fin si </li></ul><ul><li>fin si </li></ul><ul><li>Ejecutar 3 </li></ul><ul><li>fin </li></ul>
  56. 56. Combinación de operaciones básicas <ul><li>Ejemplo: levantarse en la mañana </li></ul>Inicio salir de la cama ducharse tomar desayuno si esta lloviendo entonces llevar la parca si no esta lloviendo pero hace frío llevar la chaqueta si no llevar un chaleco fin si tomar la mochila tomar la micro fin
  57. 57. Combinación de operaciones básicas <ul><li>Estructura de selección múltiple </li></ul><ul><ul><li>Para algunos casos se puede utilizar un esquema selectivo no binario (EN EL CASO DE) </li></ul></ul><ul><ul><li>Ejemplo: ingreso de opción de menú de un cajero automático </li></ul></ul><ul><ul><ul><li>Si el usuario presionó el botón 1, hacer un giro </li></ul></ul></ul><ul><ul><ul><li>Si el usuario presionó el botón 2, entregar saldo </li></ul></ul></ul><ul><ul><ul><li>Si el usuario presionó el botón 3, cambiar la clave </li></ul></ul></ul><ul><ul><ul><li>Etc. </li></ul></ul></ul>
  58. 58. Combinación de operaciones básicas Botón giro saldo clave error 1 3 2 … etoc salir
  59. 59. Combinación de operaciones básicas giro clave saldo error Botón 1 2 3 etoc salir …
  60. 60. Combinación de operaciones básicas <ul><li>Inicio </li></ul><ul><li>en el caso que el botón presionado </li></ul><ul><li>sea el 1 </li></ul><ul><li>hacer giro </li></ul><ul><li>sea el 2 </li></ul><ul><li>entregar saldo </li></ul><ul><li>sea el 3 </li></ul><ul><li>cambiar clave </li></ul><ul><li>… </li></ul><ul><li>En cualquier otro caso </li></ul><ul><li>Error </li></ul><ul><li>fin caso </li></ul><ul><li>fin </li></ul>
  61. 61. Combinación de operaciones básicas <ul><li>Repetitiva </li></ul><ul><ul><li>Además de combinar operaciones en forma secuencial y selectiva, se puede repetir la ejecución de una operación cuantas veces se desee. </li></ul></ul><ul><ul><li>Existen varios esquemas </li></ul></ul><ul><ul><ul><li>Repetir MIENTRAS se cumpla una condición. </li></ul></ul></ul><ul><ul><ul><li>Repetir HASTA QUE se cumpla una condición. </li></ul></ul></ul><ul><ul><ul><li>Repetir un número de veces. </li></ul></ul></ul>
  62. 62. Combinación de operaciones básicas <ul><li>MIENTRAS </li></ul><ul><ul><li>Se repite una operación mientras una condición sea verdadera. </li></ul></ul><ul><ul><li>Al dejar de serlo, se rompe el ciclo </li></ul></ul><ul><ul><li>Si la condición nunca es falsa, se tiene un ciclo infinito. </li></ul></ul>
  63. 63. Combinación de operaciones básicas C 2 1 3 C: Condición si no
  64. 64. Combinación de operaciones básicas 1 3 2 C C: Condición
  65. 65. Combinación de operaciones básicas <ul><li>Inicio </li></ul><ul><li>ejecutar 1 </li></ul><ul><li>mientras se cumpla la condición </li></ul><ul><li>ejecutar 2 </li></ul><ul><li>fin mientras </li></ul><ul><li>ejecutar 3 </li></ul><ul><li>fin </li></ul>
  66. 66. Combinación de operaciones básicas <ul><li>Ejemplo validar ingreso de valor positivo </li></ul>Inicio definir variable x asignar el valor -1 a x mientras x sea menor que cero ingresar x por teclado fin mientras mostrar valor de x fin
  67. 67. Combinación de operaciones básicas <ul><li>HASTA QUE </li></ul><ul><ul><li>Se repite la ejecución de una operación hasta que se cumpla una condición. </li></ul></ul><ul><ul><li>La principal diferencia con MIENTRAS es que la operación se ejecuta al menos una vez. </li></ul></ul>
  68. 68. Combinación de operaciones básicas C 2 1 3 C: Condición si no
  69. 69. Combinación de operaciones básicas 1 3 2 C C: Condición
  70. 70. Combinación de operaciones básicas Inicio ejecutar 1 repetir ejecutar 2 hasta que se cumpla condición ejecutar 3 fin
  71. 71. Combinación de operaciones básicas <ul><li>Ejemplo </li></ul><ul><ul><li>Mismo ejemplo anterior </li></ul></ul>Inicio definir variable x repetir ingresar x por teclado Hasta que x sea mayor que cero mostrar valor de x fin
  72. 72. Combinación de operaciones básicas <ul><li>Repetir un número fijo de veces </li></ul><ul><ul><li>Muy útil cuando se sabe el numero de repeticiones a ejecutar. </li></ul></ul><ul><ul><li>Por lo general se define una variable que sirve de contador </li></ul></ul><ul><ul><li>El contador mantiene el número de cada iteración. </li></ul></ul><ul><ul><li>También se puede definir el incremento del contador en cada iteración. </li></ul></ul>
  73. 73. Combinación de operaciones básicas Inicio contador, fin contador 2 3 1
  74. 74. Combinación de operaciones básicas 1 3 2 Inicio contador, fin contador
  75. 75. Combinación de operaciones básicas Inicio ejecutar 1 desde contador inicial hasta contador final ejecutar 2 fin desde ejecutar 3 fin
  76. 76. Combinación de operaciones básicas <ul><li>Ejemplo </li></ul>Inicio definir variable “sumatoria” asignar el valor 0 a “sumatoria” desde i igual a 0 hasta i igual a 5 sumatoria = sumatoria + i fin desde mostrar valor de “sumatoria” fin
  77. 77. Combinación de operaciones básicas <ul><li>Combinación de estructuras de control seriales, selectivas y repetitivas </li></ul><ul><ul><li>Cualquier combinación es posible </li></ul></ul><ul><ul><li>Pueden existir estructuras anidadas </li></ul></ul><ul><ul><li>Es importante definir el comienzo y el termino de cada estructura </li></ul></ul>
  78. 78. Combinación de operaciones básicas <ul><li>Ejemplos </li></ul><ul><ul><li>Cachi-pun </li></ul></ul><ul><ul><li>Ordenar objetos </li></ul></ul>
  79. 79. Fin tema 1 Algoritmos
  1. A particular slide catching your eye?

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

×