Vous êtes sur la page 1sur 4

UTN FRM Ing.

en Sistemas de Informacin
Algoritmos y Estructuras de Datos
Ciclo lectivo 2017- Trabajos Prcticos
Clase N8- UT5- Hoja 1 de 4

CLASE N 8: Resolucin de problemas ingenieriles


Tema: ARREGLOS MULTIDIMENSIONALES (UT5)

OBJETIVO: Que los alumnos construyan pseudocdigos a partir de las nociones de arreglos
de dos o tres dimensiones; aprendiendo a manipular los elementos del mismo para realizar
diferentes operaciones. Uso de los ndices: fila, columna, plano; diferentes "recorridos"
sobre los elementos.

Consigna 1: Con la participacin de los alumnos, se interpreta y resuelve, el siguiente problema:


EJERCICIO RESUELTO
Problema: Al terminar el ao, una empresa desea calcular la venta promedio (cantidad
vendida promedio) de los productos que comercializa desde hace ms de 5 aos.

Aclaracin: Para realizar lo anterior se cuenta con la sgte. informacin que se debe
cargar previamente: una matriz con las ventas (cantidades vendidas mensuales) de los
ltimos 12 meses para los N productos que la empresa comercializa.

venta
-----cada columna representa un mes-------
representa un

Venta[5,5]:representa la venta del producto 5, del mes Mayo.


Cada fila
producto

PROGRAMA Ventas
//Subprogramas
PROCEDIMIENTO CargarVentas(Por Ref. venta[100,12], CntProd: ENTERO)
VAR i, j :ENTERO
VARIAR i DESDE 1 HASTA CntProd
VARIAR j DESDE 1 HASTA 12 //Meses
REPETIR
ESCRIBIR( Ingrese venta del producto: , i , para el mes: , j)
ESCRIBIR( (venta en cero si el producto no estaba a la venta o no se
vendi nada) )
LEER(venta[i,j])
HASTA QUE (venta[i,j] >= 0)
FINVARIAR
FINVARIAR
FINPROCEDIMIENTO

PROCEDIMIENTO MuestraPromedios(venta[100,12], CntProd: ENTERO)


VAR i, j , anual: ENTERO; promedio: REAL
VARIAR i DESDE 1 HASTA CntProd
anual = 0 //Inicializa para cada producto
VARIAR j DESDE 1 HASTA 12//Meses
anual = anual + venta[i,j] //Acumulo la cantidad vendida
FINVARIAR
promedio = anual / 12 //Calculo el promedio
ESCRIBIR (El promedio del producto , i , es de : , promedio)
FINVARIAR
FINPROCEDIMIENTO

//PROGRAMA PRINCIPAL
VAR n, venta[100,12]: ENTERO
UTN FRM Ing. en Sistemas de Informacin
Algoritmos y Estructuras de Datos
Ciclo lectivo 2017- Trabajos Prcticos
Clase N8- UT5- Hoja 2 de 4

INICIO
REPETIR
ESCRIBIR( Ingrese cantidad de productos a procesar: )
LEER(n)
HASTA QUE (n > 0 [Y] n <= 100)

//Ingresa la cantidad vendida en cada mes, de cada producto


CargarVentas(venta[], n)

//Calcula y muestra promedios


MuestraPromedios(venta[], n)

