Algoritmo { //variáveis auxiliares inteiro i, op, op2, qtd, entradaestoque, consulproduto, consulcliente; inteiro flagcad=0, flagclient=0; //sempre que o usuário voltar ao menu principal ele poderá cadastrar a partir de onde parou boolean consulclie = falso; //variáveis para cadastro de produtos sendo que o máximo permitido é 1000 inteiro cod[1000], estoque[1000]; real pcompra[1000], pvenda[1000]; String desc[1000], categ[1000]; //variáveis para cadastro de clientes sendo que o máximo permitido é 1000 String nome[1000]; inteiro codclient[1000]; escreva(" **Controle de Estoque e Cadastro** "); //menu principal faça { escreva(" **Bem-Vindo** "); escreva("<1> Cadastro de Produtos"); escreva("<2> Cadastro de Clientes"); escreva("<3> Consulta de Estoque"); escreva("<4> Cadastro de Vendas"); escreva("<5> Alteração de dados do produto"); escreva("<6> Entrada de Estoque"); escreva("<0> Sair"); escreva("digite uma opção.: "); leia (op);
//validação para entrada da opção enquanto ( op!= 1 && op!= 2 && op!= 3 && op!= 4 && op!= 5 && op!= 6 && op!= 0) { escreva("opção Inválida! Digite novamente.: "); leia (op); escolha (op) { caso 1: //Cadastro de Produtos para(i=flagcad; i < 1000; i++) { escreva(" **Cadastro de Produto** "); escreva("código...: "); leia (cod[i]); enquanto (cod[i] < 0) { escreva("código Inválido! Por Favor, digite um código positivo.: "); leia (cod[i]); escreva("descrição...: "); leia (desc[i]); escreva("preço de Compra...: "); leia (pcompra[i]); enquanto (pcompra[i] <=0) { escreva("preço Inválido! Por favor, digite um preço maior que 0.: "); leia (pcompra[i]); escreva("preço de Venda...: "); leia (pvenda[i]); enquanto (pvenda[i] <=0) { escreva("preço Inválido! Por favor, digite um preço maior que 0.: ");
leia (pvenda[i]); escreva("categoria do Produto...: "); leia (categ[i]); escreva("qtd Estoque...: "); leia (estoque[i]); enquanto (estoque[i] <= 0) { 0.: "); escreva("qtde Inválida! Por favor, digite uma quantidade maior que leia (estoque[i]); escreva("**cadastro realizado com sucesso**"); escreva("deseja cadastrar mais produtos?"); escreva("<1> sim"); escreva("<2> não"); escreva("digite uma opção.: "); leia (op2); enquanto (op2!= 1 && op2!= 2) { escreva("opção Inválida! Digite novamente.: "); leia (op2); se (op2 == 2) { flagcad=i+1; //enquanto o programa continuar aberto, sempre que o usuário voltar a tela de cadastro, continuará na posição do vetor seguinte a que ele parou caso 2: //tela para cadastro de clientes para(i=flagclient; i < 1000; i++) {
escreva(" **Cadastro de Clientes** "); escreva("nome...: "); leia (nome[i]); escreva("digite um Código..: "); leia (codclient[i]); enquanto (codclient[i] < 0) { escreva("código Inválido! Por favor, digite um código positivo.: "); leia(codclient[i]); escreva(" **Cadastro realizado com sucesso** "); escreva("deseja cadastrar mais clientes?"); escreva("<1> sim"); escreva("<2> não"); escreva("digite uma opção.: "); leia (op2); enquanto (op2!= 1 && op2!= 2) { escreva("opção Inválida! Digite novamente.: "); leia (op2); se (op2 == 2) { flagclient = i+1; caso 3: //consulta de estoque faça { escreva(" **Consulta de Estoque** "); escreva("digite o código do produto ou -1 para sair.: ");
enquanto (consulproduto < -1) { escreva(" Código Inválido! Por favor, digite um código válido.: "); para (i=0; i < 1000; i++) { se (consulproduto == cod[i]) { escreva("descrição...: "+desc[i]); escreva("código...: "+cod[i]); escreva("categoria do produto.: "+categ[i]); escreva("estoque Disponível...: "+estoque[i]); senão { encontrou o código o programa mostra essa frase opção 1 no menu"); se (i == 999) { //caso tenha percorrido vetor e não escreva("produto não cadastrado! Favor cadastrar na enquanto (consulproduto!= -1); caso 4: //cadastro de Vendas consulcliente = 0; enquanto (consulcliente!= -1) { escreva(" **Cadastro de Vendas** "); escreva("digite o código do cliente ou -1 para sair.: "); leia (consulcliente); enquanto (consulcliente < -1) { escreva("código Inválido! Por favor, digite um código válido.: "); leia (consulcliente);
para (i=0; i < 1000; i++) { se (consulcliente == codclient[i]) { escreva("nome do Cliente.: ", nome[i]); consulclie = verdadeiro; senão { consulclie = falso; se (i == 999) { opção 2 no menu."); escreva("cliente não cadastrado! Favor cadastrar na se (consulcliente!= -1 && consulclie == verdadeiro) { cliente for válido //O programa só vai entrar na opção do produto se o código do escreva("código do Produto...: "); enquanto (consulproduto < 0) { "); escreva(" Código Inválido! Por favor, digite um código válido.: para (i=0; i < 1000; i++) { se (consulproduto == cod[i]) { escreva("descrição.: ", desc[i]); escreva("qtde adquirida pelo cliente.: "); leia (qtd); enquanto (consulproduto < 0) {
um código válido.: "); escreva(" Código Inválido! Por favor, digite disponivel do produto se (qtd > estoque[i]) { //verifica se tem estoque escrevat("qtde Indisponível no estoque"); escreva("estoque atual.: ", estoque[i]); senão { estoque[i] = estoque[i] - qtd; sucesso** "); escreva(" **Cadastro efetuado com necessário percorrer o vetor //se o código foi encontrado não é senão { se (i == 999) { sistema! Favor cadastrar produto na opção 1"); escreva ("Produto não cadastrado no caso 5: //alteração de dados faça { escreva(" **Alteração de dados do produto** "); escreva("digite código ou -1 pra sair.: ");
enquanto (consulproduto < -1) { escreva("código Inválido! Por favor digite um código válido.: "); se (consulproduto!= -1) { para (i=0; i < 1000; i++) { se (consulproduto == cod[i]) { faça { alterar.: "); escreva("qual dos itens abaixo você deseja escreva("<1> Código"); escreva("<2> Descrição"); escreva("<3> Preço de Compra"); escreva("<4> Preço de Venda"); escreva("<0> Voltar"); escreva("digite uma opção.: "); leia (op2); escolha (op2) { caso 1: código.: "); escreva("digite o novo leia (cod[i]); enquanto (cod[i] < 0) { Inválido! Por favor, digite um código acima de 0.: "); escreva("código leia (cod[i]); com sucesso** "); escreva(" **Código alterado
caso 2: descrição.: "); escreva("digite a nova leia (desc[i]); alterada com sucesso** "); escreva(" **Descrição caso 3: de compra.: "); escreva ("Digite o novo preço leia (pcompra[i]); enquanto (pcompra[i] <= 0) { Inválido! Por favor digite novamente"); escreva("preço leia (pcompra[i]); compra alterado com sucesso** "); escreva(" **Preço de caso 4: de venda.: "); escreva ("Digite o novo preço leia (pvenda[i]); enquanto (pvenda[i] <= 0) { Inválido! Por favor digite novamente"); escreva("preço leia (pvenda[i]); alterado com sucesso** "); escreva(" **Preço de veda
default: Digite novamente.: "); escreva("opção Inválida! enquanto (op2!= 0); senão { se (i == 999) { cadastrar na opção 1"); escreva("produto não cadastrado! Por favor, enquanto (consulproduto!= -1); caso 6: escreva(" **Entrada no Estoque** "); faça { escreva("digite código do produto ou -1 para sair.: "); enquanto (consulproduto < -1) { escreva("código Inválido! Por favor, digite um código válido.: "); para (i=0; i < 1000; i++) { se (consulproduto == cod[i]) { escreva("qtde a entrar.: "); leia (entradaestoque);
enquanto (entradaestoque <= 0) { quantidade maior que 0.: "); escreva("quantidade Inválida! Por favor, digite uma leia (entradaestoque); estoque[i] = estoque[i] + entradaestoque; escreva(" **Entrada efetuada com sucesso** "); enquanto (consulproduto!= -1); caso 0: escreva(" **Obrigado por utilizar o programa** "); escreva(" **Fim do Programa** "); default: escreva("opção Inválida! Digite novamente.: "); enquanto (op!= 0);