Vous êtes sur la page 1sur 12

9/11/2015 Clase Pra ctica

N13
Algoritmos y Estructuras de Datos
CLASE N13
Consigna general

Una 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 tiene la
siguiente informacin adicional: ubicacin en una estantera, precio unitario de cada uno y
existencia actual.

PROBLEMA: Dado un ao, indicar en cules meses no hubo ventas y para cules productos ocurri
esto

DELIMITACION DEL PROBLEMA:

P: Se conoce la cantidad de productos? R: No, hay que definirla.

P: Se conocen las ventas realizadas por mes? R: No, hay que definirlas.

ANALISIS DEL PROBLEMA:

Entrada: Datos de los productos vendidos

Proceso: Cargar datos. Calcular los meses sin ventas para cada producto.

Salida: Mostrar los meses en los que no se registraron ventas de un producto en un ao especfico.

ALGORITMO

TIPO

Datos=REGISTRO

Producto: CADENA

Precio: REAL GRUPO 5:


Aranguez, Axel
Stock: ENTERO
Cepeda, Matas
Ubicacin: CADENA Garach, Franco
Ladino, Franco
FINREGISTRO Ruggeri, Martn
Sacca, Cristian
PRODUCTO PRECIO STOCK UBICACIN
CERVEZA 30 100 Arriba
LECHE 50 100 Centro
1
1 PROGRAMA Ventas Cero

2 VAR DatosProd [50]: Datos

3 Ventas [50, 12, 3]: ENTERO

4 n: ENTERO

5 INICIO

6 REPETIR

7 ESCRIBIR (Ingrese la cantidad de productos)

8 LEER(n)

9 HASTA QUE (n>0 [Y] n<50]

10 //Cargar los datos (llamando al subprograma)

11 CargarDatos (Por Ref. DatosProd [50]: Datos; Por Ref. Ventas [50, 12, 3]: ENTERO; n: ENTERO)

12 //Calcular los meses sin ventas (llamando al subprograma)

13 SinVentas (DatosProd [50]: Datos; Ventas [50, 12, 3] n: ENTERO)

14 FINPROGRAMA

//SUBPROGRAMAS

100 PROCEDIMIENTO CargarDatos (Por Ref. DatosProd [50]: Datos; Por Ref. Ventas [50, 12, 3]:
ENTERO; n: ENTERO)

101 VAR i, j, k: ENTERO

102 INICIO

103 VARIAR i DESDE 1 HASTA n

104 REPETIR

105 ESCRIBIR (Ingrese el producto, i, :)

106 LEER (DatosProd[i].Producto)

107 HASTA QUE (longitud (DatosProd[i].Producto) > 0)

2
108 REPETIR

109 ESCRIBIR (Ingrese el costo del producto, i, :)

110 LEER (DatosProd[i].Pecio)

111 HASTA QUE (DatosProd[i].Pecio[i]>0)

112 REPETIR

113 ESCRIBIR (Ingrese el stock del producto, i, :)

114 LEER (DatosProd[i].Stock)

115 HASTA QUE (DatosProd[i].Stock>=0)

116 REPETIR

117 ESCRIBIR (Ingrese la ubicacin del producto, i, :)

118 LEER (DatosProd[i].Ubicacion)

119 HASTA QUE (longitud (DatosProd[i].Ubicacion) >0)

120 VARIAR k DESDE 1 HASTA 3

121 VARIAR j DESDE 1 HASTA 12

122 REPETIR

123 ESCRIBIR (Ingrese la cantidad de ventas del producto, i,


:)

124 LEER (Ventas [i, j, k])

125 HASTA QUE (Ventas [i, j, k]>=0)

126 FINVARIAR

127 FINVARIAR

128 FINVARIAR

129 FINPROCEDIMIENTO

200 PROCEDIMIENTO SinVentas (DatosProd [50]: Datos; Ventas [50, 12, 3] n: ENTERO)

3
201 VAR a, i, j, CantMesNoVent: ENTERO

202 INICIO

203 REPETIR

204 ESCRIBIR (Ingrese el ao a calcular los meses sin ventas: (1) (2) (3))

205 LEER (a)

206 HASTA QUE (a > 0 [Y] a <= 3)

207 CantMesNoVent=12

208 VARIAR i DESDE 1 HASTA n

209 VARIAR j DESDE 1 HASTA 12

210 SI (Ventas [i, j, a] = 0) ENTONCES // Cuando en un mes no se registraron ventas.

211 SEGN CASO j HACER

212 1: ESCRIBIR (El producto , DatosProd[i].Producto, no tuvo ventas en el


mes de enero)

213 2: ESCRIBIR (El producto, DatosProd[i].Producto, no tuvo ventas en el


mes de febrero)

214 3: ESCRIBIR (El producto, DatosProd[i].Producto, no tuvo ventas en el


mes de marzo)

