Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- program morrediabo;
- //cadastro de remedios/////////////////////////////
- {type tcadastro_de_remedio=record
- nome_do_remedio:string;
- preco:real;
- codigo_de_barra:integer;
- descricao:string;
- modo_de_uso:string;
- end;}
- //cadastro de clientes/////////////////////////////
- type tcadastro_de_clientes=record
- nome_do_cliente:string;
- tendereco:record
- telefone_fixo:integer;
- numero_celular:integer;
- numero_casa:integer;
- rua:string;
- bairro:string;
- cidade:string;
- estado:string;
- end;
- end;
- //cadastro de funcionarios/////////////////////////
- tcadastro_funcionario=record
- nome_funcionario:string;
- salario_fucionario:real;
- ttendereco:record
- telefone_fixo:integer;
- numero_celular:integer;
- numero_casa:integer;
- rua:string;
- bairro:string;
- cidade:string;
- estado:string;
- end;
- end;
- //estoque de remédios//////////////////////////////
- testoque=record
- qtd_remedio:integer;
- nome_remedio:string;
- qtd:integer;
- cod:integer;
- end;
- //caixa/////////////////////////////////////////////
- tcaixa=record
- valor_pago:real;
- preco:real;
- preco1:real;
- nome:string;
- consultadepreco:string;
- produto_codigo:integer;
- valor_total:real;
- end;
- //relatorio/////////////////////////////////////////
- trelatorio=record
- remedio_mais_vendido:string;
- remedios_tarja_preta:string;
- apresentacao:string;
- end;
- //variaveis globais/////////////////////////////////
- var cadastro_de_remedio:tcadastro_de_remedio;
- cadastro_de_clientes:tcadastro_de_clientes;
- cadastro_funcionario:tcadastro_funcionario;
- estoque:testoque;
- caixa:tcaixa;
- relatorio:trelatorio;
- endereco:ttendereco;
- opcaorepetir:char;
- i:integer;
- a:integer;
- arquivo_txt:array[1..20]of text;
- function aux_de_venda(var nome:string):integer;
- VAR S:STRING;
- numeroconv,ne,i :integer;
- t:text;
- begin
- assign(t,nome+'.txt');
- reset(t);
- while not eof(t) do
- begin
- readln(t,s);
- writeln(s);
- end;
- close(t);
- clrscr ;
- val ( s,numeroconv,ne );
- numeroconv:=numeroconv-1;
- writeln(numeroconv);
- end;
- //procedure exibe////////////////////////////
- procedure exibe(var t:text);
- VAR S:STRING;
- begin
- reset(t);
- while not eof(t) do
- begin
- readln(t,s);
- writeln(s);
- end;
- close(t);
- end;
- //funcao_cons_estoque/////////////////////////////////
- procedure funcao_cons_estoque;
- //var arquivo_txt:text;
- var i,nome_cons,remedio:string;
- aux:integer;
- begin
- //writeln('Digite o nome do remédio:');
- //readln(remedio);
- Assign(arquivo_txt[1],'estoque.txt');
- Reset(arquivo_txt[1]);
- Close(arquivo_txt[1]);
- exibe(arquivo_txt[1]);
- readkey;
- readkey;
- end;
- //funcao caixa///////////////////////////////////////
- procedure funcao_caixa;
- VAR opcao_caixa:char;
- begin
- repeat
- writeln('Preço do produto:');
- readln(caixa.preco);
- caixa.preco1:=caixa.preco1+caixa.preco;
- clrscr ;
- writeln('Nome do produto:');
- readln(caixa.nome);
- clrscr ;
- writeln('Código do produto:');
- readln(caixa.produto_codigo);
- writeln('O valor a ser pago é: ',caixa.preco1);
- writeln('Deseja continuar? S/N');
- readln(opcao_caixa);
- UNTIL upcase(opcao_caixa)<>'S';
- writeln('Valor pago:');
- readln(caixa.valor_pago);
- clrscr ;
- caixa.valor_total:=caixa.valor_pago-caixa.preco1;
- writeln('Troco R$: ',caixa.valor_total);
- readkey;
- end;
- //consulta de clientes///////////////////
- procedure funcao_consulta_cli;
- //var arquivo_txt:text;
- var nome_cli_cons:string;
- begin
- writeln('Digite o nome do cliente:');
- readln(nome_cli_cons);
- Assign(arquivo_txt[2],nome_cli_cons+'.txt');
- Reset(arquivo_txt[2]);
- Close(arquivo_txt[2]);
- exibe(arquivo_txt[2]);
- readkey;
- readkey;
- readkey;
- end;
- //funcao cadastto de clientes////////////////////////
- procedure funcao_cadastro_de_clientes;
- //var arquivo_txt:text;
- var nome_cli:string[30];
- opcao:char;
- NOME_COPY:STRING;
- begin
- opcao:='s';
- while ((opcao='s') or (opcao='S')) do
- begin
- writeln('Digite o nome do cliente:');
- readln(nome_cli);
- assign(arquivo_txt[3],nome_cli+'.txt');
- writeln('Digite o nome do cliente novamente:');
- rewrite(arquivo_txt[3]);
- append(arquivo_txt[3]);
- readln(cadastro_de_clientes.nome_do_cliente);
- NOME_COPY:=COPY(cadastro_de_clientes.nome_do_cliente,1,30);
- writeln(arquivo_txt[3],'NOME: ',cadastro_de_clientes.nome_do_cliente);
- writeln('Digite o endereço:');
- writeln('Rua:');
- readln(cadastro_de_clientes.tendereco.rua);
- writeln(arquivo_txt[3],'RUA: ',cadastro_de_clientes.tendereco.rua);
- writeln('Bairro:');
- readln(cadastro_de_clientes.tendereco.bairro);
- writeln(arquivo_txt[3],'BAIRRO: ',cadastro_de_clientes.tendereco.bairro);
- writeln('Cidade:');
- readln(cadastro_de_clientes.tendereco.cidade);
- writeln(arquivo_txt[3],'CIDADE: ',cadastro_de_clientes.tendereco.cidade);
- writeln('Digite o número da casa:');
- readln(cadastro_de_clientes.tendereco.numero_casa);
- writeln(arquivo_txt[3],'NUMERO: ',cadastro_de_clientes.tendereco.numero_casa);
- writeln('Estado:');
- readln(cadastro_de_clientes.tendereco.estado);
- writeln(arquivo_txt[3],'ESTADO: ',cadastro_de_clientes.tendereco.estado);
- writeln('Telefone fixo:');
- readln(cadastro_de_clientes.tendereco.telefone_fixo);
- writeln(arquivo_txt[3],'FONE: ',cadastro_de_clientes.tendereco.telefone_fixo);
- close(arquivo_txt[3]);
- WRITELN(NOME_COPY,' CADASTRADO COM SUCESSO');
- writeln('Deseja Efetuar Outro Cadastro? S/N');
- readln(opcao);
- end;
- end;
- //FUNCAO ESTOQUE/////////////////////////////////////
- procedure funcao_estoque;
- //var arquivo_txt:text;
- var a:string;
- preco:real;
- opcao:char;
- begin
- opcao:='s';
- while ((opcao='s') or (opcao='S')) do
- begin
- //writeln('Digite o nome do remédio: ');
- //readln(estoque.nome_remedio);
- assign(arquivo_txt[4],'estoque.txt');
- //rewrite(arquivo_txt);
- append(arquivo_txt[4]);
- writeln('Digite a quantidade de remédios');
- readln(estoque.qtd_remedio);
- writeln('Digite o nome do remédio');
- readln(estoque.nome_remedio);
- writeln(arquivo_txt[4],' ');
- write(arquivo_txt[4],estoque.nome_remedio,' ');
- write(arquivo_txt[4],estoque.qtd_remedio,' Unidade(s) R$: ');
- writeln('Digite o preço da unidade:');
- readln(preco);
- write(arquivo_txt[4],preco:2:2,' ');
- close(arquivo_txt[4]);
- writeln('Deseja adicionar um novo remedio ao estoque? S/N');
- readln(opcao);
- end;
- end;
- //funcao cadastro de funcionarios///////////////////
- procedure funcao_cadastro_de_funcionario;
- //var arquivo_txt:text;
- var nome_arquivo:string;
- opcao:char;
- NOME_COPY:string;
- begin
- opcao:='s';
- while ( (opcao = 's' ) or (opcao = 'S') ) do
- begin
- writeln('Digite o nome do funcionario:');
- readln(nome_arquivo);
- assign(arquivo_txt[5],nome_arquivo+'.txt');
- rewrite(arquivo_txt[5]);
- NOME_COPY:=COPY(nome_arquivo,1,30);
- writeln('Digite o nome do funcionário:');
- readln(cadastro_funcionario.nome_funcionario);
- writeln(arquivo_txt[5],'NOME: ',cadastro_funcionario.nome_funcionario);
- writeln('digite o endereco');
- writeln('Rua');
- readln(cadastro_funcionario.ttendereco.rua);
- writeln(arquivo_txt[5],'RUA: ',cadastro_funcionario.ttendereco.rua);
- writeln('Bairro');
- readln(cadastro_funcionario.ttendereco.bairro);
- writeln(arquivo_txt[5],'BAIRRO: ',cadastro_funcionario.ttendereco.bairro);
- writeln('Cidade');
- readln(cadastro_funcionario.ttendereco.cidade);
- writeln(arquivo_txt[5],'CIDADE: ',cadastro_funcionario.ttendereco.cidade);
- writeln('Digite o numero da casa');
- readln(cadastro_funcionario.ttendereco.numero_casa);
- writeln(arquivo_txt[5],'NUMERO: ',cadastro_funcionario.ttendereco.numero_casa);
- writeln('Estado');
- readln(cadastro_funcionario.ttendereco.estado);
- writeln(arquivo_txt[5],'ESTADO: ',cadastro_funcionario.ttendereco.estado);
- writeln('Salário');
- readln(cadastro_funcionario.salario_fucionario);
- writeln(arquivo_txt[5],'SALARIO: ',cadastro_funcionario.salario_fucionario:2:2);
- writeln('Telefone fixo:');
- readln(cadastro_funcionario.ttendereco.telefone_fixo);
- writeln(arquivo_txt[5],'FONE: ',cadastro_funcionario.ttendereco.telefone_fixo*1);
- close(arquivo_txt[5]);
- writeln(NOME_COPY,' CADASTRADO COM SUCESSO');
- writeln('Deseja fazer outro cadastro? S/N');
- readln(opcao);
- end;
- end;
- //procedure para menu/////////////////////////////
- procedure menuinicial;
- begin
- writeln('Entre com o tipo de usuário');
- writeln('1. Gerente:');
- writeln('2. Caixa:');
- writeln('3. Proprietário/Dono:');
- end;
- //funcao menu de opcao//////////////////////////////
- procedure menu_gerente;
- var opcao_menu_gerente:integer;
- begin
- writeln('1. Novo estoque:');
- writeln('2. Para cadastro de funcionários:');
- writeln('3. Consulta de estoque:');
- writeln('4. Consulta de clientes/funcionários:');
- readln(opcao_menu_gerente);
- case opcao_menu_gerente of
- 1:funcao_estoque;
- 2:funcao_cadastro_de_funcionario;
- 3:funcao_cons_estoque;
- 4:funcao_consulta_cli;
- end;
- end;
- //menu dono///////////////////////////////////////
- procedure menu_dono;
- var opcao_dono:integer;
- begin
- writeln('1. Para cadastro de cliente:');
- writeln('2. Venda de produto:');
- writeln('3. Consutar estoque:');
- writeln('4. Novo estoque:');
- writeln('5. Para cadastrar funcionários:');
- readln(opcao_dono);
- case opcao_dono of
- 1:funcao_cadastro_de_clientes;
- 2:funcao_caixa;
- 3:funcao_cons_estoque;
- 4:funcao_estoque;
- 5:funcao_cadastro_de_funcionario;
- end;
- end;
- //funcao menu de opcao//////////////////////////////
- procedure menu_caixa;
- var opcao_menu_caixa:integer;
- begin
- writeln('1. Para cadastro de cliente:');
- writeln('2. Venda de produto:');
- writeln('3. Consulta de estoque ou preço:');
- readln(opcao_menu_caixa);
- case opcao_menu_caixa of
- 1:funcao_cadastro_de_clientes;
- 2:funcao_caixa;
- 3:funcao_cons_estoque
- else
- writeln('Erro de escolha, voltará para o menu inicial...');
- readkey;
- end;
- end;
- //procedure para cadastro de remedios//////////////
- procedure cadastro_remedio_menu;
- var opcao:integer;
- begin
- readln(opcao);
- clrscr ;
- case opcao of
- 1:menu_gerente;
- 2:menu_caixa;
- 3:menu_dono;
- end;
- end;
- //programa principal///////////////////////////////
- Begin
- TEXTCOLOR(yellow);
- a:=1;
- while a>=1 do
- begin
- a:=a+1;
- if keypressed then a:=-1;
- if ((a>1) and (a<1000)) then textcolor(blue);
- if ((a>=1000) and (a<2000)) then textcolor(green);
- if ((a>=2000) and (a<3000)) then textcolor(yellow);
- if ((a>=3000) and (a<4000)) then textcolor(red);
- if ((a>=4000) and (a<5000)) then textcolor(white);
- if a>5000 then a:=1;
- gotoxy(1,1);
- writeln('Site: WWW.INFORMACIA.COM.BR');
- gotoxy(1,3);
- writeln(' 00 0000 00 000000 000000 00000 0000 0000 0000000 000000 00 0000000');
- gotoxy(1,4);
- writeln(' 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00');
- gotoxy(1,5);
- writeln(' 00 00 00 00 000000 00 00 00000 00 00 00 00 0000000 00 00 0000000');
- gotoxy(1,6);
- writeln(' 00 00 0000 00 00 00 00 00 00 0000 00 00 00 00 00 00 00 00');
- gotoxy(1,7);
- writeln(' 00 00 00 00 000000 00 00 00 00 00 00 00 000000 00 00 00');
- gotoxy(10,10);
- writeln('BEM VINDO AO SOFTWARE COMERCIAL "INFORMACIA"');
- gotoxy(10,11);
- WRITELN('mais um software das empresas Zé Paulo');
- gotoxy(10,12);
- writeln('Pressione ENTER para iniciar a interface do programa');
- end;
- clrscr ;
- for i:=1 to 50 do
- begin
- gotoxy(10,10);
- writeln('Carregando arquivos... ',i*2,'%');
- gotoxy(i,11);
- TEXTCOLOR(yellow);writeln(#176);
- delay(200);
- end;
- repeat
- TEXTCOLOR(yellow);
- textbackground ( blue ) ;
- clrscr ;
- menuinicial;
- cadastro_remedio_menu;
- clrscr ;
- writeln('Deseja voltar para o menu inicial? [S/N]');
- readln(opcaorepetir);
- until(upcase(opcaorepetir))<> 'S';
- End.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement