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
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
491
+ 25
516
Algoritmos
V
+ F
F
+
V
Algoritmos
san
+ sano
sansano
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
Algoritmos
Algoritmos
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.
Descripcin de un
algoritmo
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
Construccin de un
algoritmo
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
4.
5.
6.
7.
Construccin de un
algoritmo
Ejemplo:
Objetivo: Calcular el rea de un triangulo
Entradas
Salida
AREA [AREA]
Construccin de un
algoritmo
Inicio
Ingresar valor de BASE y ALTURA
Calcular AREA = (BASE * ALTURA)/2
IMPRIMIR el valor de AREA
Fin.
Construccin de un
algoritmo
Ingresar K y P
G=K/1000
M=G x P
Devolver M
Construccin de un
algoritmo
Ingresar K y P
G=K/1000
M=G x P
Devolver M
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
Entrada de datos
Dispositivos de entrada
Teclado
Mouse
Botones
Censores de tacto
Cmaras digitales
Scanners
Archivos
Entrada de datos
Entrada de datos
Salida de datos
Salida de datos
Dispositivos de salida
Pantalla
Impresora
Parlantes
Tableros luminosos
Motores
Tarjeta de red
Archivos
Salida de datos
C:\
Salida de datos
Utilizacin de
variables
Utilizacin de
variables
G=K/1000
Utilizacin de
variables
Utilizacin de
constantes
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
Aplicacin de
operadores
operandos
M=G * P
operador
Asignacin de valores
Asignacin de valores
Operador de asignacin
M=G * P
Combinacin de operaciones
bsicas
Secuencial
Un conjunto de operaciones bsicas pueden ser
ejecutadas en forma secuencial.
Una operacin no inicia hasta que la anterior
termina
Combinacin de operaciones
bsicas
Diagrama de flujo
Diagrama de Nassi-Schneidermann
Ingresar K y P
Ingresar K y P
G=K/1000
M=G * P
G=K/1000
M=G * P
Devolver M
Devolver M
IWI-131 - Tema 1 Algoritmos
M tiene el valor 50
Combinacin de operaciones
bsicas
Selectiva
Un algoritmo puede optar por ejecutar o no una
operacin (SI ENTONCES).
Un algoritmo puede optar por ejecutar una u
otra operacin (SI-ENTONCES-SINO).
Esta decisin se basa en un condicin.
Esta decisin controla el flujo del algoritmo.
Por esto, se denomina una estructura de
control.
IWI-131 - Tema 1 Algoritmos
Combinacin de operaciones
bsicas
1
2
C
3
4
IWI-131 - Tema 1 Algoritmos
C: Condicin
Combinacin de operaciones
bsicas
1
2
C
si
no
3
4
IWI-131 - Tema 1 Algoritmos
C: Condicin
Combinacin de operaciones
bsicas
Inicio
Ejecutar 1
Ejecutar 2
si se cumple C entonces
Ejecutar 3
fin si
Ejecutar 4
fin
IWI-131 - Tema 1 Algoritmos
Combinacin de operaciones
bsicas
Combinacin de operaciones
bsicas
1
2
si
3a
no
3b
C: Condicin
Combinacin de operaciones
bsicas
1
2
C
si
no
3a
3b
4
IWI-131 - Tema 1 Algoritmos
C: Condicin
Combinacin de operaciones
bsicas
Inicio
Ejecutar 1
Ejecutar 2
si se cumple C entonces
Ejecutar 3a
si no
Ejecutar 3b
fin si
Ejecutar 4
fin
IWI-131 - Tema 1 Algoritmos
Combinacin de operaciones
bsicas
Combinacin de operaciones
bsicas
Combinacin de operaciones
bsicas
Combinacin de operaciones
bsicas
x mayor que 0
x?
x menor que 0
x igual a 0
2a
2b
2c
Combinacin de operaciones
bsicas
1
si
x mayor que 0?
x menor que 0?
no
2a
no
2b
3
si
2c
Combinacin de operaciones
bsicas
1
x mayor que 0?
si
x menor que 0?
no
2a
no
2b
3
IWI-131 - Tema 1 Algoritmos
si
2c
Combinacin de operaciones
bsicas
Inicio
Ejecutar 1
Si x es mayor que cero entonces
Ejecutar 2a
Si no
Si x es menor que cero entonces
Ejecutar 2c
Si no
Ejecutar 2b
fin si
fin si
Ejecutar 3
fin
IWI-131 - Tema 1 Algoritmos
Combinacin de operaciones
bsicas
Inicio
salir de la cama
ducharse
tomar desayuno
si esta lloviendo entonces
llevar la parca
si no esta lloviendo pero hace fro
llevar la chaqueta
si no
llevar un chaleco
fin si
tomar la mochila
tomar la micro IWI-131 - Tema 1 Algoritmos
fin
Combinacin de operaciones
bsicas
Combinacin de operaciones
bsicas
Botn
1
giro
saldo
clave
etoc
salir
IWI-131 - Tema 1 Algoritmos
error
Combinacin de operaciones
bsicas
giro
saldo
Botn
etoc
clave
salir
IWI-131 - Tema 1 Algoritmos
error
Combinacin de operaciones
bsicas
Inicio
en el caso que el botn presionado
sea el 1
hacer giro
sea el 2
entregar saldo
sea el 3
cambiar clave
Combinacin de operaciones
bsicas
Repetitiva
Adems de combinar operaciones en forma
secuencial y selectiva, se puede repetir la
ejecucin de una operacin cuantas veces se
desee.
Existen varios esquemas
Combinacin de operaciones
bsicas
MIENTRAS
Se repite una operacin mientras una condicin
sea verdadera.
Al dejar de serlo, se rompe el ciclo
Si la condicin nunca es falsa, se tiene un ciclo
infinito.
Combinacin de operaciones
bsicas
no
si
2
3
IWI-131 - Tema 1 Algoritmos
C: Condicin
Combinacin de operaciones
bsicas
3
IWI-131 - Tema 1 Algoritmos
C: Condicin
Combinacin de operaciones
bsicas
Inicio
ejecutar 1
mientras se cumpla la condicin
ejecutar 2
fin mientras
ejecutar 3
fin
IWI-131 - Tema 1 Algoritmos
Combinacin de operaciones
bsicas
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
IWI-131 - Tema 1 Algoritmos
Combinacin de operaciones
bsicas
HASTA QUE
Se repite la ejecucin de una operacin hasta
que se cumpla una condicin.
La principal diferencia con MIENTRAS es que la
operacin se ejecuta al menos una vez.
Combinacin de operaciones
bsicas
1
2
no
C
si
3
C: Condicin
Combinacin de operaciones
bsicas
C
3
IWI-131 - Tema 1 Algoritmos
C: Condicin
Combinacin de operaciones
bsicas
Inicio
ejecutar 1
repetir
ejecutar 2
hasta que se cumpla condicin
ejecutar 3
fin
IWI-131 - Tema 1 Algoritmos
Combinacin de operaciones
bsicas
Ejemplo
Combinacin de operaciones
bsicas
Combinacin de operaciones
bsicas
3
IWI-131 - Tema 1 Algoritmos
Combinacin de operaciones
bsicas
3
IWI-131 - Tema 1 Algoritmos
Combinacin de operaciones
bsicas
Inicio
ejecutar 1
desde contador inicial hasta
contador final
ejecutar 2
fin desde
ejecutar 3
fin
IWI-131 - Tema 1 Algoritmos
Combinacin de operaciones
bsicas
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
Combinacin de operaciones
bsicas
Combinacin de operaciones
bsicas
Ejemplos
Cachi-pun
Ordenar objetos
Algoritmos