Ejercicio: 1Eva_IT2011_T3 Calcular ventas por región
[ algoritmo ] [ diagrama flujo ]
Como referencia para la solución se usa el gráfico, o la animación
Solicitar la cantidad de vendedores a participar, registrar los montos vendidos por cada vendedor y sortearlas regiones asignadas.
También es posible hacer primero el sorteo y luego pedir los montos vendidos, pero dado que no se pide mostrar las asignaciones, el orden de los bloques no afecta el resultado.
Utilizar acumuladores para los montos de cada región. Mostrar los resultados.
Tarea: Cambiar el algoritmo utilizando un vector para los acumuladores de montos por región.
[ algoritmo ] [ diagrama flujo ]
..
Algoritmo en Python
Se presenta la solución por partes por didáctica.
# ICM00794-Fundamentos de Computación - FCNM-ESPOL # 1Eva_IT2011_T3 Calcular ventas por región import random as rnd import numpy as np # parte 1) sorteo de regiones a cada vendedor # INGRESO n = int(input('cuantos vendedores: ')) # PROCEDIMIENTO region = np.zeros(n, dtype = int) monto = np.zeros(n, dtype = float) vendedor = 0 while not(vendedor>=n): donde = int(rnd.random()*4)+1 region[vendedor] = donde vendedor = vendedor + 1 # parte 2) calcular montos de venta # INGRESO DE VENTAS vendedor = 0 while not(vendedor>=n): print('monto['+str(vendedor)+']: ') monto[vendedor] = float(input('')) vendedor = vendedor+1 # Total de ventas por mes total = 0 vendedor = 0 while not(vendedor>=n): total = total + monto[vendedor] vendedor = vendedor+1 # ventas en region costa totalcosta = 0 vendedor = 0 while not(vendedor>=n): if (region[vendedor]==1): totalcosta = totalcosta + monto[vendedor] vendedor = vendedor+1 # totales en vector totalregion totalregion = np.zeros(4+1, dtype = float) vendedor = 0 while not(vendedor>=n): donde = region[vendedor] cuanto = monto[vendedor] totalregion[donde] = totalregion[donde] + cuanto vendedor = vendedor+1 # SALIDA print('region asignada: ', region) print('monto de cada vendedor: ', monto) print('total de ventas por mes: ', total) print('total de ventas en la costa', totalcosta) print('total por regiones: ', totalregion)
Tarea: De ser posible, reorganizar como un solo algoritmo.
[ algoritmo ] [ diagrama flujo ]
..
Diagrama de Flujo
[ algoritmo ] [ diagrama flujo ]
Propuesta de solución con diagrama de flujo, Python y otra versión con Matlab