Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Área: NEGOCIOS
Introducción ......................................................................................................................................................... 1
1. Diseño de algoritmos y diagramas de flujo ...................................................................................................... 2
1.1. Partes y propiedades de un algoritmo ....................................................................................................................... 2
1.1.1. Partes de un algoritmo ........................................................................................................................................ 2
1.1.2. Propiedades de un algoritmo .............................................................................................................................. 3
1.2. Estructura de un algoritmo ......................................................................................................................................... 3
1.3. Representación de algoritmos usando diagramas de flujo ........................................................................................ 4
2. Árboles de decisión........................................................................................................................................... 8
2.1. Árboles de decisión..................................................................................................................................................... 8
2.2. Problemas simples de decisión ................................................................................................................................. 10
Cierre .................................................................................................................................................................. 17
Área: NEGOCIOS M3
Curso: PENSAMIENTO ALGORÍTMICO
Diseño de algoritmos,
diagramas de flujo y árboles
de decisión
Diseño de
algoritmos y Árboles de decisión
diagramas de flujo
Propiedades y
partes de un Árboles de decisión
algoritmo
Representación de
algoritmos usando
diagramas de flujo
Área: NEGOCIOS M3
Curso: PENSAMIENTO ALGORÍTMICO Pág. 1
Introducción
En los módulos previos conocimos los distintos tipos de datos como enteros, reales, caracteres, de cadena y
lógicos y también pudimos construir expresiones con estos tipos de datos en base a operadores aritméticos y
lógicos de tal forma de poder construir una asignación a una variable en base a una combinación de
expresiones. Con toda esta base como conocimiento adquirido, nos corresponde avanzar hacia la construcción
de diagramas de flujo para el desarrollo de los algoritmos con el fin de poder elaborar la secuencia de pasos,
comenzando por un inicio de proceso, declarar las variables y sus tipos de datos, inicializar las variables y
contadores, ingresar los datos de entrada, comenzar con el proceso mismo del algoritmo, en base a
asignaciones de variables, mediante expresiones hasta finalmente, entregar uno o varios resultados
dependiendo de los requerimientos de la solución y poner término al proceso.
Dónde:
a. Entrada
Corresponde al insumo, a los datos necesarios que requiere el proceso para ofrecer los resultados esperados.
b. Proceso
Son los pasos necesarios para obtener la solución del problema o la situación planteada.
c. Salida
Son los resultados arrojados por el proceso como solución.
Por ejemplo, si vemos el caso de un algoritmo que realiza la sumatoria de los dos números que se ingresan, se
tiene:
EJEMPLO
Entrada
Valores de las variables A y B que se ingresan.
Proceso
Asignar a la variable Suma, el valor de A más el valor de B.
Salida
Resulta la impresión del valor de la variable Suma, que contiene la sumatoria de los valores de A y B.
Área: NEGOCIOS M3
Curso: PENSAMIENTO ALGORÍTMICO Pág. 3
El algoritmo en pseudocódigo debe tener una estructura muy clara y similar a un programa, de modo que
se facilite al máximo su posterior codificación. Interesa por tanto conocer las secciones en las que se divide
un programa, que habitualmente son:
a. La cabecera.
b. El cuerpo del programa:
— Bloque de declaraciones.
— Bloque de instrucciones.
La cabecera contiene el nombre del programa. El cuerpo del programa contiene a su vez otras dos partes: el
bloque de declaraciones y el bloque de instrucciones. En el bloque de declaraciones se definen o declaran las
constantes con nombre, los tipos de datos definidos por el usuario y también las variables. Suele ser
conveniente seguir este orden. La declaración de tipos suele realizarse en base a los tipos estándar o a otros
definidos previamente, aunque también hay que considerar el método directo de enumeración de los valores
constituyentes. El bloque de instrucciones contiene las acciones a ejecutar para la obtención de los resultados.
Las instrucciones o acciones básicas a colocar en este bloque se podrían clasificar del siguiente modo:
a. De inicio/fin. La primera instrucción de este bloque será siempre la de inicio y la última la de fin.
b. De asignación. Esta instrucción se utiliza para dar valor a una variable en el interior de un programa.
c. De lectura. Toma uno o varios valores desde un dispositivo de entrada y los almacena en memoria en
las variables que aparecen listadas en la propia instrucción.
d. De escritura. Envía datos a un dispositivo de salida.
e. De bifurcación. Estas instrucciones no realizan trabajo efectivo alguno, pero permiten controlar el que
se ejecuten o no otras instrucciones, así como alterar el orden en el que las acciones son ejecutadas.
Las bifurcaciones en el flujo de un programa se realizarán de modo condicional, esto es en función del
resultado de la evaluación de una condición. El desarrollo lineal de un programa se interrumpe con
este tipo de instrucciones y, según el punto a donde se bifurca, podremos clasificarlas en bifurcaciones
hacia adelante o hacia atrás. Las representaremos mediante estructuras selectivas o repetitivas.
Área: NEGOCIOS M3
Curso: PENSAMIENTO ALGORÍTMICO Pág. 4
1
Fuente: Adaptado de Joyanes 2005.
Área: NEGOCIOS M3
Curso: PENSAMIENTO ALGORÍTMICO Pág. 5
Figura 1.
Veamos ahora un ejemplo de cómo construir un diagrama de flujo para el caso de un viaje donde nos
interesa calcular el tiempo de viaje, en función de la distancia y de la velocidad promedio de viaje.
En este caso podemos apreciar en el diagrama de flujo de la Figura 2:
• Dos símbolos de terminal que representan el inicio y fin del proceso viaje
• Un símbolo de proceso donde se asigna a la variable tiempo el resultado de dividir la distancia por la
velocidad
• Cinco símbolos de entrada/salida donde hay dos de entrada que aparecen de color violeta, que
corresponden al ingreso de los datos de distancia (dist) y velocidad (vel) y tres de salida que aparecen en
color verde, de los cuales se registran los dos mensajes del ingreso de los datos de distancia y velocidad y
el registro final con el cálculo o resultado del tiempo de viaje.
Área: NEGOCIOS M3
Curso: PENSAMIENTO ALGORÍTMICO Pág. 6
Figura 2.
Obsérvese además que el diagrama de flujo en base a su estructura, tiene una cierta secuencia de pasos donde
hay unos que se realizan antes y otros después. Fácilmente podemos llevar del plano del diagrama de flujo a
la escritura del algoritmo:
Podemos ver también otro ejemplo donde interesa calcular la superficie de un terreno en base a los datos
proporcionados por el usuario (ancho y largo) y dependiendo de su elección, el algoritmo entregue el resultado
expresado en unidades de Hectárea o metro cuadrado.
2
Fuente: Elaboración propia a partir de PSeInt.
Área: NEGOCIOS M3
Curso: PENSAMIENTO ALGORÍTMICO Pág. 7
Figura 3.
3
Fuente: Elaboración propia a partir de PSeInt.
Área: NEGOCIOS M3
Curso: PENSAMIENTO ALGORÍTMICO Pág. 8
Un árbol de decisión, por lo general, comienza con un único nodo y luego se ramifica en resultados posibles.
Cada uno de esos resultados crea nodos adicionales, que se ramifican en otras posibilidades. Esto le da una
forma similar a la de un árbol.
Hay tres tipos diferentes de nodos: nodos de probabilidad, nodos de decisión y nodos terminales. Un nodo de
probabilidad, representado con un círculo, muestra las probabilidades de ciertos resultados. Un nodo de
decisión, representado con un cuadrado, muestra una decisión que se tomará, y un nodo terminal muestra el
resultado definitivo de una ruta de decisión.
La estructura de un árbol de decisión (ver Figura 4) según indica Lucidchart.com (2017) consta de los siguientes
elementos:
4
Fuente: Lucidchart.com
Área: NEGOCIOS M3
Curso: PENSAMIENTO ALGORÍTMICO Pág. 9
Figura 4.
Los árboles de decisión se utilizan bastante en los modelos de minería de datos o exploración de datos
especialmente cuando se debe evaluar distintas alternativas y son ampliamente utilizados en sectores como el
bancario y las compañías aseguradoras para tomar decisiones respecto a la concesión de créditos o el cálculo
de las pólizas, respectivamente, dado que permiten determinar qué características relativas a los usuarios son
las que comportan mayor o menor riesgo, siendo posible segmentar a los usuarios en función de dichas
características.
Un árbol de decisión es una secuencia de condiciones que son interrogadas con respecto a los datos de entrada,
tomando una decisión parcial que lleva hacia una rama u otra, repitiendo este proceso hasta llegar a una hoja
donde se toma una decisión final.
Para poder explicar con una situación real, citaremos un ejemplo de Gironés (2017) donde
explica que:
Por ejemplo, en el hundimiento del Titanic, mostrado en la Figura 2.2, de las 2201 personas a bordo solamente
sobrevivieron 711 (un 32,3 %). Si se tuviera que tomar una decisión sobre todos los embarcados, esta sería “no
sobrevivieron”, dado que es correcta en el 67,7 % de los casos. Pero si analizamos la supervivencia con respecto
a otras variables disponibles, la primera condición es el sexo, dado que las mujeres a bordo del Titanic (344 de
470, un 73,2 %) sobrevivieron en mayor proporción que los hombres (367 de 1731, un 21,2 %). Esto genera
una partición del conjunto de entrada en dos conjuntos disjuntos; tras la primera condición (el nodo raíz), por
una rama del árbol solo quedarán hombres y por la otra, mujeres. La decisión con respecto a las mujeres sería
“sobrevivieron”, dado que lo hicieron en un 73,2 %. En cambio, en el caso de los hombres, la decisión sería “no
sobrevivieron”, la cual sería cierta en un 78,8 % de los casos. Se puede observar que la precisión de la predicción
ha aumentado para ambas hojas con respecto a la primera predicción. Esto siempre sucede al menos para una
hoja, dado que el procedimiento seguido intenta mejorar la predicción anterior. De la misma manera, en el
Área: NEGOCIOS M3
Curso: PENSAMIENTO ALGORÍTMICO Pág. 10
n = 2201
1490 / 711 1
67,7% / 32,3%
sexo
hombres mujeres
1731 470
1364 / 367 2 126 / 344 3
78,8% / 21,2% 26,8% / 73,2%
edad clase
4 5 6 7
64 1667 274 196
35 / 29 1329 / 338 254 / 20 90 / 106
54,7% / 45,3% 79,7% / 20,3% 92,7% / 7,3% 45,9% / 54,1%
Figura 5.
5
Fuente: Gironés (2017)
Área: NEGOCIOS M3
Curso: PENSAMIENTO ALGORÍTMICO Pág. 11
De esta forma la primera decisión consiste en construir una instalación pequeña o grande (ver Figura 6). Si la
instalación es pequeña y la demanda es baja (con probabilidad de un 40%) no se hace nada y se obtiene
MM$200 de ganancia, sin embargo, si la instalación es pequeña y la demanda es alta (con probabilidad de un
60%), nos enfrentamos a una segunda decisión: expandirse (con ganancia estimada de MM$270) o no
expandirse (con ganancia estimada de MM$223).
Demanda baja
4 MM$ 200
40%
60%
5
Demanda alta
7 MM$ 223
no expandir
Demanda alta
8 MM$ 800
60%
No hacer nada
10 MM$ 40
3
Instalación grande
Respuesta moderada
40% 12 MM$ 20
9 30%
Demanda baja
publicidad 11
Figura 6
70%
13 MM$ 220
Respuesta considerable
6
Fuente: Elaboración propia.
Área: NEGOCIOS M3
Curso: PENSAMIENTO ALGORÍTMICO Pág. 12
La gerencia por tanto debe construir la instalación grande (ruta de color verde) con una ganancia esperada de
MM$544 (MM$544=MM$160*0,4+MM$800*0,6 y además MM$160=MM$20*0,3+MM$220*0,7).
Se debe notar que esta decisión sobre el tamaño de la instalación es la única que se toma ahora (ver Figura7).
Las decisiones siguientes se tomarán después de ver si la demanda es baja o alta.
Ev = MM$ 200
Demanda baja
4 MM$ 200
40%
Ev = MM$ 800
Demanda alta
8 MM$ 800
60%
Ev = MM$ 544
No hacer nada
10 MM$ 40
3
Instalación grande MM$ 20
Respuesta moderada
40% 1
9 30%
Demanda baja 2
Ev = MM$ 160 Ev = MM$ 20
Ev = MM$ 160
11
publicidad
MM$ 220
70%
Respuesta considerable 13
Figura 7. Ev = MM$ 220
7
Fuente: Elaboración propia.
Área: NEGOCIOS M3
Curso: PENSAMIENTO ALGORÍTMICO Pág. 13
Ejemplo
Una empresa compra la materia prima a dos proveedores A y B, cuya calidad se muestra en la Tabla Piezas y
probabilidades de proveedores siguiente:
1% 80% 40%
2% 10% 30%
3% 10% 30%
Los pedidos que realiza la empresa ascienden a 1.000 piezas. Una pieza defectuosa puede ser reparada por 1
dólar. Si bien tal y como indica la tabla la calidad del proveedor B es menor, éste está dispuesto a vender las
1.000 piezas por 10 dólares menos que el proveedor A.
Evaluar y tomar la decisión del proveedor que resulta más conveniente de utilizar.
Solución:
Paso 1 Paso 2
Vamos a enumerar las diferentes alternativas de Enumeraremos en la Tabla Porcentaje de Piezas
decisión: defectuosas de proveedores para cada una de las
Proveedor A alternativas de decisión, los estados de la
Proveedor B naturaleza asociados a la misma:
1% piezas
defectuosas
2% piezas
defectuosas
Proveedor
A
3% piezas
defectuosas
1% piezas
defectuosas
Proveedor
2% piezas
B
defectuosas
3% piezas
defectuosas
Figura 8.
Paso 4
Asignaremos las probabilidades a priori de cada uno de los estados de la naturaleza de acuerdo con los valores
del enunciado de la Tabla Piezas y probabilidades de proveedores, según se ilustra en la Figura 9:
1% piezas
defectuosas 80
2% piezas %
defectuosas 10
Proveedor %
A 10
3% piezas %
defectuosas
1% piezas
defectuosas 40
Proveedor %
2% piezas
B
defectuosas 30
%
Figura 9. 30
3% piezas %
defectuosas
8
Fuente: Elaboración propia.
9
Fuente: Elaboración propia.
Área: NEGOCIOS M3
Curso: PENSAMIENTO ALGORÍTMICO Pág. 15
El costo de cada rama se obtiene a partir del número de unidades defectuosas. Siendo los pedidos de 1.000
piezas, las unidades defectuosas serán:
Si cada pieza defectuosa puede ser reparada por 1 dólar, el costo de la reparación asciende a:
1% piezas defectuosas
80% 20
2% piezas defectuosas
10% 30
Proveedor A
10% 40
3% piezas defectuosas
1% piezas defectuosas
40% 10
Proveedor B
2% piezas defectuosas
30% 20
30% 30
3% piezas defectuosas
Figura 10.
En el caso del proveedor A el costo es 10 dólares superior al del proveedor B, tal y como indica el enunciado
del ejercicio.
10
Fuente: Elaboración propia.
Área: NEGOCIOS M3
Curso: PENSAMIENTO ALGORÍTMICO Pág. 16
1% piezas defectuosas
80% 20
23
2% piezas defectuosas
10% 30
Proveedor A
10% 40
19 3% piezas defectuosas
1% piezas defectuosas
40% 10
Proveedor B 19 2% piezas defectuosas
30% 20
30% 30
3% piezas defectuosas
Figura 11.
11
Fuente: Elaboración propia.
Área: NEGOCIOS M3
Curso: PENSAMIENTO ALGORÍTMICO Pág. 17
Hemos aprendido a desarrollar algoritmos en base a diagramas de flujos mediante el uso de símbolos
terminales de inicio/fin, de entrada/salida para leer y escribir, de proceso para realizar la asignación de
expresiones a una o más variables y de bloques de decisión para seguir una alternativa u otra de ejecución,
que nos permitirán pensar en modo algorítmico, siguiendo una metodología secuencial y estructurada para
poder contribuir al desarrollo de un programa basado en uno o más algoritmos.
Finalmente hemos aprendido que los árboles de decisión nos aportan en nuestras decisiones personales, de
emprendimiento o de innovación en una empresa, facilitando el análisis de varias alternativas a partir de un
tema principal realizando la evaluación de las distintas alternativas en base a la probabilidad de ocurrencia,
costos y beneficios.
Sin duda que los conceptos y ejemplos desarrollados en este módulo permitirán que el alumno disponga de las
herramientas base para lograr el aprendizaje de un pensamiento algorítmico aplicable a cualquier situación de
una empresa.
APORTE A TU FORMACIÓN
Con el aprendizaje logrado del diseño de algoritmos, diagramas de flujo y árboles de decisión permitirán al alumno
que pueda desempeñarse en la vida laboral realizando diseños de algoritmos mediante el uso efectivo de diagramas
de flujo y pseudocódigos para dar solución a cualquier problemática que ocurra en el negocio de una empresa, área
o gerencia funcional. Por otra parte, el alumno al momento de aprobar los aprendizajes esperados relacionados con
el análisis de árboles de decisión, estará capacitado para poder realizar una evaluación de una determinada solución
en base a diversas alternativas que tienen probabilidades de ocurrencia, costos y beneficios.