allora il programma è per una semplice battaglia navale, a un certo punto voglio che il computer crei a caso una griglia per se. ma quando la crea.... anche se dovrebbe essere a random.... è sempre la stessa griglia! dove sbaglio? grazie in anticipo per le risposte
codice:#include <stdio.h> #include <stdlib.h> #include <time.h> void stampaIntestazione(); void stampaMenu(); //char preparaGriglie(int); int main() { int a = 0; int b, n, i, j, random; int c = 0; int contatore; srand(time(NULL)); char griglia[n][n]; char grigliaComputer[n][n]; stampaIntestazione(); while (a==0) { stampaMenu(); scanf("%d",&b); if(b==2) {break;} else if (b==1) { //scelgo la dimensione della griglia while(c==0) { printf("\nDi che dimensione vuoi la griglia? (min=5 max=8)\n"); scanf("%d",&n); if (n<5 || n>8) { printf("\nDimensione non Corretta"); } else { c=1; } } //inizializzo la griglia for (i=0; i<n; i++) { for (j=0; j<n; j++) { griglia[i][j]='-'; grigliaComputer[i][j]='-'; } } //decido quante navi da abbattere ci saranno nella griglia if (n==5 || n==6) { contatore = 10; } if (n==7 || n==8) { contatore = 20; } //setto la griglia del computer while (contatore > 0) { for(i=0; i<n; i++) { for(j=0; j<n; j++); { random = rand(); printf("%d \n",random); if (random%8 == 1) { grigliaComputer[i][j]='O'; contatore--; } } } } //stampa di prova for (i=0; i<n; i++) { for (j=0; j<n; j++) { printf("%c ",grigliaComputer[i][j]); } printf("\n"); } c=0; } else {continue;} } return 0; } void stampaIntestazione() { printf("+------------------------------------------------------------------------------+"); printf("| ^ ^ @ @ ^ ^ |"); printf("| ^_^ ^ç^ @* <Battaglia Navale> *@ ^ç^ ^_^ |"); printf("|^ ^ ^ ^ @ *by Boulayo* @ ^ ^ ^ ^|"); printf("| ^ ^ ^ ^ |"); printf("+------------------------------------------------------------------------------+"); } void stampaMenu() { printf("\nScegli e premi invio 1: - Nuova Partita 2: - Esci dal gioco\n\n"); }

Rispondi quotando
VVoVe:
