Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: howaboutno en 28 Noviembre 2012, 16:26 pm



Título: ..
Publicado por: howaboutno en 28 Noviembre 2012, 16:26 pm
..


Título: Re: ayuda en C
Publicado por: howaboutno en 28 Noviembre 2012, 16:29 pm
solo me tiene que comparar la ultima jugada de la matriz, a eso lo de jugada[t+9]


Título: Re: ayuda en C
Publicado por: febef en 28 Noviembre 2012, 16:55 pm

Código:
if(jugada[t+9][3]==ganadoras)
{
printf("Ha ganado");
fflush(stdout);
}
else
{
printf("No ganadora");
fflush(stdout);
}


tambien asi pero sigue sin funcionar
Código:
	if(strcmp(partida,ganadora)==0)
{
printf("la jugada es ganadora\n");

}else{
printf("la jugada no es ganadora");

}


    Ese es el código que implementas?
  
    Así estas comparando otra cosa, lo que tendrías que poner es un for para recorrer los posibles valores ganadores...


Código
  1.  
  2.  int i;
  3.  for ( i=0; i<12; i++)
  4.  {
  5. if(strcmp(partida,ganadoras[i])==0)
  6. printf("la jugada es ganadora\n");
  7. else
  8. printf("la jugada no es ganadora");
  9.  
  10.  }
  11.  


Título: Re: ayuda en C
Publicado por: rir3760 en 28 Noviembre 2012, 16:59 pm
solo me tiene que comparar la ultima jugada de la matriz, a eso lo de jugada[t+9]
Con esto:
Código
  1. char ganadoras[11][3]={"333","444","555","666","222","111","336","446","556","331","332"};
Declaras un array de 11 elementos y cada uno es un array de 3 elementos de tipo char. El punto importante es: como cada elemento no tiene capacidad para el '\0' este se descarta, son secuencias de caracteres (no son cadenas) y por ello no puedes utilizar funciones para el manejo de cadenas que requieran del '\0' como strcmp.

Como realizar la comparación depende del tipo de la variable "jugada". Si el tipo es el mismo puedes utilizar "strncmp" o "memcmp" para comparar los primeros tres elementos (caracteres).

Para evitar adivinanzas mejor coloca la declaración de las variables que intentas comparar.

Un saludo