Ver Mensaje Individual
  #1 (permalink)  
Antiguo 24/07/2014, 04:03
Avatar de anggiebs
anggiebs
 
Fecha de Ingreso: julio-2014
Ubicación: Madrid
Mensajes: 35
Antigüedad: 9 años, 10 meses
Puntos: 0
Pregunta Recorrido de arrays

Hola a todos :) !

Estoy haciendo una práctica que consiste en el juego Mastermind.

Lo que tengo que hacer es ver si los colores que tengo en el array tCodigo jugada coinciden con los elementos del array tCodigo secreto y si el elemento en la posición i coincide en ambos, poner a true esta posición en un array de booleanos que he llamado tArrayBool aux .

Es decir, si [I]jugada[i ]== secreto[i] entonces aux=true;

Hasta ahí bien pero luego tengo que comparar si el color que tengo en jugada[j] está en algún otro sitio del array tCodigo secreto por eso sé que tengo que usar un for para recorrer el array tCodigo jugada y para cada color comprobar con un while si está el color en el array tCodigo secreto y sin haber sido usada antes en el array de booleanos pero sé que me falta algo ...

Espero puedan ayudarme .
Gracias :)

---------------------------------------------------------------------------
Código:
void comprobarColores(tCodigo secreto,tCodigo jugada,int &colocadas,int &descolocadas,int &intentos){

//Array de booleanos lo inicializo a false.
	tArrayBool aux={false};	

	for(int i=0; i<FICHAS_JUGADA; i++){
       /* Compruebo si los elementos de tCodigo secreto y tCodigo jugada son     el      mismo y estan en la misma posicion. */
		if(jugada[i] == secreto[i]){
			aux[i]= true;
		}
	}
	
	for(int j=0; j<FICHAS_JUGADA; j++){
/* Si el elemento del array tCodigo jugada está en una posicion distinta en el array tCodigo secreto */
		while((jugada[j] == secreto[j+1]) && aux[j]!= true){ /* <--- Sé que algo de está mal... */
			aux[j]=true;
		}
	}

}