Salve ragazzi so che rompo e sto scrivendo per 2 problemi diversi in poco tempo...il problema è questo vi mostro prima il codice:
codice:
int i, j, m=0, n=6, q=3, k, percentuale, cont_mosse=0, cont_colpi_subiti=0;
     char campo_di_gioco [A] [C]= {{'G',' ',' ',' ',' ',' ',' '},
                                   {' ',' ',' ','B',' ',' ',' '},
                                   {' ',' ',' ',' ',' ',' ','V'},
                                   {' ',' ',' ',' ',' ',' ',' '},
                                   {' ',' ',' ',' ',' ',' ',' '},
                                   {' ',' ',' ',' ',' ',' ',' '},
                                   {' ',' ',' ',' ',' ',' ',' '},
                                   {' ',' ',' ','R',' ',' ',' '}};
Questo è il campo di gioco dove ci sono le 4 navicelle...le tre di sopra dovrebbero muoversi e sparare la base.
Il mio problema è sul movimento cioè: la prima navicella G riesco a farla muovere sulla stessa riga e a farla rientrare dal lato opposto sempre sulla stessa riga...il problema è che con la seconda navicella B quando arriva al margine riappare nel campo dal lato opposto ma nella riga di sotto e continua fino a scendere tutte le righe.
il codice usato per la prima è questo:
codice:
if(percentuale<=60)
    {
     for(k=0;k<100;k++)
     {
         i=0;
         j=m;
         campo_di_gioco[i][j+1]='G';
         campo_di_gioco[i][j]=' ';
         m++;
         if(k==n)
         {
             campo_di_gioco[i][j+1]=' ';
             campo_di_gioco[i][j]='G';
             m=0;
             n=(n+7);
         }
         system("pause");
     for(i=0;i<A;i++)
     {
         for(j=0;j<C;j++)
         printf("%5c", campo_di_gioco[i][j]);
         printf("\n");
     }
     }
    }
Il codice per la seconda è questo:
codice:
if(percentuale<=70)
    {
     for(k=0;k<100;k++)
     {
         i=1;
         j=q;
         campo_di_gioco[i][j+1]='B';
         campo_di_gioco[i][j]=' ';
         q++;
         if(k==n)
         {
             campo_di_gioco[i][j+1]=' ';
             campo_di_gioco[i][j]='B';
             q=0;
             n=(n+7);
         }
         system("pause");
     for(i=0;i<A;i++)
     {
         for(j=0;j<C;j++)
         printf("%5c", campo_di_gioco[i][j]);
         printf("\n");
     }
     }
    }
Come potete vedere i codici sono quasi identici ma il secondo invece di farla rimanere nella stessa riga la fa scendere. Come posso risolvere?