Oppure

Loading
18/02/15 1:09
tonyleone
Visto che viene stampata la posizione (int) non è possibile fare un confronto in base a questa posizione iniziale per stabilire qual'è il più vicino ?
aaa
19/02/15 16:36
tonyleone
Sono arrivato a questo punto , piu che codice lo definerei pseudo-codice , spero che qualcuna possa aiutarmi alla stesura corretta !
#include<stdio.h>//header file che consente le varie operazioni di input e output
#include<stdlib.h>//header file che consente l'uso di rand, srand e di RAND_MAX
#include<time.h>//fornisce un accesso standardizzato alle funzioni di acquisizione e manipolazione del tempo.
#include<math.h>
#define n 2;




typedef struct animali{
	int nx;
	int ny;

}animali ;
animali_cani[2];
animali_gatti[2];





void inserisci_animali(char scacchiera[8][8])





int main()
{



    /*
    Dichiarazione delle variabili.
    */
    int i,nx,ny; /* Contatore per i cicli while.*/
    int posRiga, posCol; /* Variabili utilizzate per riempire la scacchiera in modo pseudo-random*/
    char gatti[2];
    char cani[2];
    srand(time(NULL)); /* Funzione che inizializza lo pseudo-random. Se non ci fosse, ad ogni avvio del programma
                          la posizione dei pedoni e della regina, sarebbe sempre la stessa.*/
    char colonne[8] = {'a','b','c','d','e','f','g','h'}; /*Dichiarazione e inizializzazione della stringa utilizzata
                                                         per definire le colonne della scacchiera.*/
    char scacchiera[][8] =                    
    {{'b','n','b','n','b','n','b','n'},
    {'n','b','n','b','n','b','n','b'},
    {'b','n','b','n','b','n','b','n'},
    {'n','b','n','b','n','b','n','b'},
    {'b','n','b','n','b','n','b','n'},
    {'n','b','n','b','n','b','n','b'},
    {'b','n','b','n','b','n','b','n'},
    {'n','b','n','b','n','b','n','b'}}; /* Dichiarazione e inizializzazione della scacchiera.*/
    char s;
    
void inserisci_cane(char scacchiera[8][8],animali_cani[n],animali_gatti[n]);
int i,n  ; 

	srand((unsigned int)time(0));
	for (i=0;i<n;i++){
	animali_cani[i].nx=rand%8;
	animali_cani[i].ny=rand%8 }
	
	for (i=0;i<n;i++) {
    animali_gatti[i].nx=rand%8;
    animali_gatti[i].ny=rand%8;
    
    scacchiera[animali_cani[nx][ny]='C'
     scacchiera[animali_gatti[nx][ny]='G';
}
	printf("Cani inseriti nella posizione %d,%d\n",animali_cani[nx][ny])
	printf("Cani inseriti nella posizione %d,%d\n",animali_gatti[nx][ny])
	
}

int distanza(animali_gatti[2],animali_cani[2],char scacchera[8][8]);
int d1,d2,d3,d4,origine1,origine2,;

printf ("I Cani si trovano in posizione">>>ricavare le coordinate dalla funzione inserisce cane
origine1=animali_cani[nx][ny];
printf ("i gatti si trovano in posizione">> ricavare coordinate gatti dalla funzione inserisci cane
origine1=animali_gatti[nx][ny]
distanzaCane1Gatto1 = formula con pitagora; 
distanzaCane1Gatto2 = formula con pitagora; 
distanzaCane2Gatto1 = formula con pitagora; 
distanzaCane2Gatto2 = formula con pitagora; 
if (d1< d2) AND (d1 < d3) AND ( d1 < d4) variabileDiScelta = 1; 
else if( d2 < d1) || (d2 < d3) || ( d2 < d4) variabileDiScelta = 2; 
else if( d3 < d1) || (d3 < d2) || ( d3 < d4) variabileDiScelta = 3;
 else if(d4 < d1) || (d4 < d2) || (d4 < d3) variabileDiScelta = 4;
 switch(variabileDiScelta) 
case 1: ---PRIMO CANE VA INCONTRO AL PRIMO GATTO--- endcase;
 case 2: ---PRIMO CANE VA INCONTRO AL SECONDO GATTO--- endcase;
 case 3: ---SECONDO CANE VA INCONTRO AL PRIMO GATTO--- endcase; 
case 4: ---SECONDO CANE VA INCONTRO AL SECONDO GATTO--- endcase; 
endswitch






void visualizza_scaccheria(char schacchiera[][8])
{
	int i,j,n;
		for(i=0;i<n;++i)
			{	
				for(j=0;j<n;++j)
					printf("%c",scacchiera[i][j]);
				printf("\n");
			}
}
    



aaa