Professional Documents
Culture Documents
Algoritmos
Algoritmos
Que es un algoritmo?
Una lista de instrucciones donde se especifica una sucesin de operaciones necesarias para resolver cualquier problema de un tipo dado. Ejemplo sumar dos nmeros
Algoritmos
Algoritmos
491 + 25 516
1. 2. 3. 4. 5. 6. 7. 8.
5+1=6 Anotar 6 2+9=11 Anotar 1 y guardar 1 4+0=4 4+1=5 Anotar 5 El resultado es 516
Algoritmos
V + F F
+ V V F F V F V F V F F F
Algoritmos
Algoritmos
Entrada
Qu se necesita para realizar los pasos?
Salida
Que se obtiene al final del algoritmo?
Tipos de datos
Nmeros: enteros, reales, complejos Texto: letras, palabras, frases Otros
IWI-131 - Tema 1 Algoritmos
Algoritmos
Sirven para resolver un tipo de problema especifico. Son secuencias de pasos concretos. Requiere la definicin de la entrada y la salida. Adecuados para ser ejecutados por un computador
IWI-131 - Tema 1 Algoritmos
Algoritmos
Qu tiene que ver con la programacin?
La programacin consiste en crear programas de computador que resuelvan problemas especficos. Un programa de computador es la implementacin de un algoritmo.
Algoritmos
Qu es un programa de computador?
Es una secuencia de pasos a ejecutar Los pasos estn 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 cdigo del programa.
IWI-131 - Tema 1 Algoritmos
Descripcin de un algoritmo
Es necesario contar con formas de expresar algoritmos
Diseo del algoritmo antes de codificar Diseo del algoritmo de manera independiente del lenguaje de programacin
Diferentes alternativas
Pseudo - cdigo Diagramas de flujo Diagramas de Nassi-Schneidermann
IWI-131 - Tema 1 Algoritmos
Descripcin de un algoritmo
Pseudo cdigo
El algoritmo se expresa en lenguaje natural Expresa de manera genrica los pasos del algoritmo No provee detalles de la implementacin particular del cdigo final
Descripcin de un algoritmo
Diagramas de flujo
Presentan el algoritmo de manera grfica. De gran utilidad para seguir la ruta de un algoritmo. Aplicables a muchas otras disciplinas.
Descripcin de un algoritmo
Diagrama de Nassi-Schneidermann
Tambin se denominan diagramas de caja. Menos usado que el diagrama de flujo Mas ordenado Ocupa mucho espacio para representar algoritmos complejos.
Construccin de un algoritmo
1. 2. 3. 4. Definir el problema a resolver Identificar las entradas del algoritmo Identificar la salida del algoritmo Definir los pasos a seguir para convertir las entradas en la salida 5. 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.
IWI-131 - Tema 1 Algoritmos
Construccin de un algoritmo
Construccin de un programa
1. Definir el problema a resolver 2. Definir el algoritmo que lo resuelve 3. Escribir el programa
Escribir cada uno de los pasos del algoritmo en el lenguaje de programacin
4. 5. 6. 7.
Ejecutar el programa en el computador Verificar que las salidas sean correctas Hacer correcciones al programa Resolver el problema
IWI-131 - Tema 1 Algoritmos
Construccin 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]
Construccin 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.
IWI-131 - Tema 1 Algoritmos
Construccin de un algoritmo
Ingresar K y P G=K/1000 M=G x P Devolver M
Construccin de un algoritmo
Construccin de un algoritmo
Operaciones bsicas
Entrada de datos Salida de datos Utilizacin de variables Utilizacin de constantes Aplicacin de operadores Asignacin de valores
Entrada de datos
Los algoritmos son para solucionar tipos de problemas Es imprescindible poder entregar entradas distintas en cada ejecucin La entrada de datos se realiza mediante algn dispositivo
Entrada de datos
Dispositivos de entrada
Teclado Mouse Botones Censores de tacto Cmaras digitales Scanners Archivos
IWI-131 - Tema 1 Algoritmos
Entrada de datos
Entrada de datos
Cada dispositivo tiene distintas caractersticas. Por lo general, sirven para cosas distintas Los sistemas definen un dispositivo de entrada por defecto
Este dispositivo se denomina la entrada estndar. En un computador suele ser el teclado.
IWI-131 - Tema 1 Algoritmos
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 informacin resultante de su ejecucin. La salida de datos se realiza mediante dispositivos.
IWI-131 - Tema 1 Algoritmos
Salida de datos
Dispositivos de salida
Pantalla Impresora Parlantes Tableros luminosos Motores Tarjeta de red Archivos
IWI-131 - Tema 1 Algoritmos
Salida de datos
C:\
Salida de datos
Al igual que con la entrada, cada dispositivo tiene finalidades distintas. Los sistemas definen un dispositivo de salida por defecto
Este dispositivo se denomina la salida estndar. En un computador suele ser la pantalla.
IWI-131 - Tema 1 Algoritmos
Utilizacin de variables
Durante la ejecucin del algoritmo, es importante recordar los resultados parciales de cada paso. Estos resultados se etiquetan con un nombre. Al invocar con posterioridad ese nombre, recuperamos el resultados parcial.
IWI-131 - Tema 1 Algoritmos
Utilizacin de variables
K es un dato de entrada, y tambin Se considera una variable
G=K/1000
Utilizacin de variables
La principal caracterstica de una variable es que su valor puede cambiar en el tiempo. Usualmente se compara con una caja donde se puede almacenar una sola cosa. Por lo general, las variables se definen con un tipo de dato. El tipo de dato restringe que tipo de cosas se pueden guardar en las cajas.
IWI-131 - Tema 1 Algoritmos
Utilizacin de constantes
Adems de las variables, un algoritmo requiere de constantes. A diferencia de las variables, su valor no puede cambiar en el tiempo. Las constantes tambin pueden recibir nombres para mayor claridad.
Ej.: PI = 3.1415
IWI-131 - Tema 1 Algoritmos
Utilizacin de constantes
G=K/1000
La constante 1000 sirva para transformar el valor Por kilo a un valor por gramo
IWI-131 - Tema 1 Algoritmos
Aplicacin de operadores
Para obtener resultados, generalmente es necesario transformar las entradas en la salida. Para esto se aplican operadores de distinta ndole
Aritmticos ( + , - , * , / ) Lgicos (igual que, mayor que, menor que, y, o, no) Etc.
Los operadores requieren de operandos y entregan un resultado. Por lo general, los operadores son unarios o binarios.
IWI-131 - Tema 1 Algoritmos
Aplicacin de operadores
operandos
M=G * P operador
Asignacin de valores
El resultado de un operador se puede almacenar en una variable. Para esto se utiliza un tipo especial de operador. Este es el operador de asignacin. Solo se pueden asignar valores a variables, no a constantes
IWI-131 - Tema 1 Algoritmos
Asignacin de valores
Operador de asignacin
M=G * P
M tiene el valor 50
C 3
4
IWI-131 - Tema 1 Algoritmos
C: Condicin
C: Condicin
3a 4
3b
C: Condicin
C: Condicin
no 2a 2b
si
no si
3
IWI-131 - Tema 1 Algoritmos
error
salir
IWI-131 - Tema 1 Algoritmos
giro
saldo
clave
error
salir
IWI-131 - Tema 1 Algoritmos
C si 2
3
IWI-131 - Tema 1 Algoritmos
C: Condicin
3
IWI-131 - Tema 1 Algoritmos
C: Condicin
2 no
C si 3
C: Condicin
C 3
IWI-131 - Tema 1 Algoritmos
C: Condicin
3
IWI-131 - Tema 1 Algoritmos
3
IWI-131 - Tema 1 Algoritmos
Ejemplo
i
i !0
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
IWI-131 - Tema 1 Algoritmos
Fin tema 1
Algoritmos