Advertisement
Jvsierra

Ex Loteria ATP 2

Sep 9th, 2018
104
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 2.89 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <conio2.h>
  3.  
  4. #define TF 100
  5.  
  6. struct TpAposta
  7. {
  8.     int NumAposta;
  9.     int QntdApostas;
  10.     int DezenasApostas[10];
  11.     int Pontos;
  12. };
  13.  
  14. int BuscaDezenas(int DezSorteadas[5], int DezApostada)
  15. {
  16.     int i = 0;
  17.    
  18.     while(i < 5 && DezSorteadas[i] != DezApostada)
  19.         i++;
  20.        
  21.     if(i < 5)
  22.         return i;
  23.     else
  24.         return -1;
  25. }
  26.  
  27. int BuscaAposta(TpAposta Aps[TF], int TL, int Chave)
  28. {
  29.     int i = 0;
  30.    
  31.     while(i < TL && Aps[i].NumAposta != Chave)
  32.         i++;
  33.        
  34.     if(i < TL)
  35.         return i;
  36.     else
  37.         return -1;
  38. }
  39.  
  40. int PontosAposta(TpAposta Ap, int DezSorteadas[5])
  41. {
  42.     int i, tot = 0;
  43.    
  44.     for(i = 0; i < Ap.QntdApostas; i++)
  45.         if(BuscaDezenas(DezSorteadas, Ap.DezenasApostas[i]) >= 0)
  46.             tot++;
  47.            
  48.     return tot;
  49. }
  50.  
  51. void CadApostas(TpAposta Aps[TF], int &TL)
  52. {
  53.     int i, NumAux;
  54.    
  55.     clrscr();
  56.    
  57.     printf("Cadastro de apostas\n\n");
  58.    
  59.     printf("Digite o numero da aposta:\n");
  60.     scanf("%d", &NumAux);
  61.    
  62.     while(TL < TF && NumAux > 0)
  63.     {
  64.         if(BuscaAposta(Aps, TL, NumAux) >= 0)
  65.             printf("Aposta ja cadastrada\n\n");
  66.         else
  67.         {
  68.             Aps[TL].NumAposta = NumAux;
  69.            
  70.             do
  71.             {
  72.                 printf("Quantidade de dezenas apostadas:\n");
  73.                 scanf("%d", &Aps[TL].QntdApostas);
  74.             }while(Aps[TL].QntdApostas < 1 || Aps[TL].QntdApostas > 10);
  75.            
  76.             for(i = 0; i < Aps[TL].QntdApostas; i++)
  77.             {
  78.                 printf("Dezena #%d:\n", i + 1);
  79.                 scanf("%d", &Aps[TL].DezenasApostas[i]);
  80.             }
  81.                    
  82.             TL++;
  83.            
  84.             printf("Aposta cadastrada\n\n");
  85.         }
  86.  
  87.        
  88.         printf("Digite o numero da aposta:\n");
  89.         scanf("%d", &NumAux);
  90.     }
  91.    
  92.     getch();
  93. }
  94.  
  95. void LeDezenasSorteadas(int DezSorteadas[5])
  96. {
  97.     int i;
  98.    
  99.     clrscr();
  100.    
  101.     printf("Leitura das dezenas sorteadas\n\n");
  102.    
  103.     for(i = 0; i < 5; i++)
  104.     {
  105.         printf("Dezena sorteada #%d:\n", i + 1);
  106.         scanf("%d", &DezSorteadas[i]);
  107.     }
  108.    
  109.     getch();
  110.    
  111. }
  112.  
  113. void RegResultados(TpAposta Aps[TF], int TL, int DezSorteadas[5])
  114. {
  115.     int i;
  116.    
  117.     if(TL > 0)
  118.         for(i = 0; i < TL; i++)
  119.             Aps[i].Pontos = PontosAposta(Aps[i], DezSorteadas);
  120. }
  121.  
  122. void ListaApostas(TpAposta Ap[TF], int TL)
  123. {
  124.     int i, totTerno = 0, totQuadra = 0, totQuina = 0;
  125.    
  126.     clrscr();
  127.    
  128.     printf("Listagem das apostas\n\n");
  129.    
  130.     if(TL == 0)
  131.         printf("Nenhuma aposta cadastrada\n");
  132.     else
  133.     {
  134.         for(i = 0; i < TL; i++)
  135.         {
  136.             printf("Aposta #%d\n", Ap[i].NumAposta);
  137.             printf("%d pontos\n", Ap[i].Pontos);
  138.            
  139.             if(Ap[i].Pontos == 3)
  140.                 totTerno++;
  141.             else if(Ap[i].Pontos == 4)
  142.                 totQuadra++;
  143.             else if(Ap[i].Pontos == 5)
  144.                 totQuina++;
  145.  
  146.             printf("*----#----#----#----*\n\n");
  147.         }
  148.        
  149.         printf("%d ternos\n%d quadras\n%d quinas\n", totTerno, totQuadra, totQuina);
  150.        
  151.         printf("Listagem concluida\n\n");
  152.     }
  153.     getch();
  154. }
  155.  
  156. void Executa(void)
  157. {
  158.     int TL = 0, VetApostas[5];
  159.     TpAposta Aps[TF];
  160.    
  161.     CadApostas(Aps, TL);
  162.     LeDezenasSorteadas(VetApostas);
  163.     RegResultados(Aps, TL, VetApostas);
  164.     ListaApostas(Aps, TL);
  165.    
  166.     getch();
  167. }
  168.  
  169. int main(void)
  170. {
  171.     Executa();
  172.    
  173.     return 1;
  174. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement