Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- #include <string.h>
- #define MAX 6
- #define MAX_CARACTER 30
- #define MAX_LOTERICAS 90
- typedef struct{
- int codAposta;
- int codLoterica;
- char dataHora[MAX_CARACTER];
- int qtdeNumerosApostados;
- int *numerosApostados;
- }Aposta;
- typedef struct no{
- Aposta info;
- struct no *prox;
- }No;
- typedef struct{
- int qtde;
- No *inicio;
- }Lista;
- typedef struct{
- char estado[3];
- int codEstado;
- }Loterica;
- //prototipos
- void sorteados(int numerosSorteados[]);
- void inicia(Lista *lista);
- void carregaAposta(Lista *lista);
- void carregaLotericas (Loterica *loterica);
- int resultadoDaAposta(int *vet, int quant,int numerosSorteados[]);
- void resultados(Lista *lista,No *aposta);
- void megaSena(Lista *lista,Lista *sena,int sorteados[]);
- int main()
- {
- Lista *lista=(Lista *)malloc(sizeof(Lista));
- Lista *sena=(Lista *)malloc(sizeof(Lista));
- Lista *quina=(Lista *)malloc(sizeof(Lista));
- Lista *quadra=(Lista *)malloc(sizeof(Lista));
- Loterica *loterica=(Loterica*)malloc(sizeof(Loterica)*MAX_LOTERICAS);
- int numerosSorteados[MAX];
- inicia(lista);
- inicia(sena);
- inicia(quina);
- inicia(quadra);
- carregaLotericas(loterica);
- sorteados(numerosSorteados);
- carregaAposta(lista);
- megaSena(lista,sena,numerosSorteados);
- getch();
- return 0;
- }
- void sorteados(int numerosSorteados[])
- {
- FILE *arquivo = fopen("arquivoentrada.txt","r");
- while(!feof(arquivo))
- {
- fscanf(arquivo,"%d",&*numerosSorteados);
- numerosSorteados++;
- }
- /*while(scanf("%d",&*numerosSorteados)!=EOF)
- {
- numerosSorteados++;
- }*/
- fclose(arquivo);
- }
- void inicia(Lista *lista)
- {
- lista->qtde = 0;
- lista->inicio = NULL;
- }
- void carregaAposta(Lista *lista)
- {
- FILE *arquivo = fopen("apostas.txt","r+");
- No *p = lista->inicio;
- int i;
- if(!arquivo)
- {
- printf("\n ERRO NO ARQUIVO");
- return;
- }
- while(!feof(arquivo))
- {
- p=(No*)malloc(sizeof(No));
- fscanf(arquivo,"%d %d %s %d",&p->info.codAposta,&p->info.codLoterica,p->info.dataHora,&p->info.qtdeNumerosApostados);
- p->info.numerosApostados=(int*)malloc(sizeof(int)*p->info.qtdeNumerosApostados);
- for(i=0;i<p->info.qtdeNumerosApostados;i++)
- {
- fscanf(arquivo,"%d",&p->info.numerosApostados[i]);
- }
- lista->qtde++;
- p->prox=NULL;
- p=p->prox;
- }
- fclose(arquivo);
- }
- void carregaLotericas (Loterica *loterica)
- {
- FILE *arquivo = fopen("lotericas.txt","r+");
- if(!arquivo)
- {
- printf("\n ERRO NO ARQUIVO LOTERICAS.TXT");
- return;
- }
- while(!feof(arquivo))
- {
- fscanf(arquivo,"%d %s",&loterica->codEstado,loterica->estado);
- loterica++;
- }
- fclose(arquivo);
- }
- int resultadoDaAposta(int *vet, int quant,int numerosSorteados[])
- {
- int i,cont=0,j;
- for(i=0;i<MAX;i++)
- {
- for(j=0;j<quant;j++)
- {
- if(vet[j]==numerosSorteados[i]) cont++;
- }
- }
- return cont;
- }
- void megaSena(Lista *lista,Lista *sena,int sorteados[])
- {
- No *p=lista->inicio;
- No *seis=sena->inicio;
- No *aux;
- int i=0;
- do{
- if(resultadoDaAposta(p->info.numerosApostados,p->info.qtdeNumerosApostados,sorteados)==6)
- {
- seis=(No *)malloc(sizeof(No));
- seis=p;printf("\n aki");getch();
- seis->prox=NULL;printf("\n aki");getch();
- seis=seis->prox;
- }
- p=p->prox;
- i++;
- }while(i<9000);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement