/*Algortimo de Controle de Estoque e Cadastro*/ #include <stdio.h> #include <stdlib.h> main(){ int i, op, op2, qtd, entradaestoque, consulproduto, consulcliente,cod[1000],estoque[1000]; double pcompra[1000], pvenda[1000], codclient[1000]; int flagcad=0,flagclient=0; cadastrar a partir de onde parou //sempre que o usuário voltar ao menu principal ele poderá char desc[1000], categ[1000], nome[1000]; printf("********controle de Estoque e Cadastro***************"); //menu principal - do { printf("\n **Bem-Vindo** \n"); printf("<1> Cadastro de Produtos\n"); printf("<2> Cadastro de Clientes\n"); printf("<3> Consulta de Estoque\n"); printf("<4> Cadastro de Vendas\n"); printf("<5> Alteração de dados do produto\n"); printf("<6> Entrada de Estoque\n"); printf("<0> Sair\n"); printf("digite uma opção.: "); scanf("%d", &op); //validação para entrada da opção while ( op!= 1 && op!= 2 && op!= 3 && op!= 4 && op!= 5 && op!= 6 && op!= 0) { printf("opção Inválida! Digite novamente.: "); scanf("%d", &op);
switch (op) { case 1: //Cadastro de Produtos for(i=flagcad; i < 1000; i++) { printf("\n\n **Cadastro de Produto** \n\n"); printf("código...: "); scanf("%d", &cod[i]); while (cod[i] < 0) { printf("código Inválido! Por Favor, digite um código positivo.: "); scanf("%d", &cod[i]); printf("descrição...: "); scanf("%c", desc[i]); printf("preço de Compra...: "); scanf("%f", &pcompra[i]); while (pcompra[i] <=0) { printf("preço Inválido! Por favor, digite um preço maior que 0.: "); scanf("%f", &pcompra[i]); printf("preço de Venda...: "); scanf("%f", &pvenda[i]); printf("categoria do Produto...: "); scanf("%c", &categ[i]); printf("qtd Estoque...: "); scanf("%d", &estoque[i]);
while (estoque[i] <= 0) { printf("qtde Inválida! Por favor, digite uma quantidade maior que 0.: "); scanf("%d", &estoque[i]); printf("\n**cadastro realizado com sucesso**\n"); printf("\ndeseja cadastrar mais produtos?"); printf("<1> sim"); printf("<2> não"); printf("digite uma opção.: "); scanf("%d", &op2); while (op2!= 1 && op2!= 2) { printf("opção Inválida! Digite novamente.: "); scanf("%d", &op2); if (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 case 2: //tela para cadastro de clientes for(i=flagclient; i < 1000; i++) { printf("\n\n **Cadastro de Clientes** \n\n"); printf("nome...: "); scanf("%s", nome[i]); printf("digite um Código..: "); scanf("%f", &codclient[i]);
while (codclient[i] < 0) { printf("código Inválido! Por favor, digite um código positivo.: "); scanf("%f", &codclient[i]); printf("\n**cadastro realizado com sucesso**\n"); printf("\ndeseja cadastrar mais clientes?\n"); printf("<1> sim"); printf("<2> não"); printf("digite uma opção.: "); scanf("%d", &op2); while (op2!= 1 && op2!= 2) { printf("opção Inválida! Digite novamente.: "); scanf("%d", &op2); if (op2 == 2) { FlagClient = i+1; case 3: //consulta de estoque do { printf("\n\n **Consulta de Estoque** \n\n"); printf("digite o código do produto ou -1 para sair.: "); while (consulproduto < -1) { printf("\n Código Inválido! Por favor, digite um código válido.: ");
for (i=0; i < 1000; i++) { if (consulproduto == cod[i]) { printf("descrição...:%c",desc[i]); printf("código...:%d", cod[i]); printf("categoria do produto.:%d", categ[i]); printf("estoque Disponível...:%d", estoque[i]); else { programa mostra essa frase if (i == 999) { //caso tenha percorrido vetor e não encontrou o código o printf("\nproduto não cadastrado! Favor cadastrar na opção 1 no menu\n"); while (consulproduto!= -1); case 4: //cadastro de Vendas consulcliente = 0; while (consulcliente!= -1) { printf("\n\n **Cadastro de Vendas** \n\n"); printf("digite o código do cliente ou -1 para sair.: "); scanf("%d", &consulcliente); while (consulcliente < -1) { printf("\n Código Inválido! Por favor, digite um código válido.: "); scanf("%d", &consulcliente); for (i=0; i < 1000; i++) { if (consulcliente == codclient[i]) { printf("nome do Cliente.:%c",nome[i]);
else { if (i == 999) { printf("\n\ncliente não cadastrado! Favor cadastrar na opção 2 no menu\n\n"); if (consulcliente!= -1 ){ //O programa só vai entrar na opção do produto se o código do cliente for válido printf("código do Produto...: "); while (consulproduto < 0) { printf("\n Código Inválido! Por favor, digite um código válido.: "); for (i=0; i < 1000; i++) { if (consulproduto == cod[i]) { printf("descrição.:%c", desc[i]); printf("digite Qtde adquirida pelo cliente.: "); scanf("%d", &qtd); while (consulproduto < 0) { printf("\n Código Inválido! Por favor, digite um código válido.: "); if (qtd > estoque[i]) { //verifica se tem estoque disponivel do produto printf("qtde Indisponível no estoque"); printf("estoque atual.:%d",estoque[i]); else{ estoque[i] = estoque[i] - qtd;
printf("\n **Cadastro efetuado com sucesso** \n"); //se o código foi encontrado não é necessário percorrer o vetor else { if (i == 999) { 1\n\n"); printf("\n\nproduto não cadastrado no sistema! Favor cadastrar produto na opção case 5: //alteração de dados do { printf("\n\n **Alteração de dados do produto** \n\n"); printf("digite código ou -1 pra sair.: "); while (consulproduto < -1) { printf("código Inválido! Por favor digite um código válido.: "); if (consulproduto!= -1) { for (i=0; i < 1000; i++) { if (consulproduto == cod[i]) { do { printf("qual dos itens abaixo você deseja alterar.: \n"); printf("<1> Codigo\n"); printf("<2> Descrição\n"); printf("<3> Preço de Compra"); printf("<4> Preço de Venda");
printf("<0> Voltar"); printf("digite uma opção.: "); scanf("%d", &op2); switch (op2) { case 1: printf("digite o novo código.: "); scanf("%d", &cod[i]); while (cod[i] < 0) { printf("\ncódigo Inválido! Por favor, digite um código acima de 0.: "); scanf("%d", &cod[i]); printf("\n\n **Código alterado com sucesso** \n\n"); case 2: printf("digite a nova descrição.: "); scanf("%c", desc[i]); printf("\n\n **Descrição alterada com sucesso** \n\n"); case 3: printf("digite o novo preço de compra.: "); scanf("%e", &pcompra[i]); while (pcompra[i] <= 0) { printf("preço Inválido! Por favor digite novamente");
scanf("%lf", &pcompra); printf("\n\n **Preço de compra alterado com sucesso** \n\n"); case 4: printf("digite o novo preço de venda.: "); scanf("%f", &pvenda); while (pvenda[i] <= 0) { printf("preço Inválido! Por favor digite novamente"); scanf("%f", &pvenda); printf("\n\n **Preço de veda alterado com sucesso** \n\n"); default: printf("opção Inválida! Digite novamente.: "); while (op2!= 0); else { if (i == 999) { printf("\nproduto não cadastrado! Por favor, cadastrar na opção 1\n"); while (consulproduto!= -1); case 6: printf("\n\n **Entrada no Estoque** \n\n");
do { printf("digite código do produto ou -1 para sair.: "); while (consulproduto < -1) { printf("\ncódigo Inválido! Por favor, digite um código válido.: "); for (i=0; i < 1000; i++) { if (consulproduto == cod[i]) { printf("qtde a entrar.: "); scanf("%d", &entradaestoque); while (entradaestoque <= 0) { printf("\nquantidade Inválida! Por favor, digite uma quantidade maior que 0.: "); scanf("%d", &entradaestoque); estoque[i] = estoque[i] + entradaestoque; printf("\n **Entrada efetuada com sucesso** \n"); while (consulproduto!= -1); case 0: printf("\n\n **Obrigado por utilizar o programa** \n\n"); printf("\n\n **Fim do Programa** \n\n"); default: printf("opção Inválida! Digite novamente"); while (op!= 0);