Ciao, sto implementando il classico gioco delle battaglie navali, dove gli 1 nelle matrici (a,b ) rapprensentano le navi e gli array chiamati griglie sono le matrici che i giocatori vedono riempite da 0 finche il giocatore dà le coordinate affinche possa affondare una nave, la mia domanda è: se uno dei giocatori colpisce una nave come faccio a stampare l'array chimato griglia con qualche segno che identifichi che ha colpito una nave.
grazie
codice:
# include <iostream>
using namespace std;
const int n=4;
void stampa (int [][n]);
bool spara (int [][n],int,int);
int main ()
{
int riga, colonna;
int griglia [n][n]={0};
int griglia2 [n][n]={1};
int a[][n]= {{0,1,1,0},
{0,1,1,0},
{0,1,1,0},
{0,1,1,0}};
int b[][n]={{0,0,1,0},
{0,1,0,0},
{0,1,1,1},
{0,0,0,0}};
cout<<"________BENBENUTI ALLE BATTAGLIE NAVALI__________"<<endl;
cout<<"giocatore 1 :"<<endl;
stampa (griglia);
cout<<"dammi riga"<<endl;
cin>>riga;
cout<<"dammi colonna"<<endl;
cin>>colonna;
if (spara(a,riga,colonna)){
cout<<"NAVE COLPITA"<<endl;
}
else{
cout<<"NAVE NON COLPITA"<<endl;
}
return 0;
}
void stampa (int griglia[][n])
{
for (int i=0; i < n; i++)
{
for (int j=0; j<n; j++)
cout<<griglia[i][j]<<' ';
cout<<endl;
}
}
bool spara (int a[][n],int riga, int colonna)
{
if (a[riga][colonna]==1)
return true;
return false;
}