ricop522

[PASCAL] Sistema de Estoque em Pascal

Dec 15th, 2011
209
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pascal 6.26 KB | None | 0 0
  1. Program sistemaDeEstoque;
  2.  
  3. type
  4.     reg_mercadoria = record
  5.         codigo:integer;
  6.         nome:string;
  7.         quantidade_estoque:integer;
  8.         preco_compra:integer;
  9.         preco_venda:integer;
  10.         estoque:integer;
  11.         datadocadastro:string;
  12.         sendoUsada:boolean;
  13.     end;
  14. var
  15.     mercadoria:array[1..100] of reg_mercadoria;
  16.     i:integer;
  17.     posicao:integer;
  18.     opcao:integer;
  19.     codigoPesquisado:integer;
  20.     novoEstoque:integer;
  21. Begin
  22.     posicao := 0;
  23.     opcao := 1;
  24.     while(opcao <> 0) do
  25.     begin
  26.         textbackground(black);
  27.         textcolor(white);
  28.         clrscr;
  29.         writeln('______________________ Cadastro de Estoque ___________________________');  
  30.         writeln(' ');
  31.         writeln(' Digite a opção desejada:                                             ');
  32.         writeln(' 1 - Cadastrar mercadorias ( nova )');
  33.         writeln(' 2 - Pesquisar mercadorias ');
  34.         writeln(' 3 - Alterar a quantidade de estoque ');  
  35.         writeln(' 4 - Efetuar saida de mercadoria ');
  36.         writeln(' 5 - Alterar uma mercadoria ( preço )');
  37.         writeln(' 6 - Excluir mercadoria ');
  38.         writeln(' 7 - Imprimir mercadorias');
  39.         writeln(' [0] - Sair do programa');
  40.         writeln('_______________________________________________________________________');
  41.         gotoxy(27,3);
  42.         read(opcao);
  43.         if(opcao = 1) then
  44.         begin                                                                                    
  45.             clrscr;
  46.             posicao:=posicao+1;
  47.             writeln('------------------------------------------------------------------');
  48.             writeln('Digite o nome da nova mercadoria:                     ');
  49.             writeln('Digite o preço de compra mercadoria:                  ');
  50.             writeln('Digite o preço de venda da mercadoria:                ');
  51.             writeln('Digite o estoque dela:                         ');
  52.             writeln('Data do cadastro:                                     ');     
  53.             writeln('------------------------------------------------------------------');
  54.             mercadoria[posicao].codigo := posicao;
  55.             gotoxy(35,2);
  56.             readln(mercadoria[posicao].nome);
  57.             gotoxy(38,3);
  58.             readln(mercadoria[posicao].preco_compra);
  59.             gotoxy(40,4);
  60.             readln(mercadoria[posicao].preco_venda);
  61.             gotoxy(28,5);
  62.             readln(mercadoria[posicao].estoque);
  63.             gotoxy(20,6);
  64.              readln(mercadoria[posicao].datadocadastro);
  65.             gotoxy(1,10);
  66.             mercadoria[posicao].sendoUsada := true;
  67.             textcolor(green);
  68.             writeln('Código da mercadoria: ',posicao);
  69.             writeln('Aperte uma tecla para sair do menu de cadastro.');
  70.             textcolor(white);
  71.             readkey;
  72.         end;
  73.         if(opcao = 2) then
  74.         begin
  75.             clrscr;
  76.             codigoPesquisado:=0;
  77.             writeln('Digite o código a ser pesquisado:');
  78.             readln(codigoPesquisado);
  79.             if(codigoPesquisado < posicao) AND (mercadoria[codigoPesquisado].sendoUsada = true) then
  80.             begin
  81.                 writeln('Nome: ', mercadoria[codigoPesquisado].nome);
  82.                 writeln('Preço de compra: ', mercadoria[codigoPesquisado].preco_compra);
  83.                 writeln('Preço de venda: ', mercadoria[codigoPesquisado].preco_venda);
  84.                 writeln('Estoque minimo: ', mercadoria[codigoPesquisado].estoque);
  85.                 writeln('Data do cadastro: ', mercadoria[codigoPesquisado].datadocadastro);
  86.                 textcolor(green);
  87.                 writeln('Aperte uma tecla para sair do menu de cadastro.');
  88.                 textcolor(white);
  89.                 readkey;
  90.             end
  91.             else
  92.             begin
  93.                 writeln('Código inválido! aperte uma tecla para voltar ao menu.');
  94.                 readkey;
  95.             end;                       
  96.         end;
  97.         if(opcao = 3) then
  98.         begin
  99.             clrscr;
  100.             writeln('Digite o código da mercadoria a ser alterada.');
  101.             readln(codigoPesquisado);
  102.             if(codigoPesquisado < posicao) AND (mercadoria[codigoPesquisado].sendoUsada = true) then
  103.             begin
  104.                 writeln('Mercadoria: ',mercadoria[codigoPesquisado].nome,', estoque: ',mercadoria[codigoPesquisado].estoque);
  105.                 writeln('Digite o novo estoque da mercadoria: ');
  106.                 read(novoEstoque);
  107.                 mercadoria[codigoPesquisado].estoque := novoEstoque;
  108.                 textcolor(green);
  109.                 writeln('Aperte uma tecla para sair do menu de cadastro.');
  110.                 textcolor(white);
  111.                 readkey;                                           
  112.             end
  113.             else
  114.             begin
  115.                 writeln('Código inválido! aperte uma tecla para voltar ao menu.');
  116.                 readkey;
  117.             end;                               
  118.         end;
  119.         if(opcao = 4) then
  120.         begin
  121.             clrscr;
  122.             writeln('Digite o código da mercadoria a ser alterada.');
  123.             readln(codigoPesquisado);
  124.             if(codigoPesquisado < posicao) AND (mercadoria[codigoPesquisado].sendoUsada = true) then
  125.             begin
  126.                 writeln('Digite a quantidade de estoque que saiu da mercadoria ',mercadoria[codigoPesquisado].nome);
  127.                 readln(novoEstoque);
  128.                 mercadoria[codigoPesquisado].estoque := mercadoria[codigoPesquisado].estoque-novoEstoque;
  129.                 writeln('Novo estoque: ',mercadoria[codigoPesquisado].estoque);
  130.                 readkey;
  131.             end
  132.             else
  133.             begin
  134.                 writeln('Código inválido! aperte uma tecla para voltar ao menu.');
  135.                 readkey;
  136.             end;                                                                   
  137.         end;
  138.         if(opcao = 5) then
  139.         begin
  140.             clrscr;
  141.             writeln('Digite o código da mercadoria a ser alterada.');
  142.             readln(codigoPesquisado);
  143.             if(codigoPesquisado < posicao) AND (mercadoria[codigoPesquisado].sendoUsada = true) then
  144.             begin
  145.                 writeln('Digite o novo preço da mercadoria ',mercadoria[codigoPesquisado].nome);
  146.                 readln(novoEstoque);
  147.                 mercadoria[codigoPesquisado].preco_venda := novoEstoque;
  148.                 writeln('Novo estoque: ',mercadoria[codigoPesquisado].preco_venda);
  149.                 readkey;
  150.             end
  151.             else
  152.             begin
  153.                 writeln('Código inválido! aperte uma tecla para voltar ao menu.');
  154.                 readkey;
  155.             end;                                   
  156.         end;
  157.         if(opcao = 6) then
  158.         begin
  159.             clrscr;
  160.             writeln('Digite o código da mercadoria a ser excluida!');
  161.             writeln('AVISO: Excluido uma vez não poderá voltar atrás !');
  162.             readln(codigoPesquisado);
  163.             if(codigoPesquisado < posicao) AND (mercadoria[codigoPesquisado].sendoUsada = true) then
  164.             begin
  165.                 mercadoria[codigoPesquisado].nome := 'Não ultilizada';
  166.                 mercadoria[codigoPesquisado].sendoUsada := false;
  167.                 writeln('Mercadoria: ',codigoPesquisado,' excluida.');
  168.                 readkey;
  169.             end
  170.             else
  171.             begin
  172.                 writeln('Código inválido! aperte uma tecla para voltar ao menu.');
  173.                 readkey;
  174.             end;           
  175.        
  176.         end;
  177.         if(opcao = 7) then
  178.         begin
  179.             clrscr;
  180.             for i:= 1 to posicao do
  181.             begin
  182.                 if(mercadoria[i].sendoUsada = true) then
  183.                 begin
  184.                     writeln('<',i,'> Nome: ',mercadoria[i].nome,' estoque: ',mercadoria[i].estoque);                           
  185.                 end
  186.             end;                                                   
  187.             readkey;
  188.         end;
  189.     end;                         
  190. End.
Advertisement
Add Comment
Please, Sign In to add comment