• Lunes 13 de Mayo de 2024, 04:27

Autor Tema:  Ayuda Con Batalla Naval  (Leído 2608 veces)

Hathor

  • Nuevo Miembro
  • *
  • Mensajes: 2
    • Ver Perfil
Ayuda Con Batalla Naval
« en: Miércoles 3 de Noviembre de 2004, 18:37 »
0
Hola!!!

Estoy haciendo el código para Batalla naval, sólo que no sé cómo utilizar las matrices y los arreglos.  Debo utilizar dos arreglos. Uno para una matriz de 5 * 5 que es donde el usuario visualizará las coordenadas.  Después él programa pide las 6 coordenadas del o los barcos, a continuación empieza el juego, donde el usuario tiene 3 oportunidades.

Aún no entiendo cómo colocar las matrices...alguna sugerencia?  :huh:

JuanK

  • Miembro de ORO
  • ******
  • Mensajes: 5393
  • Nacionalidad: co
    • Ver Perfil
    • http://juank.io
Re: Ayuda Con Batalla Naval
« Respuesta #1 en: Viernes 5 de Noviembre de 2004, 06:06 »
0
Simplementa dibujas un cuadro en opantalla por cada miembro de la matriz.. ya el irden en que vaya depende de ti.
[size=109]Juan Carlos Ruiz Pacheco
[/size]
Microsoft Technical Evangelist
@JuanKRuiz
http://juank.io

Hathor

  • Nuevo Miembro
  • *
  • Mensajes: 2
    • Ver Perfil
Re: Ayuda Con Batalla Naval
« Respuesta #2 en: Viernes 5 de Noviembre de 2004, 20:49 »
0
Hola!!

Ya pude hacerlo  :lol: y así quedó:

#include<stdio.h>
#include<conio.h>
# define n 5

void imprimir (int matriz2[n][n])
{
printf ("\n\t\t\tBatalla Naval");
printf("\nRecuerda que:\n\t Debes introducir las coordenadas separadas por una coma.\n\t Si aciertas aparecerá 1.\n\t Si fallas aparecerá 3.\n\n\t\t\t ¡¡Buena suerte!!\n\n");
for(int a=0;a<n;a++)
{
for(int b=0;b<n;b++)
{
printf("\t %d,%d ",a,B);
}
printf("\n");
 }
}
void datos (int matriz1[n][n], int matriz2[n][n])
{
for(int a=0;a<n;a++)
{
for(int b=0;b<n;b++)
{
matriz1[a]=0;
matriz2[a]=0;
}
}
}
void pedirdatos (int matriz1[n][n])
{
int a,b;

for(int c=0;c<6;c++)
{
printf("\nDame las coordenadas: ");
scanf("%d,%d",&a,&b );
matriz1[a]=1;
}
}

void batalla (int matriz1[n][n],int matriz2[n][n])
{
int a,b,oportunidad=3,correctas=0;
clrscr();
while(oportunidad >0)
{
printf("\n Coordenadas de tu tiro: ");
scanf("%d,%d", &a,&b);
if(matriz1[a]==1)
{
printf("\n Le diste!! \n");
matriz1[a]=1;
matriz2[a]=1;
imprimir(matriz2);
correctas++;
if(correctas==6)
{
oportunidad=0;
printf(" \n Bien hecho!! Acertaste!! \n");
}
}
if(matriz1[a]==0)
{
printf("\n Lo siento... Fallaste... \n");
matriz1[a]=3;
matriz2[a]=3;
imprimir(matriz2);
oportunidad;
printf("\nAún tienes %d oportunidades\n",oportunidad);
if(oportunidad==0)
{
printf("\n Fin del juego \n");
imprimir(matriz1);
}
}
}
}


void main ()
{
   int matriz1[n][n], matriz2[n][n];
   imprimir(matriz2);
   datos (matriz1, matriz2);
   pedirdatos (matriz1);
   batalla (matriz1,matriz2);
}


 :comp:

JuanK

  • Miembro de ORO
  • ******
  • Mensajes: 5393
  • Nacionalidad: co
    • Ver Perfil
    • http://juank.io
Re: Ayuda Con Batalla Naval
« Respuesta #3 en: Sábado 6 de Noviembre de 2004, 14:21 »
0
Muy bien te felicito, sigue asi.
[size=109]Juan Carlos Ruiz Pacheco
[/size]
Microsoft Technical Evangelist
@JuanKRuiz
http://juank.io