Ecco qui:
Codice:
void PosizionaNavi(int numeroNavi)
{
int Count = numeroNavi, Count2;
char c_col = ' ';
char c_raw = ' ';
char coorx[3];
int coory[3];
coorx[0] = '\0';
printf("Inserire le coordinate per %i navi.\n",numeroNavi);
while(Count > 0)
{
printf("Nave %i: X_", Count);
// a-f
while((c_col < 97) || (c_col > 102)) // invio = conferma
c_col = getch();
coorx[0] = c_col;
// coor contiene la colonna .. inserire qui il codice per gestirla
printf("%c Y_", c_col);
c_col = ' '; // reset
// 0-9
while(((c_raw < 48) || (c_raw > 57))) // invio = conferma
c_raw = getch();
printf("%c", c_raw);
c_raw = ' '; // reset
coory[0] = (c_raw-48);
// 0-9 o ENTER per non dare coordinata a cifra singola
while(((c_raw < 48) || (c_raw > 57)) && (c_raw != 13)) // invio = conferma
c_raw = getch();
coory[1] = (c_raw-48);
printf("%c", c_raw);
c_raw = ' '; // reset
printf("\n\r");
Count --;
}
}
Spero che tenga bene i tab...
in questa implementazione non permetto proprio all'utente di inserire lo spazio .. e non uso puntatori ..per gestire le coordinate a 2 cifre obbligo l'utente a darmi la seconda cifra oppure a premere invio per andare alla coordinata successiva ..
In quseto esempio non ho gestito gli array, ma ti fornisco 'coorx' e 'coory' che ad ogni "passaggio" del ciclo principale conterranno le coordinate della nave.
Spero sia utile e comprensibile.
Bye