Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <time.h>
- #include <string.h>
- #define range 1000+1
- typedef struct
- {
- int dia;
- int mes;
- char nome[200]; // nome com espaços
- char nome2[200];// nome sem espaços
- float valor;
- int codigo_de_venda;
- } Entrada_dados;
- /*prototipo das funcoes*/
- void opcao1(Entrada_dados dados[],int k);
- void opcao2(Entrada_dados dados[],int k);
- void opcao3(Entrada_dados dados[],int k);
- void opcao4(Entrada_dados dados[],int k);
- void opcao5(Entrada_dados dados[],int k);
- void opcao6();
- void limpa();
- /*prototipo das funcoes*/
- FILE *arquivo;
- void limpa()
- {
- for (int i=0;i<100;i++)
- printf("\n");
- }
- void opcao1(Entrada_dados dados[],int k)
- {
- if (k==0)
- arquivo = fopen("vendas.txt","w");
- else
- arquivo = fopen("vendas.txt","a");
- int p=0;
- while(p<200) //inicializa o vetor vazio
- {
- dados[k].nome2[p] ='\0';
- p++;
- }
- printf("\n\t\tVoce selecionou a opcao (1)\n\n");
- printf("Insira o valor do produto:R$:");
- scanf("%f",&dados[k].valor);
- printf("Insira o dia: ");
- scanf("%d",&dados[k].dia);
- printf("Insira o mes: ");
- scanf("%d",&dados[k].mes);
- printf("Insira o nome do vendedor:");
- scanf(" %[^\n]s",&dados[k].nome);
- int tam = strlen(dados[k].nome);
- int j=0;
- for(p=0; p<tam;p++)
- {
- if (dados[k].nome[p]!=' ')
- {
- dados[k].nome2[j] = dados[k].nome[p];
- j++;
- }
- }
- dados[k].codigo_de_venda = rand() % range;
- int i=0;
- while (i<k)
- {
- if(dados[k].codigo_de_venda==dados[i].codigo_de_venda)
- {
- dados[k].codigo_de_venda = rand() % range;
- i=0;
- }
- else
- i++;
- }
- fprintf(arquivo,"%d ",dados[k].codigo_de_venda);
- fprintf(arquivo,"%s ",dados[k].nome2);
- fprintf(arquivo,"%.2f ",dados[k].valor);
- fprintf(arquivo,"%d ",dados[k].dia);
- fprintf(arquivo,"%d \n",dados[k].mes);
- fclose(arquivo);
- limpa();
- }
- void opcao2(Entrada_dados dados[],int k)
- {
- if (k==0)
- {
- printf("\nPrimeiro insira os dados.\n");
- }
- else
- {
- arquivo = fopen("vendas.txt","w");
- int x=0;
- k--;
- int j=0,p=0;
- printf("\n\t\tVoce selecionou a opcao (2)\n\n");
- int codigo;
- printf("Insira o codigo da venda: ");
- scanf("%d",&codigo);
- for(p=0;j<=k;p++)
- {
- if(dados[p].codigo_de_venda==codigo)
- {
- for(j=0;j<p;j++)
- {
- fprintf(arquivo,"%d ",dados[j].codigo_de_venda);
- fprintf(arquivo,"%s ",dados[j].nome2);
- fprintf(arquivo,"%.2f ",dados[j].valor);
- fprintf(arquivo,"%d ",dados[j].dia);
- fprintf(arquivo,"%d \n",dados[j].mes);
- }
- for(j=p;j<k;j++)
- {
- fprintf(arquivo,"%d ",dados[j+1].codigo_de_venda);
- fprintf(arquivo,"%s ",dados[j+1].nome2);
- fprintf(arquivo,"%.2f ",dados[j+1].valor);
- fprintf(arquivo,"%d ",dados[j+1].dia);
- fprintf(arquivo,"%d \n",dados[j+1].mes);
- }
- dados[p].codigo_de_venda=0;
- dados[p].valor=0;
- while(x<200) //inicializa o vetor vazio
- {
- dados[p].nome2[x] ='\0';
- x++;
- }
- dados[p].dia=0;
- dados[p].mes=0;
- k--;
- }
- }
- }
- fclose(arquivo);
- }
- void opcao3(Entrada_dados dados[],int k)
- {
- arquivo=fopen("vendas.txt","r");
- int p=0;
- p=0;
- char nomeBusca[200];
- char nomeBuscaFormatado[200];
- while(p<200) //inicializa o vetor vazio
- {
- nomeBuscaFormatado[p] ='\0';
- p++;
- }
- if (arquivo==NULL)
- {
- printf("Primeiro insira os dados.\n");
- }
- else
- {
- printf("\n\t\tVoce selecionou a opcao (3)\n\n");
- printf("Insira o nome do vendedor:");
- scanf(" %[^\n]s",&nomeBusca);
- int tam = strlen(nomeBusca);
- int j=0;
- p=0;
- int resultado;
- for(p=0; p<tam;p++)
- {
- if (nomeBusca[p]!=' ')
- {
- nomeBuscaFormatado[j]=nomeBusca[p];
- j++;
- }
- }
- j=0;
- while (j<=k)
- {
- resultado = strcmp(nomeBuscaFormatado,dados[j].nome2);
- if(resultado==0)
- {
- printf("Codigo da venda:%d \n",dados[j].codigo_de_venda);
- printf("Valor da venda R$:%.2f \n",dados[j].valor);
- printf("Data da venda: %d/%d \n",dados[j].dia,dados[j].mes);
- }
- j++;
- }
- }
- fclose(arquivo);
- }
- void opcao4(Entrada_dados dados[],int k)
- {
- arquivo=fopen("vendas.txt","r");
- if (arquivo==NULL)
- {
- printf("Primeiro insira os dados.\n");
- }
- else
- {
- int p=0;
- p=0;
- char nomeBusca[200];
- char nomeBuscaFormatado[200];
- while(p<200) //inicializa o vetor vazio
- {
- nomeBuscaFormatado[p] ='\0';
- p++;
- }
- printf("\n\t\tVoce selecionou a opcao (4)\n\n");
- printf("Insira o nome do vendedor:");
- scanf(" %[^\n]s",&nomeBusca);
- int tam = strlen(nomeBusca);
- int j=0;
- p=0;
- int resultado;
- for(p=0; p<tam;p++)
- {
- if (nomeBusca[p]!=' ')
- {
- nomeBuscaFormatado[j]=nomeBusca[p];
- j++;
- }
- }
- int dia=0, mes=0,o;
- printf("Deseja listar as vendas do dia ou do mes?\n");
- printf("Dia: (1)\nMes: (2)");
- scanf("%d",&o);
- if(o==1)
- {
- printf("Insira o dia e o mes (D/M):");
- scanf("%d %d",&dia,&mes);
- }
- if(o==2)
- {
- printf("Insira o mes:");
- scanf("%d",&mes);
- }
- j=0;
- while (j<=k)
- {
- resultado = strcmp(nomeBuscaFormatado,dados[j].nome2);
- if(resultado==0)
- {
- if(o==1)
- {
- if ((dia==dados[j].dia)&&(mes==dados[j].mes))
- {
- printf("Codigo da venda:%d \n",dados[j].codigo_de_venda);
- printf("Valor da venda R$:%.2f \n",dados[j].valor);
- printf("Data da venda: %d/%d \n",dados[j].dia,dados[j].mes);
- }
- }
- if((o==2) && (mes==dados[j].mes))
- {
- printf("Codigo da venda:%d \n",dados[j].codigo_de_venda);
- printf("Valor da venda R$:%.2f \n",dados[j].valor);
- printf("Data da venda: %d/%d \n",dados[j].dia,dados[j].mes);
- }
- }
- j++;
- }
- }
- fclose(arquivo);
- }
- void opcao5(Entrada_dados dados[],int k)
- {
- arquivo=fopen("vendas.txt","r");
- if (arquivo==NULL)
- {
- printf("Primeiro insira os dados.\n");
- }
- else
- {
- float soma=0;
- int p=0;
- p=0;
- char nomeBusca[200];
- char nomeBuscaFormatado[200];
- while(p<200) //inicializa o vetor vazio
- {
- nomeBuscaFormatado[p] ='\0';
- p++;
- }
- printf("\n\t\tVoce selecionou a opcao (5)\n\n");
- printf("Insira o nome do vendedor:");
- scanf(" %[^\n]s",&nomeBusca);
- int tam = strlen(nomeBusca);
- int j=0;
- p=0;
- int resultado;
- for(p=0; p<tam;p++)
- {
- if (nomeBusca[p]!=' ')
- {
- nomeBuscaFormatado[j]=nomeBusca[p];
- j++;
- }
- }
- int dia, mes,o;
- printf("Deseja listar as vendas do dia ou do mes?\n");
- printf("Dia: (1)\nMes: (2)");
- scanf("%d",&o);
- if(o==1)
- {
- printf("Insira o dia e o mes (D M):");
- scanf("%d %d",&dia,&mes);
- }
- if(o==2)
- {
- printf("Insira o mes:");
- scanf("%d",&mes);
- }
- j=0;
- while (j<=k)
- {
- resultado = strcmp(nomeBuscaFormatado,dados[j].nome2);
- if(resultado==0)
- {
- if((o==1) && (dia==dados[j].dia) && (mes==dados[j].mes))
- soma = soma + dados[j].valor;
- if((o==2) && (mes==dados[j].mes))
- soma = soma + dados[j].valor;
- }
- j++;
- }
- printf("Vendas nesse diaR$:%.2f",soma);
- printf("Vendas nesse mesR$:%.2f",soma);
- }
- fclose(arquivo);
- }
- void opcao6()
- {
- printf("Voce parou a o programa");
- }
- int menu()
- {
- int opcao;
- printf("\n\n\n\n\n\n\n");
- printf("\t########################################################\n");
- printf("\t# #\n");
- printf("\t# Programa de Gerenciamento de vendas #\n");
- printf("\t# #\n");
- printf("\t########################################################\n\n\n");
- printf("\t\tEscolha uma opcao.....\n");
- printf("(1):Insira uma nova venda\n");
- printf("(2):Remover venda\n");
- printf("(3):Mostrar todas as vendas de um vendedor\n");
- printf("(4):Mostrar todas as vendas de um vendedor em uma data \n");
- printf("(5):Mostrar o valor total de vendas de um vendedor em uma determinada data\n");
- printf("(6):Fechar o programa\t\t");
- scanf("%d",&opcao);
- return opcao;
- }
- int main()
- {
- Entrada_dados dados[999];
- int contador=0, resultado,k=0;
- srand(time(NULL));
- while (contador==0)
- {
- resultado = menu();
- if (resultado==1)
- {
- opcao1(dados,k);
- k++;
- //n++;
- }
- if (resultado==2)
- opcao2(dados,k);
- if (resultado==3)
- opcao3(dados,k);
- if (resultado==4)
- opcao4(dados,k);
- if (resultado==5)
- opcao5(dados,k);
- if (resultado==6)
- {
- opcao6();
- contador=1;
- }
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement