Advertisement
Guest User

Untitled

a guest
Feb 25th, 2018
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.77 KB | None | 0 0
  1. #include <conio.h>
  2. #include <stdio.h>
  3. #include <string.h>
  4. #include <stdlib.h>
  5. void MenuPrincipal();
  6. void Cadastro();
  7. void save();
  8. void read();
  9. /////////////
  10. void searchmenu();
  11. void search();
  12. void searchall();
  13. #define Max 500
  14.  
  15. typedef struct{
  16. int codigo;
  17. char nome[20];
  18. int qtd_vendida;
  19. }Ficha;
  20.  
  21. Ficha venda[Max];
  22. Ficha produto[8];
  23. int resp;
  24. int x,N,i=1,opcao;
  25. int fim=0;
  26. //PROGRAMA PRINCIPAL//
  27. int main(){
  28. MenuPrincipal();
  29. }
  30. //Menu principal//
  31. void MenuPrincipal(){
  32. do
  33. {
  34. system("cls");
  35. printf(" M E N U P R I N C I P A L\n");
  36. printf("\n1 - Cadastrar venda de um produto\n");
  37. printf("\n2 - Pesquisar produtos\n");
  38. printf("\n5 - Sair\n");
  39. printf("\nEscolha uma das opcoes:");
  40. scanf("%d",&opcao);
  41. switch (opcao){
  42. case 1:Cadastro();
  43. break;
  44. case 2:searchmenu();
  45. break;
  46. case 5:fim=1;
  47. break;
  48. default: printf("Opcao invalida\n");
  49. getch();
  50. }
  51. }while (!(fim));
  52. printf("Fim do programa");
  53. exit(0);
  54. }
  55. //rotina de cadastro//
  56. void Cadastro(){
  57. while(i<=Max){
  58. system("cls");
  59. N=i;
  60. printf("Digite o Codigo do produto\n");
  61. scanf("%d",&venda[i].codigo);
  62. fflush(stdin);
  63. printf("Digite o Nome do produto\n");
  64. gets(venda[i].nome);
  65. fflush(stdin);
  66. printf("Digite a quantidade vendida\n");
  67. scanf("%d",&venda[i].qtd_vendida);
  68. fflush(stdin);
  69. printf("\nContinuar (Y/N)");
  70. resp = getch();
  71. fflush(stdin);
  72. if(resp=='Y'|| resp =='y'){
  73. i++;
  74. }
  75. else{
  76. save();
  77. MenuPrincipal();
  78. }
  79. }printf("quatidade maxima atingida[500]!!!");
  80. }
  81.  
  82. //PESQUISA//
  83. //menu pesquisa//
  84. void searchmenu(){
  85. do
  86. { system("cls");
  87. printf("--- P E S Q U I S A ---\n");
  88. printf("\n1-Produtos\n");
  89. printf("\n2-Quantidade Total Vendida\n");
  90. printf("\n5-Voltar ao Menu Principal\n");
  91. printf("\nEscolha uma das opcoes:");
  92. scanf("%d",&opcao);
  93. switch(opcao){
  94. case 1:search();
  95. break;
  96. case 2:searchall();
  97. break;
  98. case 5:MenuPrincipal();
  99. break;
  100. default: printf("Opcao invalida\n");
  101. getch();
  102. }
  103. }while (!(fim));
  104. }
  105. //rotina de pesquisa de produtos
  106. void search(){
  107. system("cls");
  108. int codigo,a=1;
  109. printf("Digite o codigo do produto: "); scanf("%d",&codigo);
  110. printf("Nome | Quantidade\n");
  111. while(a<=N){
  112. if(codigo == venda[a].codigo){
  113. printf("%s ",venda[a].nome);
  114. printf("%d\n",venda[a].qtd_vendida);
  115. }
  116. a++;
  117. }
  118. printf("Deseja realizar nova pesquisa? (Y/N)");
  119. resp = getch();
  120. fflush(stdin);
  121. if(resp=='Y' || resp=='y'){
  122. search();
  123. }
  124. else{
  125. searchmenu();
  126. }
  127. }
  128. //rotina pesquisa total//
  129. void searchall(){
  130. system("cls");
  131. int soma_qtd = 0;
  132. int codigo,a=1;
  133. printf("Digite o codigo do produto: "); scanf("%d",&codigo);
  134. printf("Nome | Quantidade\n");
  135. while(a<=N){
  136. if(codigo == venda[a].codigo){
  137. soma_qtd+=venda[a].qtd_vendida;
  138. }
  139. a++;
  140. }
  141. for(int b=1;b<=8;b++){
  142. if(codigo == b){
  143. produto[b].qtd_vendida = soma_qtd;
  144. printf("Codigo:%d Quantidade Total:%d\n",b,produto[b].qtd_vendida);
  145. }
  146. }
  147. printf("Deseja realizar nova pesquisa? (Y/N)");
  148. resp = getch();
  149. fflush(stdin);
  150. if(resp=='Y' || resp=='y'){
  151. searchall();
  152. }
  153. else{
  154. searchmenu();
  155. }
  156. }
  157. // rotina salvar dados
  158. void save(){
  159. FILE *arq;
  160. arq = fopen("Vendas.dat","wb");
  161. fwrite(&venda,sizeof(Ficha),N,arq);
  162. fclose(arq);
  163. printf("\nDados Salvos com SUCESSO!");
  164. }
  165. //rotina ler dados
  166. void read(){
  167. FILE *arq;
  168. arq = fopen("Vendas.dat","rb");
  169. fseek(arq,sizeof(int),SEEK_SET);
  170. fread(&venda, sizeof(Ficha),N,arq);
  171. printf("Leitura de dados realizada!\n");
  172. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement