Advertisement
Markort

AcadEx: Updatelabels Function - ITA

Dec 7th, 2013 (edited)
103
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.10 KB | None | 0 0
  1. int updatelabels() {
  2.   int check=0, i;
  3.   int right, over, left, under, site;
  4.   for(i=0;i<L*L;i++){
  5.     site = label[i];
  6.     if(site != EMPTY ) {
  7.       /*controllo il vicino di destra*/
  8.       right = label[(i+1)%L+(int)(i/L)*L];
  9.       if( right != EMPTY && site != right) {
  10.     if( site > right ) label[i] = label[(i+1)%L+(int)(i/L)*L];
  11.     else label[(i+1)%L+(int)(i/L)*L] = label[i];
  12.     check=1;
  13.       }
  14.       /*conrollo il vicino di sopra*/
  15.       if( ((int)(i/L)) != L-1 ) {
  16.     over=label[i+L];
  17.     if( over != EMPTY && site != over) {
  18.       if( site > over ) label[i] = label[i+1];
  19.       else label[i+1] = label[i];
  20.       check=1;
  21.     }
  22.       }
  23.       /*sinistra*/
  24.       left = label[(i-1)%L+(int)(i/L)*L];
  25.       if( left != EMPTY && site != left) {
  26.     if( site > left ) label[i] = label[(i-1)%L+(int)(i/L)*L];
  27.     else label[(i-1)%L+(int)(i/L)*L] = label[i];
  28.     check=1;
  29.       }
  30.       /*sotto*/
  31.       if( ((int)(i/L)) != 0 ) {
  32.     under = label[i-L];
  33.     if( under != EMPTY && site != under) {
  34.       if( site > under ) label[i] = label[i-1];
  35.       else label[i-1] = label[i];
  36.       check=1;
  37.     }
  38.       }
  39.     }
  40.   }
  41. return check;
  42. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement