Sto facendo questo nuovo programma che dalla traccia non mi era sembrato difficile,ma mi sono bloccato in un punto.Allora vi spiego cosa devo fare in questo programma:devo creare una scacchiera 30x30 e inserire in modo casuale 50 X,un numero 1 e un numero 2.Dopo devo determinare 2 insiemi,l'insieme A composto dalle X piu vicino al numero 1 che al numero 2,e l insieme B composto dalle X piu vicine al numero 2 che al numero 1.

fino alla creazione della scacchiera e l inserimento delle X e del numero 1 e 2 ci sono arrivato,ma non so proprio come fare a determinare quest'insiemi!!come faccia a far calcolare al programma quali sono le X piu vicine all'1 e quelle piu vicine al 2?

questo è dove sono arrivato:


codice:
#include <stdio.h> 
#include <stdlib.h> 
#include <time.h> 
#include <math.h> 
int main() { 
int i,r,c,d1,d2; 
char X; 
char scacchiera [][30]= {{' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '}'}; //la scacchiera non l ho messa tutto//

 srand(time(NULL)); 
for(i=1;i<51;i++)
 { r=rand()%31; 
c=rand()%31;

 if(scacchiera[r][c]==' ') 
scacchiera[r][c]='X'; 
else i--;
 } 
srand(time(NULL)); 
for(i=0;i<1;i++) {
 r=rand()%31; 
c=rand()%31;
 
 if(scacchiera[r][c]==' ') scacchiera[r][c]='1'; 
else i--; 
} srand(time(NULL));
 for(i=0;i<1;i++) { 
r=rand()%31; 
c=rand()%31; 

 if(scacchiera[r][c]==' ') scacchiera[r][c]='2'; 
else i--; 
} printf("\n\n"); 
for(r=0;r<30;r++){
 for(c=0;c<30;c++)
 printf("%c",scacchiera[r][c]); 
printf("\n"); } 

system("PAUSE");
 }