tarea 6
TRANSCRIPT
![Page 1: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/1.jpg)
ESTRUCTURA FUNDAMENTAL
DE ALGORITMOS
![Page 2: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/2.jpg)
Tema 1Algoritmos
![Page 3: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/3.jpg)
Algoritmos
¿Que es un algoritmo?› “Una lista de instrucciones donde se
especifica una sucesión de operaciones necesarias para resolver cualquier problema de un tipo dado”.
› Ejemplo sumar dos números
![Page 4: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/4.jpg)
5. Ejemplos de algoritmos secuenciales
Ejemplo1: Desarrolle un algoritmo que calcule e imprima el doble de un número.
INICIOLEER NUM
DOBLE=NUM*2IMPRIMIR DOBLE
FIN
![Page 5: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/5.jpg)
Todo algoritmo empieza con INICIO, luego van los datos de entrada (con la palabra LEA y las variables), en este caso sólo es una variable llamada NUM que representa el número al cual se le va a sacar el DOBLE. Luego en el proceso se aplica la teoría del doble de un valor (se multiplica * 2). Finalmente se ponen los datos de salida con la palabra IMPRIMIR. Recuerde que termina con la palabra FIN.
![Page 6: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/6.jpg)
Algoritmos
![Page 7: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/7.jpg)
Algoritmos
1. 5+1=62. Anotar 63. 2+9=114. Anotar 1 y guardar
15. 4+0=46. 4+1=57. Anotar 58. El resultado es 516
491+ 25
516
![Page 8: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/8.jpg)
Algoritmos
+
V V V
V F F
F V F
F F F
V+ F
F
![Page 9: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/9.jpg)
Algoritmos
san+ sano
sansano
![Page 10: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/10.jpg)
Algoritmos
Sirven para resolver un tipo de problema especifico.
Son secuencias de pasos concretos. Requiere la definición de la entrada y la
salida. Adecuados para ser ejecutados por un
computador
![Page 11: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/11.jpg)
Algoritmos
¿Qué tiene que ver con la programación?› La programación consiste en crear
programas de computador que resuelvan problemas específicos.
› Un programa de computador es la implementación de un algoritmo.
![Page 12: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/12.jpg)
Algoritmos
¿Qué es un programa de computador?› Es una secuencia de pasos a ejecutar› Los pasos están descritos en un lenguaje
especial.› Este lenguaje se puede traducir al lenguaje
del computador.› Por lo general es un archivo de texto.› El texto escrito en dicho lenguaje se
denomina el código del programa.
![Page 13: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/13.jpg)
Descripción de un algoritmo
Es necesario contar con formas de expresar algoritmos› Diseño del algoritmo antes de codificar› Diseño del algoritmo de manera independiente
del lenguaje de programación Diferentes alternativas
› Pseudo - código› Diagramas de flujo› Diagramas de Nassi-Schneidermann
![Page 14: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/14.jpg)
Descripción de un algoritmo
Pseudo – código› El algoritmo se expresa en lenguaje
natural› Expresa de manera genérica los pasos del
algoritmo› No provee detalles de la implementación
particular del código final
![Page 15: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/15.jpg)
Descripción de un algoritmo
Diagramas de flujo› Presentan el algoritmo de manera gráfica.› De gran utilidad para seguir la “ruta” de un
algoritmo.› Aplicables a muchas otras disciplinas.
![Page 16: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/16.jpg)
Descripción de un algoritmo
Diagrama de Nassi-Schneidermann› También se denominan diagramas de caja.› Menos usado que el diagrama de flujo› Mas ordenado› Ocupa mucho espacio para representar
algoritmos complejos.
![Page 17: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/17.jpg)
Construcción de un algoritmo
1. Definir el problema a resolver2. Identificar las entradas del algoritmo3. Identificar la salida del algoritmo4. Definir los pasos a seguir para convertir
las entradas en la salida5. Seguir los pasos y comprobar que el
algoritmo sea correcto analizando la salida.
6. Revisar los pasos y hacer las correcciones.
7. Resolver el problema.
![Page 18: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/18.jpg)
Construcción de un algoritmo
Construcción de un programa1. Definir el problema a resolver2. Definir el algoritmo que lo resuelve3. Escribir el programa
Escribir cada uno de los pasos del algoritmo en el lenguaje de programación
4. Ejecutar el programa en el computador5. Verificar que las salidas sean correctas6. Hacer correcciones al programa7. Resolver el problema
![Page 19: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/19.jpg)
Construcción de un algoritmo
Ejemplo:› Objetivo: Calcular el precio de una
manzana › Entradas
Precio (en pesos) del kilo de manzanas [K] Peso (en gramos) promedio de una
manzana[P]› Salida
Precio (en pesos) de una manzana [M]
![Page 20: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/20.jpg)
Construcción de un algoritmo
InicioIngresar valor de K y P
Calcular G = K/100
Calcular M = G x P
Devolver el valor de M
Fin.
![Page 21: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/21.jpg)
Construcción de un algoritmo
G=K/1000
M=G x P
Ingresar K y P
Devolver M
![Page 22: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/22.jpg)
Construcción de un algoritmo
G=K/1000
M=G x P
Ingresar K y P
Devolver M
![Page 23: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/23.jpg)
IWI-131 - Tema 1 Algoritmos
Construcción de un algoritmo
Operaciones básicas› Entrada de datos› Salida de datos› Utilización de variables› Utilización de constantes› Aplicación de operadores› Asignación de valores
Combinación de operaciones básicas› Secuencial› Selectiva› Repetitiva
![Page 24: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/24.jpg)
Entrada de datos
Los algoritmos son para solucionar tipos de problemas
Es imprescindible poder entregar entradas distintas en cada ejecución
La entrada de datos se realiza mediante algún dispositivo
![Page 25: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/25.jpg)
Entrada de datos
Dispositivos de entrada› Teclado› Mouse› Botones› Censores de tacto› Cámaras digitales› Scanners› Archivos
![Page 26: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/26.jpg)
Entrada de datos
![Page 27: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/27.jpg)
Entrada de datos
Cada dispositivo tiene distintas características.
Por lo general, sirven para cosas distintas
Los sistemas definen un dispositivo de entrada por defecto› Este dispositivo se denomina la entrada
estándar.› En un computador suele ser el teclado.
![Page 28: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/28.jpg)
Salida de datos
De nada sirve implementar un algoritmo si no podemos saber su resultado.
Al finalizar el algoritmo (o durante), es imprescindible obtener la información resultante de su ejecución.
La salida de datos se realiza mediante dispositivos.
![Page 29: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/29.jpg)
Salida de datos
Dispositivos de salida› Pantalla› Impresora› Parlantes› Tableros luminosos› Motores› Tarjeta de red› Archivos
![Page 30: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/30.jpg)
Salida de datos
C:\
![Page 31: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/31.jpg)
Asignación de valores
M=G * P
Operador de asignación
El resultado de GxP se asigna a la variable M
![Page 32: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/32.jpg)
Combinación de operaciones básicas
Secuencial› Un conjunto de operaciones básicas
pueden ser ejecutadas en forma secuencial.
› Una operación no inicia hasta que la anterior termina
![Page 33: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/33.jpg)
Combinación de operaciones básicas
C
3
4
2
1
C: Condición
![Page 34: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/34.jpg)
Combinación de operaciones básicas
3
si no
4
2
1
C
C: Condición
![Page 35: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/35.jpg)
Combinación de operaciones básicas
InicioEjecutar 1Ejecutar 2si se cumple C entonces
Ejecutar 3fin siEjecutar 4
fin
![Page 36: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/36.jpg)
Combinación de operaciones básicas
Ejemplo: levantarse en la mañana
Iniciosalir de la camaducharsetomar desayunosi esta lloviendo entonces
tomar el paraguasfin sitomar la mochilatomar la micro
fin
![Page 37: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/37.jpg)
Combinación de operaciones básicas
Estructura de control selectiva› Una condición es cualquier proposición
lógica que tenga un valor verdadero o falso definido.
› Este esquema selectivo se denomina “decision binaria”.
› ¿Y si hay más de dos opciones?
![Page 38: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/38.jpg)
Combinación de operaciones básicas
2a 2b 2c
3
1
x?x mayor que 0
x igual a 0
x menor que 0
![Page 39: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/39.jpg)
Combinación de operaciones básicas
1
3
2a
x mayor que 0?
x menor que 0?
2b 2c
si
sino
no
![Page 40: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/40.jpg)
Combinación de operaciones básicas
Ejemplo: levantarse en la mañanaInicio
salir de la camaducharsetomar desayunosi esta lloviendo entonces
llevar la parcasi no esta lloviendo pero hace frío
llevar la chaquetasi no
llevar un chalecofin sitomar la mochilatomar la micro
fin
![Page 41: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/41.jpg)
Combinación de operaciones básicas
Estructura de selección múltiple› Para algunos casos se puede utilizar un
esquema selectivo no binario (EN EL CASO DE)› Ejemplo: ingreso de opción de menú de un
cajero automático Si el usuario presionó el botón 1, hacer un giro Si el usuario presionó el botón 2, entregar saldo Si el usuario presionó el botón 3, cambiar la clave Etc.
![Page 42: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/42.jpg)
Combinación de operaciones básicas
Botón
giro saldo clave error
1 32
…
etoc
salir
![Page 43: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/43.jpg)
Combinación de operaciones básicas
giro clavesaldo error
Botón
1 2 3 etoc
salir
…
![Page 44: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/44.jpg)
Combinación de operaciones básicas
Inicioen el caso que el botón presionado
sea el 1hacer giro
sea el 2entregar saldo
sea el 3cambiar clave
…En cualquier otro caso
Errorfin caso
fin
![Page 45: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/45.jpg)
Combinación de operaciones básicas
C
2
1
3
C: Condición
si
no
![Page 46: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/46.jpg)
Combinación de operaciones básicas
1
3
2
C
C: Condición
![Page 47: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/47.jpg)
Combinación de operaciones básicas
Inicioejecutar 1mientras se cumpla la condición
ejecutar 2fin mientrasejecutar 3
fin
![Page 48: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/48.jpg)
Combinación de operaciones básicas
HASTA QUE› Se repite la ejecución de una operación
hasta que se cumpla una condición.› La principal diferencia con MIENTRAS es
que la operación se ejecuta al menos una vez.
![Page 49: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/49.jpg)
Combinación de operaciones básicas
C
2
1
3
C: Condición
si
no
![Page 50: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/50.jpg)
Combinación de operaciones básicas
Inicioejecutar 1repetir
ejecutar 2hasta que se cumpla condiciónejecutar 3
fin
![Page 51: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/51.jpg)
Combinación de operaciones básicas
Repetir un número fijo de veces› Muy útil cuando se sabe el numero de
repeticiones a ejecutar.› Por lo general se define una variable que
sirve de contador› El contador mantiene el número de cada
iteración.› También se puede definir el incremento del
contador en cada iteración.
![Page 52: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/52.jpg)
Combinación de operaciones básicas
Inicio contador, fin contador
2
3
1
![Page 53: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/53.jpg)
Asignación de información
Asignación Interna.
Actualización
Asignación Externa.
![Page 54: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/54.jpg)
Combinación de operaciones básicas
Inicioejecutar 1desde contador inicial hasta contador final
ejecutar 2fin desdeejecutar 3
fin
![Page 55: Tarea 6](https://reader036.vdocumento.com/reader036/viewer/2022062514/5593673c1a28aba62d8b4648/html5/thumbnails/55.jpg)
GRACIAS