1. PROGRAMACION I
ING. HERIK L. CACERES
VENTAS S. A.
La empresa Ventas S.A. quiere analizar cuál es su mejor zona de ventas. Para ello, nos
pide un programa que le permita recoger y analizar los datos de las ventas que hacen sus
3 vendedores en las 4 zonas en las que trabajan.
La empresa vende 5 productos que tienen diferentes precios. Se deberá declarar en el
programa un vector constante, que contenga los precios de dichos productos, para poder
calcular posteriormente el valor de las ventas. El vector será el siguiente:
En la entrada de datos el usuario introducirá para cada vendedor y zona lo siguiente:
qué productos ha vendido y cuántas unidades de cada uno de ellos. De la siguiente
forma:
Con esta entrada de datos lo que nos interesa guardar en memoria, para hacer el
estudio, es para cada vendedor y zona, el valor total de las ventas.
Tener en cuenta que, puede ocurrir que algún vendedor no realice ninguna venta en
alguna de las zonas.
El programa deberá realizar lo siguiente:
1. Mostrar en pantalla el valor total de las ventas realizadas por cada vendedor en cada
zona, tal y como se indica en el ejemplo. Ejemplo:
2. Dada una zona, indicar cuál ha sido el mejor vendedor de esa zona.
Ejemplo:
Digite la zona: 3
El mejor vendedor de la zona 3 ha sido el vendedor número 2.
2. PROGRAMACION I
ING. HERIK L. CACERES
3. Indicar, qué vendedor y en qué zona ha obtenido el mayor valor de ventas. Ejemplo:
El mayor valor de ventas lo ha obtenido el vendedor 1 en la zona 19.
ANÁLISIS DEL PROBLEMA
Constantes del enunciado
1. Tope de Vendedores = 3. Número de vendedores de la empresa.
2. Tope de Zonas = 4. Número de zonas en las que trabajan los vendedores.
Representación de las variables necesarias para la entrada
3. Necesitaremos una matriz que le llamaremos ventas, de TopeVendedorxTopeZonas
posiciones, para almacenar lo que ha vendido cada vendedor en cada zona.
4. Necesitaremos un vector que le llamaremos prodPrecio, de 5 posiciones para
almacenar en cada posición el precio de cada producto.
3. PROGRAMACION I
ING. HERIK L. CACERES
Pasos a seguir en la resolución del problema
1. Inicializar la matriz ventas a 0.
2. Leer el primer par vendedor, zona (v,z)
a. Leer el par (p,u)
i. Iniciar sum a 0
i. Acumular en sum las unidades (u) * el precio del producto que está en el vector
prodPrecio
c. Almacenar las unidades acumuladas en la matriz ventas
3. Leer el siguiente par (v,z)
4. Mostrar en pantalla la matriz tal y cómo se indica en el enunciado
5. Por cada vendedor:
a. Recorrer cada fila y mostrar las ventas en cada zona, que serán cada una de las
posiciones de cada fila
6. Leer una zona:
a. Recorrer en la matriz ventas la columna correspondiente a esa zona y buscar el
elemento mayor
NOTA:
Pueden suponer que el elemento que está en la primera posición de la matriz a es el
mayor, para ello poner la posición de la fila y de la columna a max=0 y zmax=0
a. Recorrer toda la matriz y comparar siempre con una condición
if ventas[v][z] <ventas,
Si se cumple dicha condición se almacenan en las variables vmax y zmax los
nuevos valores de v y z, al finalizar en vmax y zmax estarán las posiciones del
mejor vendedor y zona