Clase N° 3 - Algoritmo
Clase N° 3 - Algoritmo
2
PROGRAMACIÓN I
Resolución de problemas
En clases anteriores vimos la
importancia de plantear
requerimientos y tener claro el
problema a resolver para desarrollar
una solución de calidad. Luego de
plantear la teoría sobre la ingeniería
de software, nos compete comenzar
con los primeros pasos hacia la
implementación.
Desde un comienzo, sabemos que
estamos en la rama o ciencia de la
informática y solemos asociar este
término solo al hardware o
programas, pero en realidad la
definición de “informática” es la
siguiente:
3
PROGRAMACIÓN I
4
PROGRAMACIÓN I
De manera esquemática, la
computadora funciona de la siguiente
forma. Una serie infinita de pasos donde
se busca una instrucción (Mi), se
interpreta la instrucción (UC) y se
ejecuta la tarea, pudiendo ser por
medio de la ALU. Estas operaciones
pueden resultar en lectura/escritura de
la memoria de datos (Md) o e/s por los
periféricos.
5
PROGRAMACIÓN I
6
PROGRAMACIÓN I
7
PROGRAMACIÓN I
Algoritmo
Un algoritmo es un método para resolver un problema mediante una serie
de pasos precisos, definidos y finitos.
Las características de un algoritmo son las siguientes:
● Preciso: indica el orden de realización en cada paso.
8
PROGRAMACIÓN I
9
PROGRAMACIÓN I
10
PROGRAMACIÓN I
Secuenciación
La secuenciación es un algoritmo o parte del mismo donde las
instrucciones se ejecutan una a continuación de otra
Ejemplo en pseudocódigo:
Hacer una ensalada
Lavar verduras.
Cortar verduras.
Poner en el bowl.
Condimentar.
11
PROGRAMACIÓN I
Selección
Con esta estructura podemos seleccionar el sentido de la acción
involucrando la toma de decisiones, es decir, que vamos a evaluar las
condiciones que tenemos disponibles. Esta estructura ofrece tres tipos:
selección simple, selección doble y selección múltiple.
● Selección simple
En este caso debemos evaluar una condición y decidir si es
verdadera o es falsa. En el caso de que sea verdadera, se llevarán a
cabo una lista de instrucciones, de lo contrario se continúa con el
flujo.
Por ejemplo:
Se quiere ordenar una serie de libros en una biblioteca, si el estante
al cual pertenece un libro es muy alto se necesitará buscar una
escalera sino se continúa ordenando los libros.
Pseudocódigo
Agarrar libro
Ver tema del libro
Si (el estante es muy alto)
buscar escalera
fin si
ordenar libros
● Selección doble
12
PROGRAMACIÓN I
Pseudocódigo
Subir al auto
Encender el auto
Revisar la cantidad de nafta
Si (tanque lleno)
comenzar viaje
Viajar
13
PROGRAMACIÓN I
● Selección múltiple
Esta estructura se aplica en casos en los que se puede seleccionar
más de dos opciones. Para ello se evalúa el dato de entrada y
dependiendo del valor, se ejecutarán las instrucciones.
Repetición o iteración
A estas estructuras se las conoce como bucle, lazo o loop. Dependiendo
de la condición, el flujo del algoritmo se verá alterado porque una
instrucción necesita que se repita más de una vez. El cuerpo del bucle se
conforma de la siguiente forma:
➢ Expresión condicional: condición a evaluar para determinar
la ejecución del bucle.
14
PROGRAMACIÓN I
15
PROGRAMACIÓN I
● Estructura para
En este tipo de estructura, el número n de veces que se deben
ejecutar las acciones, es fijo y conocido de antemano.
Por ejemplo:
Necesito hacer 10 fotocopias de un trabajo para luego repartir a mis
compañeros y cuando termine de imprimir las guardaré en la
carpeta.
Pseudocódigo
Para (10 fotocopias)
agarrar trabajo
fotocopiar
fin para
Guardar en carpeta
16
PROGRAMACIÓN I
17
PROGRAMACIÓN I
Referencias bibliográficas:
18