Documente Academic
Documente Profesional
Documente Cultură
Desarrollo de una aplicacin con men, funciones, variables globales, registros y archivo en
disco para control de inventario de los artculos de un almacn.
Cdigo
Nombre
Cantidad actual del artculo
Men
1) Ingresar: Ingreso de un nuevo artculo con la cantidad inicial
2) Agregar: Agregar cantidad a un artculo existente
3) Vender: Vender una cantidad de un artculo existente
4) Consultar: Conocer la cantidad disponible de un artculo
5) Eliminar: Eliminar o dar de baja un artculo
6) Salir
Variables
art: Nombre del vector de registros en memoria (variable global)
data: Nombre del archivo en disco
%Manejo de inventario
global art
try
load data art
catch
art=[ ];
end
opc=0;
while opc ~= 6
menu1;
opc=input('Elija una opcin ');
switch opc
case 1, ingresar;
case 2, agregar;
case 3, vender;
case 4, consultar;
case 5, eliminar
end
end
save data art;
function menu1
clc;
disp('1) Ingresar artculo');
disp('2) Agregar');
disp('3) Vender');
disp('4) Consultar');
disp('5) Eliminar');
disp('6) Salir');
function ingresar
global art
c=input('Cdigo del artculo ');
r=buscar1(c);
if r==0
t.cod=c;
t.nomb=input('Nombre del artculo ');
t.cant=input('Cantidad inicial ');
art=[art, t];
else
disp('Artculo ya existe');
pause
end
function agregar
global art;
c=input('Ingrese cdigo de artculo ');
[r,p]=buscar1(c);
if r==1
ct=input('Ingrese cantidad ');
art(p).cant=art(p).cant + ct;
else
disp('Artculo no existe');
pause;
end
function vender
global art;
c=input('Ingrese cdigo de artculo ');
[r,p]=buscar1(c);
if r==1
ct=input('Ingrese cantidad ');
if art(p).cant>=ct
art(p).cant=art(p).cant - ct;
else
disp('Cantidad insuficiente');
pause
end
else
disp('Artculo no existe');
pause;
end
function consultar
global art;
c=input('Ingrese cdigo de artculo ');
[r,p]=buscar1(c);
if r==1
t=art(p);
disp(t.nomb);
disp(t.cant);
pause;
else
disp('Artculo no existe');
pause;
end
function eliminar
global art;
c=input('Ingrese cdigo de artculo ');
[r,p]=buscar1(c);
if r==1
art(p)=[ ];
else
disp('Artculo no existe');
pause;
end
function [r,p]=buscar1(c)
global art;
n=length(art);
r=0;
p=0;
for i=1:n
if c==art(i).cod
r=1;
p=i;
return
end
end