gRoOvE 0 Denunciar post Postado Junho 7, 2008 Bom galera, estou fazendo um trabalho para controle de estoque, mas estou meio perdido...vou postar o que é pedido no exercicio e oq eu já consegui fazer, se puderem dar opiniões ai, do que melhorar, arrumar, organizar, ficarei grato. Preciso de uma dica para organizar as variáveis tb, sempre que preciso alterar alguma fico td perdido. Exercicio: Fazer um algoritmo e o programa em C para controle de estoque da seguinte forma. Toda linha de codigo deve ter seu respectivo comentario. a) Cadastro dos itens - item/descrição - preço unitário - qtd em estoque - qtd vendida/comercializada B) Relatório de estoque QTD item/desc R$unit estoq | vend cartucho HP 53.40 15 78 cabo USB 9.80 13 12 dvd sony 0.95 1000 58300 c) Apresentar as seguintes informações - valor total em estoque (R$) - valor total comercializado (faturamento) - item mais vendido (quantidade) - item que gerou o maior faturamento (qtd * R$ unitario) Estoque Total R$___ d) Relatório de Compras Mesmo relatório de estoque obs: I) neste relatorio (compras) devam constar os itens. - com menos de 5 unidades e valor maior que R$ 5,00 - com menos de 50 unidades e valor menor ou igual a R$ 5,00 #include "stdio.h" #include "string.h" #include "stdlib.h" #include "conio.h" #define L 3 int main(void) { //Variaveis char item[L][60]; float preco[L]; int qtd[L][2]; int i; float totalEst = 0, totalVend = 0; int maisVend = 0; float maiorFatu = 0; char descricao[4][120]; float estoqueT; float faturamento[L] = {0,0}; //Entrada for(i=0;i<L;i++) { printf("\nDescricao do Item: "); gets(item[i]); fflush(stdin); printf("Preco Unitario: "); scanf("%f",&preco[i]); fflush(stdin); printf("Quantidade em Estoque: "); scanf("%d",&qtd[i][0]); //Estoque fflush(stdin); printf("Quantidade Vendida: "); scanf("%d",&qtd[i][1]); //Vendido fflush(stdin); //Processamento totalEst = totalEst + (preco[i] * qtd[i][0]); //Estoque totalVend = totalVend + (preco[i] * qtd[i][1]); //Vendido faturamento[i] = preco[i] * qtd[i][1]; if (qtd[i][1] > maisVend) { maisVend = qtd[i][1]; strcpy(descricao[0],item[i]); } if(faturamento[i] > maiorFatu ) { maiorFatu = faturamento[i]; strcpy(descricao[1],item[i]); } if((qtd[i][0]) && (preco[i] > 5.0)) { if((qtd[i][0] < 50) && (preco[i] <= 50)) { int listacompras() { puts("\n[---------------------------- RELATORIO DE COMPRAS ----------------------]"); printf("\n|=======================================================================|"); printf("\n| DESCRICAO| PRECO| ESTOQUE| VENDIDO|"); printf("\n|=======================================================================|"); for(i=0;i<L;i++) { printf("\n|%25s|%13.2f|%15d|%15d|", item[i],preco[i],qtd[i][0],qtd[i][1]); printf("\n|-----------------------------------------------------------------------|"); } } } } } //Saida puts("\n[---------------------------- RELATORIO DOS ITEMS ----------------------]"); printf("\n|=======================================================================|"); printf("\n| DESCRICAO| PRECO| ESTOQUE| VENDIDO|"); printf("\n|=======================================================================|"); for(i=0;i<L;i++) { printf("\n|%25s|%13.2f|%15d|%15d|", item[i],preco[i],qtd[i][0],qtd[i][1]); printf("\n|-----------------------------------------------------------------------|"); } printf("\n\nTotal em Estoque: R$%.2f",totalEst); printf("\nTotal Vendido: R$%.2f",totalVend); printf("\n"); printf("\nItem mais vendido: %s",descricao[0]); printf("\nItem que gerou mais faturamento: %s",descricao[1]); listacompras(); puts("\n\nDigite algo para sair"); getch(); }Obs: Não estou conseguindo fazer rodar essa função, o que está errado ?? Compartilhar este post Link para o post Compartilhar em outros sites
_Isis_ 202 Denunciar post Postado Junho 8, 2008 Não use gets. Faz mais sentido fazer uma struct Produto com os dados e declarar um array dessa struct. Obs: Não estou conseguindo fazer rodar essa função, o que está errado ?? Isso é muito genérico.Se o compilador cospe algum erro,cole. Compartilhar este post Link para o post Compartilhar em outros sites
gRoOvE 0 Denunciar post Postado Junho 8, 2008 Isis, não sei usar struct ainda...usei sempre o visual, mas deu pau nessa m*****, um erro q abri outro tópico, quase nao sei mexer com DEV, vou colocar oq ele mostra lah [linker error] undefined reference to 'listacompras' id returned exit status [build error] [estoque.exe] error 1 Compartilhar este post Link para o post Compartilhar em outros sites
_Isis_ 202 Denunciar post Postado Junho 8, 2008 usei sempre o visual, mas deu pau nessa m*****, Se sempre deu pau já era hora de ver o que acontece ou trocar. Undefined reference acontece porque você não definiu alguma coisa. Não é id. É Ld,um linker. Compartilhar este post Link para o post Compartilhar em outros sites
gRoOvE 0 Denunciar post Postado Junho 8, 2008 não deu tempo ainda...desisti da função "/ tem algum macete pra organizar a declaração das variáveis ?? #include "stdio.h" #include "string.h" #include "stdlib.h" #include "conio.h" #define L 400 void main(void) { //Variaveis char item[L][60]; float preco[L]; int qtd[L][2]; int i; float totalEst = 0, totalVend = 0; int maisVend = 0; float maiorFatu = 0; char descricao[4][120]; float estoqueT = 0; float faturamento[L]; int ultimo = 0; //Entrada puts("Digite zero na descricao do item para sair!"); for(i=0;i<L;i++) { printf("\nDescricao do Item: "); gets(item[i]); if(item[i][0] == '0') { break; } fflush(stdin); printf("Preco Unitario: "); scanf("%f",&preco[i]); fflush(stdin); printf("Quantidade em Estoque: "); scanf("%d",&qtd[i][0]); //Estoque fflush(stdin); printf("Quantidade Vendida: "); scanf("%d",&qtd[i][1]); //Vendido fflush(stdin); ultimo = i; //Processamento totalEst = totalEst + (preco[i] * qtd[i][0]); //Estoque totalVend = totalVend + (preco[i] * qtd[i][1]); //Vendido faturamento[i] = preco[i] * qtd[i][1]; if (qtd[i][1] > maisVend) { maisVend = qtd[i][1]; strcpy(descricao[0],item[i]); } if(faturamento[i] > maiorFatu ) { maiorFatu = faturamento[i]; strcpy(descricao[1],item[i]); } } //Saida puts("\n[---------------------------- RELATORIO DOS ITEMS ----------------------]"); printf("\n|=======================================================================|"); printf("\n| DESCRICAO| PRECO| ESTOQUE| VENDIDO|"); printf("\n|=======================================================================|"); for(i=0;i<=ultimo;i++) { printf("\n|%25s|%13.2f|%15d|%15d|", item[i],preco[i],qtd[i][0],qtd[i][1]); printf("\n|-----------------------------------------------------------------------|"); } printf("\n\nTotal em Estoque: R$%.2f",totalEst); printf("\nTotal Vendido: R$%.2f",totalVend); printf("\n"); printf("\nItem mais vendido: %s",descricao[0]); printf("\nItem que gerou maior faturamento: %s",descricao[1]); puts("\n\n\n[---------------------------- RELATORIO PARA COMPRAS ---------------------]"); printf("\n|=======================================================================|"); printf("\n| DESCRICAO| PRECO| ESTOQUE| VENDIDO|"); printf("\n|=======================================================================|"); for(i=0;i<=ultimo;i++) { if( ((qtd[i][0] < 5) && (preco[i] > 5.0)) || ((qtd[i][0] < 50) && (preco[i] <= 5.0)) ) { printf("\n|%25s|%13.2f|%15d|%15d|", item[i],preco[i],qtd[i][0],qtd[i][1]); printf("\n|-----------------------------------------------------------------------|"); } } puts("\n\nDigite algo para sair"); getch(); } Compartilhar este post Link para o post Compartilhar em outros sites
quitZAUMMM 18 Denunciar post Postado Junho 9, 2008 certo você naum sabe mecher com structs, + jah pode usar, c puder a gente te dar uma força! []'s Compartilhar este post Link para o post Compartilhar em outros sites
gRoOvE 0 Denunciar post Postado Junho 9, 2008 tem algum link pra eu me interar sobre o assunto ?? um struct faz o que basicamente ?? Compartilhar este post Link para o post Compartilhar em outros sites
_Isis_ 202 Denunciar post Postado Junho 9, 2008 http://sandbox.mc.edu/~bennet/cs220/codeex/struct_c.html Compartilhar este post Link para o post Compartilhar em outros sites
gRoOvE 0 Denunciar post Postado Junho 14, 2008 não tem em port não ? :P Compartilhar este post Link para o post Compartilhar em outros sites
quitZAUMMM 18 Denunciar post Postado Junho 14, 2008 port? Compartilhar este post Link para o post Compartilhar em outros sites
_Isis_ 202 Denunciar post Postado Junho 14, 2008 É. portugues. Boa chance pra comecar a se habituar com idiomas.Sério. Nem idioma resolve se a criatura que escreve a página não sabe o que está falando ou se nem especifica o ambiente. Quando se fala em computação é bom pelo menos saber inglês e não ter preguiça de ler só porque não é língua materna. Conheci algumas pessoas que quando eu dava uma referência em inglês apelavam pro "em inglês é difícil", mas você não vai ver jargões de medicina e química numa página de programação pra iniciantes. Dicionário existe p/ isso. E não. Google translator não é uma alternativa.Processamento de linguagem natural foi pro brejo faz uns tempos. Compartilhar este post Link para o post Compartilhar em outros sites
gRoOvE 0 Denunciar post Postado Junho 15, 2008 isis eu sei que o inglês é indispensável, mas infelizmente não tenho muito conhecimento em inglês, até consigo ler uma coisa ou otra, mas ler algo em inglês sobre um assunto que não faço idéia do que seja fica um pouco dificil, mas obrigado pelo link Compartilhar este post Link para o post Compartilhar em outros sites