Sai_Bot

funções_uso

Jun 5th, 2016
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 6.66 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <conio.h>
  4.  
  5. int i;
  6.  
  7. struct estoque {
  8.     char serie[100];
  9.     char nome[50];
  10.     char vencimento[8];
  11.     float preco;
  12.     float lucro;
  13.     int quantidade;
  14. } reg[1000];
  15.  
  16.  
  17. int MENU ()
  18. {    
  19.  
  20.     void INSERE ();
  21.     void EXCLUIR (void);
  22.     void ALTERAR (void);
  23.     void RELATORIO (void);
  24.     void SALVAR ();
  25.    
  26.     int opt;
  27.    
  28.     printf ("\t\t ***************************\n");
  29.     printf ("\t\t *** MENU GERAL DO ESTOQUE***\n");
  30.     printf ("\t\t ***************************\n\n");
  31.    
  32.     printf ("1 -> INSERIR PRODUTO\n\n");
  33.     printf ("2 -> EXCLUIR PRODUTO\n\n");
  34.     printf ("3 -> ALTERAR INFORMACOES DO PRODUTO\n\n");
  35.     printf ("4 -> RELATORIO DOS PRODUTOS\n\n");
  36.     printf ("5 -> SAIR\n\n");
  37.    
  38.     printf ("ENTRE COM UMA DAS OPCOES ACIMA: ");
  39.     scanf ("%d", &opt);
  40.     fflush (stdin);
  41.    
  42.     while (opt != 1 && opt != 2 && opt != 3 && opt != 4 && opt!= 5)
  43.     {
  44.         printf ("\n\n Opcao invalida, entre com uma opcao valida.\n\n");
  45.         printf ("1 -> INSERIR PRODUTO\n\n");
  46.         printf ("2 -> EXCLUIR PRODUTO\n\n");
  47.         printf ("3 -> ALTERAR INFORMACOES DO PRODUTO\n\n");
  48.         printf ("4 -> RELATORIO DOS PRODUTOS\n\n");
  49.         printf ("5 -> SAIR\n\n");
  50.        
  51.         printf ("ENTRE COM UMA DAS OPCOES ACIMA: ");
  52.         scanf ("%d", &opt);
  53.     }
  54.         switch (opt)
  55.         {
  56.             case 5:
  57.                 break;
  58.             case 1:
  59.                 INSERE ();
  60.                 break;
  61.             case 2:
  62.                 EXCLUIR ();
  63.                 break;
  64.             case 3:
  65.                 ALTERAR ();
  66.                 break;
  67.             case 4:
  68.                  RELATORIO ();
  69.                  break;
  70.         }
  71.    
  72. }
  73.  
  74. void INSERE ()
  75. {
  76.     int MENU ();
  77.     void SALVAR ();
  78.    
  79.     char caso;
  80.     char salva;
  81.     int k;
  82.    
  83.     system ("cls");
  84.     while (caso != 'N' && caso != 'n')
  85.     {
  86.         printf ("\t\n\n ***INSERCAO DE PRODUTO %d ***\n\n", i+1);
  87.            
  88.         printf ("Entre com o código de serie: ");
  89.         scanf ("%s", &reg[i].serie);
  90.         fflush (stdin);
  91.            
  92.         printf ("Entre com o nome: ");
  93.         scanf ("%s", &reg[i].nome);
  94.         fflush (stdin);
  95.            
  96.         printf ("Entre com a data de vencimento: ");
  97.         scanf ("%s", &reg[i].vencimento);
  98.         fflush (stdin);
  99.            
  100.         printf ("Entre com o preco do produto: ");
  101.         scanf ("%f", &reg[i].preco);
  102.         fflush (stdin);
  103.            
  104.         printf ("Entre com a procentagem de lucro desejado na venda do produto: ");
  105.         scanf ("%f", &reg[i].lucro);
  106.         fflush (stdin);
  107.            
  108.         printf ("Entre com a quantidade do produto a ser estocado: ");
  109.         scanf ("%d", &reg[i].quantidade);
  110.         fflush (stdin);
  111.        
  112.         printf ("Existe um proximo produto a ser alocado? [S] para SIM / [N] para NAO\n");
  113.         scanf ("%c", &caso);
  114.         fflush (stdin);
  115.        
  116.         while (caso != 'S' && caso != 's' && caso != 'N' && caso != 'n')
  117.         {
  118.             printf ("\n\n Opcao invalida, entre com uma opcao valida.\n\n");
  119.             printf ("Existe um proximo produto a ser alocado? [S] para SIM / [N] para NAO\n");
  120.             scanf ("%c", &caso);
  121.             fflush (stdin);
  122.         }  
  123.         i++;
  124.         k++;
  125.     }
  126.         printf ("Voce tem certeza que deseja salvar os produtos? [S] para SIM / [N] para NAO\n");
  127.         scanf ("%c", &salva);
  128.         fflush (stdin);
  129.         while(salva != 'S' && salva != 's' && salva != 'N' && salva != 'n')
  130.         {
  131.             printf ("\n\n Opcao invalida, entre com uma opcao valida.\n\n");
  132.             printf ("Voce tem certeza que deseja salvar os produtos? [S] para SIM / [N] para NAO\n");
  133.             scanf ("%c", &salva);
  134.             fflush (stdin);
  135.         }
  136.         if (salva == 'S' || salva == 's')
  137.         {
  138.             SALVAR ();
  139.         }
  140.         if (salva == 'N' || salva == 'n')
  141.         {
  142.             printf ("\n\nTodas as suas insercoes foram desfeitas.\n");
  143.             printf ("\nAperte uma tecla para continuar.\n\n");
  144.             system ("pause");
  145.             i=i-k;
  146.         }
  147.     system ("cls");
  148.     MENU ();
  149. }
  150.  
  151. void EXCLUIR ()
  152. {
  153.    
  154. }
  155. void ALTERAR ()
  156. {
  157.    
  158. }
  159.  
  160. void SALVAR ()
  161. {
  162.         printf ("Da um jeito de colocar aqui para estoque_saida.");
  163.         system ("pause");
  164.         system ("cls");
  165. }
  166.  
  167. void RELATORIO ()
  168. {
  169.     int MENU ();
  170.    
  171.     int k=0;
  172.     int opt;
  173.    
  174.     system ("cls");
  175.     printf ("\t\tDeseja de acessar qual relatorio?\n\n");
  176.     printf ("1 - PRODUTOS EM ESTOQUE\n\n");
  177.     printf ("2 - PRODUTOS ADCIONADOS NA ULTIMA ATUALIZACAO\n\n");
  178.     printf ("ENTRE COM UMA DAS OPCOES ACIMA: ");
  179.     scanf ("%d", &opt);
  180.     if (opt == 1)
  181.     {
  182.         for (k=0; k<i; k++)
  183.         {
  184.             printf ("\n\n\t\t***INFORMACOES DO %d.o PRODUTO***\n\n", k+1);
  185.                
  186.             printf ("Numero de serie: %s",reg[k].serie);
  187.             printf ("\nNome: %s", reg[k].nome);
  188.             printf ("\nVencimento: %s", reg[k].vencimento);
  189.             printf ("\nPreco do produto: %.2f", reg[k].preco);
  190.             printf ("\nMargem de lucro: %.2f %", reg[k].lucro);
  191.             printf ("\nQuantidade em estoque: %d", reg[k].quantidade);
  192.         }
  193.         system ("pause");
  194.         system ("cls");
  195.         MENU ();
  196.     }
  197.    
  198.     if (opt == 2)
  199.     {    
  200.         for (k=0; k<i; k++)
  201.         {
  202.             printf ("\n\n\t\t***INFORMACOES DO %d.o PRODUTO***\n\n", k+1);
  203.                
  204.             printf ("Numero de serie: %s",reg[k].serie);
  205.             printf ("\nNome: %s", reg[k].nome);
  206.             printf ("\nVencimento: %s", reg[k].vencimento);
  207.             printf ("\nPreco do produto: %.2f", reg[k].preco);
  208.             printf ("\nMargem de lucro: %.2f", reg[k].lucro);
  209.             printf ("\nQuantidade em estoque: %d", reg[k].quantidade);
  210.            
  211.         }
  212.         system ("pause");
  213.         system ("cls");
  214.         MENU ();
  215.     }
  216. }
  217. void ABRIR ()
  218. {
  219.     FILE *estoque_entrada;
  220.     estoque_entrada = fopen("estoque_entrada.txt","r");
  221.  
  222.     FILE *estoque_saida;
  223.     estoque_saida = fopen("estoque_saida.txt","w");
  224. }
  225.  
  226. int main ()
  227. {  
  228.     int MENU ();
  229.    
  230.     FILE *estoque_entrada;
  231.     estoque_entrada = fopen("estoque_entrada.txt","r");
  232.  
  233.     FILE *estoque_saida;
  234.     estoque_saida = fopen("estoque_saida.txt","w");
  235.    
  236.     int opt;
  237.     int tamanho;
  238.    
  239.    
  240.     if (estoque_entrada == NULL)
  241.     {
  242.         printf ("ARQUIVO NAO PODE SER ABERTO!\n");
  243.         printf ("ENCERRANDO O PROGRAMA!");
  244.     }
  245.    
  246.     fscanf (estoque_entrada, "%d", &tamanho);
  247.     fprintf (estoque_saida, "%d\n", tamanho);
  248.    
  249.     for (i=0; i<tamanho; i++)
  250.     {
  251.         fscanf (estoque_entrada, "%s", &reg[i].serie);
  252.         fscanf (estoque_entrada, "%s", &reg[i].nome);
  253.         fscanf (estoque_entrada, "%s", &reg[i].vencimento);
  254.         fscanf (estoque_entrada, "%f", &reg[i].preco);
  255.         fscanf (estoque_entrada, "%f", &reg[i].lucro);
  256.         fscanf (estoque_entrada, "%d", &reg[i].quantidade);        
  257.     }
  258.    
  259.     MENU ();
  260.    
  261. }
Advertisement
Add Comment
Please, Sign In to add comment