FIN PROGRAMA
-----------------------------------------------------------------------------------------------------------------------------------
#include <iostream>
using namespace std;
//Subprogramas
void CargarVentas(int venta [10][12], int CntProd){
int i;
int j;
for (i=0; i< CntProd; i++){ //VARIAR de productos
for (j=0; j<12; j++){ //VARIAR de meses
cout<<"Ingrese venta del producto "<<i+1<<" para el mes "<<j+1<<": ";

do { //REPETIR para validar el ingreso


cin>>venta[i] [j];
} while (venta[i][j]<0);
}
}
} //Fin procedimiento
void MuestraPromedios( int venta[10][12], int CntProd){
int i;
int j;
float anual;
float promedio;
for (i=0; i< CntProd; i++){
anual=0;
for (j=0;j<12;j++){
anual = anual + venta [i][j];
}
promedio = anual / 12;
cout<<"El promedio del producto "<<i+1<<" es: "<<promedio<<endl; `
}
} //Fin procedimiento

int main(int argc, char *argv[]) {


int n;
int venta [10][12];
do{
cout<<"Ingrese cantidad de productos a procesar: ";
cin>>n;
}while (n<=0 || n >100);

//Ingresa la cantidad vendida en cada mes, de cada producto


CargarVentas(venta,n);

//Calcula y muestra promedios


MuestraPromedios(venta,n);

return 0;
}

CONTENIDOS MNIMOS DE RESOLUCIN:


I- Delimitacin del problema: aspectos que acotan el problema o determinan las condiciones del contexto que lo
UTN FRM Ing. en Sistemas de Informacin
Algoritmos y Estructuras de Datos
Ciclo lectivo 2017- Trabajos Prcticos
Clase N8- UT5- Hoja 3 de 4

delimitan. Explicacin breve de lo que el grupo ha entendido que debe hacer el algoritmo.

II- Algoritmo: desarrollar en pseudocdigo el algoritmo que resuelve el enunciado, incluyendo comentarios que
indiquen los momentos: ingreso de datos, proceso, salida o mostrar resultados.
En el caso de desarrollar subprogramas, incluya comentarios que indiquen los pasos (bloques de instrucciones
que hacen una tarea determinada) de la solucin elegida. Piense al desarrollar cada subprograma: qu datos debe
conocer (parmetros), qu hace, qu muestra o devuelve.

III- Prueba: elija un conjunto de valores para los datos de entrada del algoritmo realizado, y realice la prueba para
corroborar si dicho algoritmo es una solucin al problema planteado.

V-Codificacin: codificar el programa en Pseudocdigo en algn lenguaje de programacin, o sea convertir las
acciones del algoritmo en instrucciones del lenguaje, como por ej. C
Realice y documente las pruebas realizadas en mquina.

Consigna 2: Ahora la empresa tiene los datos de las ventas mensuales (cantidades vendidas) realizadas
en los ltimos tres aos para su lista de N productos vigentes. De los productos que comercializa adems tiene
la siguiente informacin adicional: precio unitario de cada uno y existencia actual.

Debe realizar:
- Dibujar las estructuras necesarias para almacenar todos los datos del problema.
- Realizar el programa principal.
- Realizar los subprogramas de carga de datos
- Realizar un subprograma que resuelva los puntos detallados a continuacin (asignados por el Docente).

Desarrolle la resolucin a cada problema realizando los Pasos I a IV, de los Contenidos mnimos de
Resolucin .
1- Dado un rango de valores, muestre los productos cuyo importe vendido mensual est contenido en ese rango;
indicando el ao y mes en qu ocurri.
2- Determine cules productos tuvieron en el primer ao una venta inferior a una cantidad dada y cuntos son.
3- Determine los importes ($) recaudados en concepto de ventas para los dos primeros aos y lo recaudado en
el ao actual, por trimestre.
4- Dado un coeficiente de (posible) aumento de ventas proyecte la recaudacin ($) estimada (en relacin al
ltimo semestre).
5- Encuentre el trimestre con menores ventas en los dos primeros aos de los productos que tienen precio
unitario mayor a un valor dado.
6- Determine el promedio de los importes ($) mensuales vendidos en los tres ltimos meses correspondientes a
los tres aos, para todos los productos.
7- Dado un valor, muestre los meses y aos en los que se supera este monto de venta, para todos sus
productos.
8- Dada una cantidad indique qu productos en qu mes y ao han superado esta cantidad vendida e indique
cuntos productos son.
9- Dado un valor, muestre la existencia actual de los productos, cuyo importe vendido en el primer trimestre de
los distintos aos es menor a ese valor.

Consigna 3: El docente lee el enunciado y resolucin de un ejercicio. Y se analiza:


1- Dnde est determinada la dimensin de una matriz? Esa dimensin se mantiene fijo durante toda
la ejecucin del programa?
2- Mencionen las consideraciones que debemos tener en cuenta al usar los subndices de una matriz.
Ejemplificar.
3- Identifique las relaciones implcitas y explcitas entre vectores/matrices.

Consigna 4: Puesta en comn (oral):


1- Tuvieron dificultades para recorrer las matrices? Cules? Por qu?
UTN FRM Ing. en Sistemas de Informacin
Algoritmos y Estructuras de Datos
Ciclo lectivo 2017- Trabajos Prcticos
Clase N8- UT5- Hoja 4 de 4

Consigna 5: A modo de repaso y para afianzar los conocimientos adquiridos durante esta clase, Ud. debe
RENDIR los contenidos Prcticos de la CLASE 8 ( Tarea en casa Nro. 8) en el aula virtual de la ctedra en
forma individual.

Consigna 6: Para poder realizar la ejercitacin la prxima clase es necesario que conozca los siguientes
contenidos: Tipos de datos estructurados: Registros. Para acreditar estos conocimientos, Ud. debe RENDIR los
contenidos de Teora CLASE 9 ( Cuestionario Nro. 9) en la plataforma de la ctedra en forma individual.

Vous aimerez peut-être aussi