Public paste
by CrAzY
By: SEL_0.1b | Date: Jul 20 2010 18:12 | Format: None | Expires: never | Size: 1.46 KB | Hits: 1452

  1. #include <stdio.h>                              // per fopen(); fclose(); e fprintf();
  2. #include <stdlib.h>                             // per srand(); e rand();
  3. #include <time.h>                               // per time();
  4. #define RISULTATI "Superenalotto.txt"
  5. #define DATABASE "../../db.txt" // per debug
  6. #define NUM_RISULTATI 10
  7.  
  8. int main (int argc, const char * argv[]) {
  9.         int i,pari,disp,n1,n2,n3,n4,n5,n6;
  10.         // int estraz[][6];
  11.         FILE *ris,*db;
  12.         srand((unsigned) time(NULL));
  13.         ris = fopen(RISULTATI,"w");
  14.         if(!ris){
  15.                 printf("Impossibile creare il file: %s",RISULTATI);
  16.                 exit(1);
  17.         }else{
  18.                 db = fopen(DATABASE,"r");
  19.                 if(!db){
  20.                         fprintf(ris,"Superenalotto:nnt1t2t3t4t5t6n");
  21.                         for(i=0;i<NUM_RISULTATI;i++){
  22.                                 n1 = 1+rand()%(30-1);
  23.                                 n2 = 10+rand()%(40-10);
  24.                                 n3 = 20+rand()%(50-20);
  25.                                 n4 = 40+rand()%(70-40);
  26.                                 n5 = 50+rand()%(80-50);
  27.                                 n6 = 70+rand()%(90-70);
  28.                                 pari = disp = 0;
  29.                                 (n1%2==0)?pari++:disp++;
  30.                                 (n2%2==0)?pari++:disp++;
  31.                                 (n3%2==0)?pari++:disp++;
  32.                                 (n4%2==0)?pari++:disp++;
  33.                                 (n5%2==0)?pari++:disp++;
  34.                                 (n6%2==0)?pari++:disp++;
  35.                                 if((pari==3 && disp==3) || (pari==2 && disp==4) || (pari==4 && disp==2))
  36.                                         fprintf(ris,"nt%dt%dt%dt%dt%dt%d",n1,n2,n3,n4,n5,n6);
  37.                                 else
  38.                                         i--;
  39.                         }
  40.                 }else{
  41.                         /*
  42.                          • Creazione array da db.txt
  43.                          • Conteggio numeri
  44.                          • Controllo in terzine
  45.                          • Scrittura file finale
  46.                         */
  47.                         i=0;
  48.                         while(fscanf(db,"%dt%dt%dt%dt%dt%dn",n1,n2,n3,n4,n5,n6)>0){
  49.                                 // ...
  50.                                 i++;
  51.                         }
  52.                 }
  53.                 fclose(ris);
  54.         }
  55.         return 0;
  56. }