Ir para conteúdo

gribes

Membros
  • Postagens

    1
  • Registro em

  • Última visita

Últimos Visitantes

O bloco dos últimos visitantes está desativado e não está sendo visualizado por outros usuários.

Conquistas de gribes

0

Reputação

  1. Olá!! Estou com dificuldade em terminar uma atividade em linguagem c, onde se pede: Em um sistema de comércio eletrônico os dados são armazenados em 2 vetores e 1 matriz: float clientes[10] = {1,25,13,...} // ler códigos de clientes até o usuário informar o valor -1; float produtos[10] = {10,2,5,3,...} // ler códigos de produtos até o usuário informar o valor -1; float vendas[30][4] = {{1,10,3.5,11},{1,2,9,7},{25,3,4,4},...}ler a quádrupla (código do cliente, código do produto, quantidade, preço unitário} até o usuário informar o valor -1 para o código do cliente; Faça um programa em C que: leia os vetores e a matriz que serão informadas pelo usuário - os vetores e a matriz poderão ser declarados como variáveis globais; contenha funções/procedimentos para: a) calcular o valor total gasto por um cliente cujo o código será passado como parâmetro; b) calcular o valor médio gasto pelos clientes; c) calcular e mostrar na tela o valor já vendido de cada produto; d) encontrar o produto que apresentou o maior faturamento (produto mais vendido considerando o valor total vendido deste produto). O programa já esta quase todo pronto, porém estou com dificuldade na ultima função que pede o produto com maior faturamento, sendo que no meu programa o resultado é sempre o ultimo produto declarado na matriz (mesmo ele nao sendo o produto de maior faturamento). codigo: #include <stdio.h> //função ler vetor dos clientes int ler_clientes(float clientes[10]){ int a, i, pos; float num; printf("Informe os valores , 1 em cada linha. Informe -1 para finalizar.\n"); scanf("%f\n", &num); for(pos=0; num!=-1 && pos<10; pos++){ clientes[pos]=num; scanf("%f", &num); } return pos; } //função ler vetor dos produtos int ler_produtos(float produtos[10]){ int b, i, pos; float num; printf("Informe os valores , 1 em cada linha. Informe -1 para finalizar.\n"); scanf("%f\n", &num); for(pos=0; num!=-1 && pos<10; pos++){ produtos[pos]=num; scanf("%f", &num); } return pos; } //função ler matriz de vendas int ler_vendas(float vendas[30][4]){ int c, i, j, pos; float num; printf("Informe os valores , 1 em cada linha. Informe -1 para finalizar.\n"); scanf("%f\n", &num); for(pos=0; num!=-1 && pos<10; pos++){ for(j=0; j<4; j++){ vendas[pos][j]=num; scanf("%f", &num); } } return pos; } //função que retorna o gasto do cliente float gasto_clientes(float vendas[30][4], float cod1, int p3){ int i, j; float valor=0, soma=0; for(i=0; i<p3; i++){ //percorre linhas da matriz vendas if(cod1==vendas[i][0]){ valor=vendas[i][2]*vendas[i][3]; soma=soma+valor; } } return soma; } //função que retorna o gasto medio dos clientes float gasto_medio(float vendas[30][4], int p1, int p3){ int a, i; float valor=0, soma=0, media=0; for(i=0; i<p3; i++){ valor=vendas[i][2]*vendas[i][3]; soma=soma+valor; } for(a=0; a<p1; a++){ //percorre vetor de clientes for(i=0; i<p3; i++){ //percorre linhas da matriz vendas media=soma/p1; } } return media; } //função que retorna o valor ja vendido de cada produto void venda_produto(float produtos[10], float vendas[30][4], int p2, int p3){ int b, i; float valor=0, soma=0; for(b=0; b<p2; b++){ //percorre vetor produtos valor=0; soma=0; for(i=0; i<p3; i++){ //percorre linhas da matriz vendas if(produtos[b]==vendas[i][1]){ valor=vendas[i][2]*vendas[i][3]; soma=soma+valor; } } printf("valor ja vendido do produto %f = %f\n", produtos[b], soma); } } //função que retorna o produto mais vendido float mais_vendido(float produtos[10], float vendas[30][4], int p2, int p3){ int b, i; float mais_vendido=0, valor=0, soma=0; for(b=0; b<p2; b++){ //percorre vetor produtos valor=0; soma=0; for(i=0; i<p3; i++){ //percorre matriz vendas if(produtos[b]==vendas[i][1]){ valor=vendas[i][2]*vendas[i][3]; soma=soma+valor; } } if(soma>mais_vendido){ mais_vendido=produtos[b]; } } return mais_vendido; } int main() { float clientes[10], produtos[10], vendas[30][4]; float cod; int pos1, pos2, pos3; //lendo vetor dos clientes pos1=ler_clientes(clientes); //lendo vetor dos produtos pos2=ler_produtos(produtos); //lendo matriz de vendas pos3=ler_vendas(vendas); //calcular o valor total gasto por um cliente cujo o código será passado como parâmetro printf("informe o codigo do cliente\n"); scanf("%f", &cod); printf("Valor gasto pelo cliente %f: %f\n", cod, gasto_clientes(vendas, cod, pos3)); //calcular valor medio gasto dos clientes printf("Valor medio gasto pelos clientes: %f\n", gasto_medio(vendas, pos1, pos3)); //valor ja vendido de cada produto venda_produto(produtos, vendas, pos2, pos3); //produto mais vendido printf("Produto mais vendido: %f\n", mais_vendido(produtos, vendas, pos2, pos3)); return 0; }
×
×
  • Criar Novo...