Back to index

wims  3.65+svn20090927
Functions
tab2d.c File Reference
#include <stdio.h>
#include <string.h>

Go to the source code of this file.

Functions

int main (int argc, argv)

Function Documentation

int main ( int  argc,
argv   
)

Definition at line 29 of file tab2d.c.

{
       int tab[16][16];
       int i,j,k;
       int niveau,TAILLE,var_boucle1,val_ligne,diago,val_diago,max,ligne;
       int l1,c1;
       char boucle4_1[8];
       char boucle4_2[8];
       char sens_boucle1_1[12];
       char sens_boucle1_2[12];
       
       sscanf(argv[2],"%d",&niveau);
       sscanf(argv[3],"%d",&TAILLE);
       sscanf(argv[4],"%d",&var_boucle1);
       sscanf(argv[5],"%d",&val_ligne);
       sscanf(argv[6],"%d",&diago);
       sscanf(argv[7],"%d",&val_diago);
       strcpy(boucle4_1,argv[8]);
       strcpy(boucle4_2,argv[9]);
       sscanf(argv[10],"%d",&max);
       sscanf(argv[11],"%d",&l1);
       sscanf(argv[12],"%d",&c1);
       sscanf(argv[13],"%d",&ligne);
       strcpy(sens_boucle1_1,argv[14]);
       strcpy(sens_boucle1_2,argv[15]);


       /* BOUCLE 1 */
       
       if ((strcmp(sens_boucle1_1,"croissant")==0) &&  (strcmp(sens_boucle1_2,"croissant")==0) )
       {
              if (var_boucle1<3) {
                     for(i=0; i<TAILLE; i++){
                            for(j=0; j<TAILLE; j++) {
                                   if (var_boucle1==1)
                                          tab[i][j]=i;
                                   else 
                                          tab[i][j]=j;
                            }
                     }
              }
              else {
                     k=0;
                     for(i=0; i<TAILLE; i++) {
                            for(j=0; j<TAILLE; j++) {
                                   tab[i][j]=k;
                                   k++;
                            }
                     }
              }
       }
       
       else if ((strcmp(sens_boucle1_1,"croissant")==0) && ( strcmp(sens_boucle1_2,"decroissant"))==0) 
       {
              if (var_boucle1<3) {
                     for(i=0; i<TAILLE; i++){
                            for(j=TAILLE-1; j>=0; j--) {
                                   if (var_boucle1==1)
                                          tab[i][j]=i;
                                   else 
                                          tab[i][j]=j;
                            }
                     }
              }
              else {
                     k=0;
                     for(i=0; i<TAILLE; i++) {
                            for(j=TAILLE-1; j>=0; j--) {
                                   tab[i][j]=k;
                                   k++;
                            }
                     }
              }
       }
       
       else if ((strcmp(sens_boucle1_1,"decroissant")==0 &&  strcmp(sens_boucle1_2,"croissant"))==0) 
       {
              if (var_boucle1<3) {
                     for(i=TAILLE-1; i>=0; i--){
                            for(j=0; j<TAILLE; j++) {
                                   if (var_boucle1==1)
                                          tab[i][j]=i;
                                   else 
                                          tab[i][j]=j;
                            }
                     }
              }
              else {
                     k=0;
                     for(i=TAILLE-1; i>=0; i--){
                            for(j=0; j<TAILLE; j++) {
                                   tab[i][j]=k;
                                   k++;
                            }
                     }
              }
       }
       
       else
       {
              if (var_boucle1<3) {
                     for(i=TAILLE-1; i>=0; i--){
                            for(j=TAILLE-1; j>=0; j--) {
                                   if (var_boucle1==1)
                                          tab[i][j]=i;
                                   else 
                                          tab[i][j]=j;
                            }
                     }
              }
              else {
                     k=0;
                     for(i=TAILLE-1; i>=0; i--){
                            for(j=TAILLE-1; j>=0; j--) {
                                   tab[i][j]=k;
                                   k++;
                            }
                     }
              }
       }
              
       
       /* BOUCLE 2 */
       if (niveau>1) 
       {
              for(i=0; i<TAILLE; i++) {
                     tab[ligne][i]=val_ligne;
                     tab[i][ligne+1]=val_ligne+1;
              }
       }
       
       /* BOUCLE 3*/
       if (niveau>2)
       {
              if (diago==1) 
              {
                     for(i=0; i<TAILLE; i++) {
                            tab[i][i]=val_diago;
                     }
              }
              else
              {
                     for(i=0; i<TAILLE; i++) {
                            tab[i][TAILLE-1-i]=val_diago;
                     }
              }
       }
       
       /* BOUCLE 4*/
       if (niveau>3)
       {
              if(strcmp(boucle4_1,"pair")==0 && strcmp(boucle4_2,"pair")==0)
              {
                     for(i=0; 2*i<TAILLE; i++) {
                            for(j=0; 2*j<TAILLE ; j++) {
                                   tab[2*i][2*j]=0;
                            }
                     }

              }
              else if(strcmp(boucle4_1,"impair")==0 && strcmp(boucle4_2,"pair")==0)
              {
                     for(i=0; 2*i+1<TAILLE; i++) {
                            for(j=0; 2*j<TAILLE ; j++) {
                                   tab[2*i+1][2*j]=0;
                            }
                     }

              }
              else if(strcmp(boucle4_1,"impair")==0 && strcmp(boucle4_2,"impair")==0)
              {
                     for(i=0; 2*i+1<TAILLE; i++) {
                            for(j=0; 2*j<TAILLE ; j++) {
                                   tab[2*i+1][2*j+1]=0;
                            }
                     }

              }
              else if(strcmp(boucle4_1,"pair")==0 && strcmp(boucle4_2,"impair")==0)
              {
                     for(i=0; 2*i<TAILLE; i++) {
                            for(j=0; 2*j<TAILLE ; j++) {
                                   tab[2*i][2*j+1]=0;
                            }
                     }

              }
       }

       /* BOUCLE 5*/
       if (niveau>4)
       {
              for(i=0;i<TAILLE;i++)
              {
                     for(j=0;j<TAILLE;j++) {
                            if(i+j>max)
                                   tab[i][j]=tab[i][j]-1;
                     
                     }
              }
       }
       
       printf("%d,%d,%d,%d\n",tab[l1][c1],tab[l1+1][c1+1],tab[l1+1][c1+2],tab[l1+2][c1]);
       return 0;




}

Here is the call graph for this function: