Advertisement
RomainGarcia

Programme

May 24th, 2016
111
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.95 KB | None | 0 0
  1. int [][] GLOUTON (int n, int [][]tab){
  2.     int [][] TabClasse=new int [n][3];
  3.     int a=0;
  4.     int b=0;
  5.     int max=0;
  6.     int gr=1;
  7.     int c=0;
  8.  
  9.     for(a=0;a<=n-1;a++){
  10.         TabClasse[a][0]=a+1;
  11.         TabClasse[a][1]=0;
  12.         TabClasse[a][2]=0;
  13.     }
  14.    
  15.     for(a=0;a<=n-1;a++){               
  16.         for (b=a;b<=n-1;b++){
  17.             if (tab[a][b]==1){
  18.                 TabClasse[a][1]++;
  19.                 TabClasse[b][1]++;
  20.             }
  21.         }
  22.     }
  23.     for (int i=1;i<=n-1;i++){
  24.         for (a=1;a<=n-1;a++){              
  25.             if (TabClasse[a-1][1]<TabClasse[a][1]){
  26.                 max=TabClasse[a][1];
  27.                 TabClasse[a][1]=TabClasse[a-1][1];
  28.                 TabClasse[a-1][1]=max;
  29.                 max=TabClasse[a][0];
  30.                 TabClasse[a][0]=TabClasse[a-1][0];
  31.                 TabClasse[a-1][0]=max;
  32.             }
  33.         }
  34.     }
  35.     for(a=0;a<=n-1;a++){               
  36.         if(TabClasse[a][2]==0){
  37.             TabClasse[a][2]=gr;
  38.             for (b=0;b<=n-1;b++){
  39.                 if ((tab[TabClasse[a][0]-1][TabClasse[b][0]-1]==0) && (TabClasse[b][2]==0)){
  40.                     for (c=0;c<=n-1;c++){
  41.                         if(TabClasse[c][2]==gr){
  42.                             if(tab[TabClasse[b][0]-1][TabClasse[c][0]-1]==0){
  43.                                 TabClasse[b][2]=gr;
  44.                             }
  45.                             else{
  46.                                 TabClasse[b][2]=0;
  47.                             }
  48.                         }
  49.                     }
  50.                 }
  51.             }
  52.             gr++;
  53.         }
  54.     }
  55.     return TabClasse;
  56. }
  57.  
  58. void affichage(int n, int [][]tableau, int [][]tab2, String []nom){
  59.     int Rho =2;
  60.    double Theta =0;
  61.    double x =0;
  62.    double y =0;
  63.    int x2;
  64.    int y2;
  65.    int nS=n;
  66.    int k=0;
  67.    int compteur=1;
  68.    String nA="a";
  69.    String nB="a";
  70.    double p=1;
  71.    for (double i=0 ; i<2*Math.PI;i=i+2*Math.PI/nS){
  72.     Theta=i;
  73.     x=250+100*Rho*Math.cos(Theta);
  74.     y=250+100*Rho*Math.sin(Theta);
  75.     x2=(int)x;
  76.     y2=(int)y;
  77.     println (x2+";"+y2);
  78.     for (k=0;k<=n-1;k++){
  79.         if(compteur==tab2[k][0]){
  80.       addNode(nom[k]+compteur+" : "+tab2[k][2],x2,y2);  
  81.         }
  82.       }
  83.     compteur++;
  84.    }
  85.    
  86.    
  87.     for (int j=0;j<=n-1;j++){
  88.     for(int j2=j+1;j2<=n-1;j2++){
  89.         if (tableau[j][j2]==1){
  90.         nA=nom[tab2[j][0]-1]+(j+1)+" : "+tab2[tab2[j][0]-1][2];    
  91.         nB=nom[tab2[j2][0]-1]+(j2+1)+" : "+tab2[tab2[j2][0]-1][2];
  92.         println(nA+"/"+nB);
  93.         addLink(nA,nB,0);
  94.        
  95.         }
  96.     }
  97.  
  98.    
  99.         }
  100.            
  101.    
  102.    }
  103.  
  104.  
  105. void main(){
  106.      
  107.       println("Combien y a t'il de sommets ?");
  108.       int nombresommets=0;
  109.       int j=0;
  110.       nombresommets=readInteger();
  111.       String[]noms = new String[nombresommets];  
  112.       println("Si 2 sommets sont incompatibles , tapez 1 , sinon , tapez 0");
  113.    
  114.       int[][] compa = new int[nombresommets][nombresommets];
  115.    
  116.       for (int i=0 ;i<nombresommets; i++){  
  117.           for (j=i+1 ;j<nombresommets; j++){
  118.                println((i+1)+" et "+(j+1));
  119.                
  120.            
  121.              compa[j][i]=compa[i][j]=readInteger();
  122.              
  123.                }        
  124.         i=i+1;
  125.      
  126.       println("Quel est le nom du sommet "+i);
  127.          String nom=readString();  
  128.       println("Le sommet "+ i+" s'appelle "+ nom);
  129.       i=i-1;
  130.        
  131. }
  132. int [][]tabGR = new int [nombresommets][3];
  133. tabGR=GLOUTON(nombresommets,compa);
  134. affichage(nombresommets,compa,tabGR,noms);
  135. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement