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");
}