Salve, ecco il problema
ho realizzato la battaglia navale ma appena lo faccio partire smette di funzionare: che ho sbagliato!?
codice HTML:
#include <iostream>
#include <stdlib.h>
#include <time.h>
using namespace std;
main()
{
int c, r, d=0, h=0, rpc, copc, oov, ri, co, var=0;
char a[10][10], b[10][10], z;
bool y=false;
for (r=0; r<=10; r++)
{
for (c=0; c<=10; c++)
{
a[r][c]='_';
}
}
for (r=0; r<=10; r++)
{
for (c=0; c<=10; c++)
{
b[r][c]='_';
}
}
do{
for (r=0; r<10; r++)
{
for (c=0; c<10; c++)
{
if(c==9)
{
cout << a[r][c] << "|" << endl;
}
else
{
cout << a[r][c] << "|";
}
}
}
d++;
h=0;
cout << "Inserisci Nave Da " << d << " Casella/e" << endl;
cout << "Inserisci Riga E Colonna Per Posizionare Nave ";
cin >> r >> c;
r--;
c--;
a[r][c]='O';
if(d==2)
{
cout << "Vuoi Posizionare La Nave Orizzontale O Verticale?";
cin >> z;
if(z=='O' || z=='o')
{
c++;
a[r][c]='O';
}
else
{
r++;
a[r][c]='O';
}
}
else
{
if(d==3)
{
cout << "Vuoi Posizionare La Nave Orizzontale O Verticale?";
cin>>z;
if(z=='O' || z=='o')
{
do{
c++;
a[r][c]='O';
h++;
}
while(h<2);
}
else
{
do{
r++;
a[r][c]='O';
h++;
}
while(h<2);
}
if(d==4)
{
cout << "Vuoi Posizionare La Nave Orizzontale O Verticale?";
cin >> z;
if(z=='O' || z=='o')
{
do{
c++;
a[r][c]='O';
h++;
}
while(h<3);
}
else
{
do{
r++;
a[r][c]='O';
h++;
}
while(h<3);
}
}
else
{
if(d==5)
{
cout << "Vuoi Posizionare La Nave Orizzontale O Verticale?";
cin >> z;
if(z=='O' || z=='o')
{
do{
c++;
a[r][c]='O';
h++;
}
while(h<4);
}
else
{
do{
r++;
a[r][c]='O';
h++;
}
while(h<4);
}
}
}
}
}
}
while(d<5);
d=0;
srand(static_cast<int>(time(NULL)));
do{
d++;
rpc=rand()%10,copc=rand()%10;
if(d==1)
{
b[rpc][copc]='O';
}
else
{
if(d==2)
{
oov=rand()%2;
if(oov==0)
{
if(b[rpc][copc]!='O')
{
b[rpc][copc]='O';
copc++;
b[rpc][copc]='O';
}
}
else
{
if(b[rpc][copc]!='O')
{
b[rpc][copc]='O';
rpc++;
b[rpc][copc]='O';
}
}
}
else
{
if(d==3)
{
oov=rand()%2;
if(oov==0)
{
if(b[rpc][copc]!='O')
{
b[rpc][copc]='O';
h=0;
do{
h++;
copc++;
b[rpc][copc]='O';
}
while (h<2);
}
}
else
{
if(b[rpc][copc]!='O')
{
b[rpc][copc]='O';
h=0;
do{
h++;
rpc++;
b[rpc][copc]='O';
}
while (h<2);
}
}
}
else
{
if(d==4)
{
oov=rand()%2;
if(oov==0)
{
if(b[rpc][copc]!='O')
{
b[rpc][copc]='O';
h=0;
do{
h++;
copc++;
b[rpc][copc]='O';
}
while (h<3);
}
}
else
{
if(b[rpc][copc]!='O')
{
b[rpc][copc]='O';
h=0;
do{
h++;
rpc++;
b[rpc][copc]='O';
}
while (h<3);
}
}
}
else
{
if(d==5)
{
oov=rand()%2;
if(oov==0)
{
if(b[rpc][copc]!='O')
{
b[rpc][copc]='O';
h=0;
do{
h++;
copc++;
b[rpc][copc]='O';
}
while (h<4);
}
}
else
{
if(b[rpc][copc]!='O')
{
b[rpc][copc]='O';
h=0;
do{
h++;
rpc++;
b[rpc][copc]='O';
}
while (h<4);
}
}
}
}
}
}
}
}
while (d<5);
do{
cout << "Che Casella Vuoi Colpire??";
cin >> ri >> co;
ri--;
co--;
for (r=0; c<=10; c++)
{
for (c=0; c<=10; c++)
{
if (ri==r && co==c)
{
if (b[r][c]=='O')
{
cout << "Colpito!";
b[r][c]='X';
}
else
{
cout << "Acqua...";
b[r][c]='A';
}
}
}
}
rpc=rand()%10, copc=rand()%10;
for (r=0; c<=10; c++)
{
for (c=0; c<=10; c++)
{
if (rpc==r && copc==c)
{
if (a[r][c]=='O')
{
cout << "Ti Hanno Colpito!";
a[r][c]='X';
}
else
{
cout << "Non Ti Hanno Colpito...";
a[r][c]='A';
}
}
}
}
for (r=0; r<=10; r++)
{
for (c=0; c<=10; c++)
{
var=0;
if (b[r][c]=='X')
var ++;
if (var>=15)
{
y=true;
cout << "Win *-*";
}
}
}
for (r=0; r<=10; r++)
{
for (c=0; c<=10; c++)
{
var=0;
if (a[r][c]=='X')
var ++;
if (var>=15)
{
y=true;
cout << "LOSER! XD AHAHAHAH";
}
}
}
}
while (y!=true);
system("PAUSE");
}