Almacenes
Tipo
Registro: Almacen
Inicio
Entero: cant_A, cant_B, opcin
Real: monto_vtaA, monto_vtaB
Lgico: ban_1, ban_2
Fin_registro
Array[13] de almacen: vector
Var
Lgico: hay_stock
Vector: V1
Entero: op, i, N_alm, tipo_prod, cant, tipo_venta
Real: monto_desc
Inicio
Op1
Monto_desc0
Opcion0
desde i1 hasta 3 hacer
V1[i].monto_vtaA0
V1[i].monto_vtaB0
V1[i].cant_A50
V1[i].cant_B50
V1[i].ban_1falso
V1[i].ban_2falso
Fin_desde
Monto_desc0
Mientras op=1 hacer
Mostrar(Almacen 1, 2 o 3?)
Leer(N_alm)
Mostrar(Para producto A ingresar 1, para producto B ingresar 2)
Leer(tipo_prod)
Mostrar(Ingresar cantidad de producto)
Leer(cant)
Hay_stockvalida_venta(V1, N_alm, tipo_prod, cant)
Si hay_stock=verdadero entonces
Mostrar(Para pago de contado 1, para otro tipo de pago 2)
Leer(tipo_venta)
Llamar_a registrar_venta(V1,N_alm, tipo_prod, cant, tipo_venta, monto_desc)
Si_no
Mostrar(La cantidad a vender no esta en el almacen)
Fin_si
Mostrar(Para realizar otra venta ingresar 1, para finalizar ingresar otro
numero)
Si
Leer(op)
Fin_mientras
Opcionconsultas( )
Segn_sea opcin entonces
Caso 1 llamar_a vta_prod(V1)
Caso 2 llamar_a vta_almac(V1)
Caso 3 llamar_a stock_almac
Caso 4 llamar_a cant_prod
Caso 5 Mostrar(El monto de descuentos es,monto_desc)
Caso 6 llamar_a repos_almac(V1)
Si_no
Mostrar(Opcion incorrecta)
Fin_segun_sea
Fin
Var
Entero: i
Inicio
Mostrar(el stock del almacen 1 de producto A es, V1[1].cant_A,y de
producto B es, V1[1].cant_B)
Mostrar(el stock del almacen 2 de producto A es, V1[1].cant_A,y de
producto B es, V1[1].cant_B)
Mostrar(el stock del almacen 3 de producto A es, V1[1].cant_A,y de
producto B es, V1[1].cant_B)
Fin_procedimiento