215 4: ESCRIBIR (El producto, DatosProd[i].Producto, no tuvo ventas en el


mes de abril)

216 5: ESCRIBIR (El producto, DatosProd[i].Producto, no tuvo ventas en el


mes de mayo)

217 6: ESCRIBIR (El producto, DatosProd[i].Producto, no tuvo ventas en el


mes de junio)

218 7: ESCRIBIR (El producto, DatosProd[i].Producto, no tuvo ventas en el


mes de julio)

219 8: ESCRIBIR (El producto, DatosProd[i].Producto, no tuvo ventas en el


mes de agosto)

220 9: ESCRIBIR (El producto, DatosProd[i].Producto, no tuvo ventas en el


mes de septiembre)

4
221 10: ESCRIBIR (El producto, DatosProd[i].Producto, no tuvo ventas en el
mes de octubre)

222 11: ESCRIBIR (El producto, DatosProd[i].Producto, no tuvo ventas en el


mes de noviembre)

223 12: ESCRIBIR (El producto, DatosProd[i].Producto, no tuvo ventas en el


mes de diciembre)

224 FINSEGUN

225 SINO CantMesNoVent= CantMesNoVent-1

226 FINSI

227 FINVARIAR

228 FINVARIAR

229 SI CantMesNoVent=0 ENTONCES

230 ESCRIBIR (En todos los meses se registraron ventas)

231 FINSI

232 FINPROCEDIMIENTO

Prueba de Escritorio

//La prueba se realiza solo con un ao para que no sea tan extensa.

Datos:

Cantidad de productos (n): 1


Producto: CERVEZA
Precio: 30
Stock: 50
Ubicacin: ARRIBA
Ventas: 10,8,0,5,6,7,0,20,3,4,15,32

Resultado esperado:

El producto CERVEZA no tuvo ventas en el mes de marzo

5
El producto CERVEZA no tuvo ventas en el mes de julio

Instr. n i j k a CantMes Producto Precio Stock Ubicacin Ventas[] PANTALLA


NoVent
1
5
6
7 Ingrese la
cantidad de
productos
8 1
10
100
102
103 1
104
105 Ingrese el
producto i :
106 CERVEZA
108
109 Ingrese el costo
del producto i:
110 30
112
113 Ingrese el stock
del producto i:
114 50
116
117 Ingrese la
ubicacin del
producto i:
118 ARRIBA
120 1
121 1
122
Instr. n i j k a CantMes Producto Precio Stock Ubicacin Ventas[] PANTALLA
NoVent
123 Ingrese la
cantidad de

6
ventas del
producto i:
124 10
121 2
122
123 Ingrese la
cantidad de
ventas del
producto i:
124 8
121 3
122
123 Ingrese la
cantidad de
ventas del
producto i:
124 0
121 4
122
123 Ingrese la
cantidad de
ventas del
producto i:
124 5
121 5
122
123 Ingrese la
cantidad de
ventas del
producto i:
124 6
121 6
122
123 Ingrese la
cantidad de
ventas del
producto i:
Instr. n i j k a CantMes Producto Precio Stock Ubicacin Ventas[] PANTALLA
NoVent
124 7
121 7

7
122
123 Ingrese la
cantidad de
ventas del
producto i:
124 0
121 8
122
123 Ingrese la
cantidad de
ventas del
producto i:
124 20
121 9
122
123 Ingrese la
cantidad de
ventas del
producto i:
124 3
121 10
122
123 Ingrese la
cantidad de
ventas del
producto i:
124 4
121 11
122
123 Ingrese la
cantidad de
ventas del
producto i:
124 15
121 12
122
Instr. n i j k a CantMes Producto Precio Stock Ubicacin Ventas[] PANTALLA
NoVent
123 Ingrese la
cantidad de
ventas del
producto i:

8
124 32
126
127
128
129
13
200
202
203
204 Ingrese el ao a
calcular los
meses sin
ventas: (1) (2)
(3):
205 1
207 12
208 1
209 1
210
225 11
226
227
209 2
210
225 10
226
227
209 3
210
211
Instr. n i j k a CantMes Producto Precio Stock Ubicacin Ventas[] PANTALLA
NoVent
214 El producto
CERVEZA no
tuvo ventas en
el mes de marzo
224
226

9
227
209 4
210
225 9
226
227
209 5
210
225 8
226
227
209 6
210
225 7
226
227
209 7
210
211
218 El producto
CERVEZA no
tuvo ventas en
el mes de julio
224
226
227
209 8
210
225 6
Instr. n i j k a CantMes Producto Precio Stock Ubicacin Ventas[] PANTALLA
NoVent
226
227
209 9
210
225 5

10
226
227
209 10
210
225 4
226
227
209 11
210
225 3
226
227
209 12
210
225 2
226
227
228
229
231
232
14

11

Vous aimerez peut-être aussi