#include #include //stdlib.h é a biblioteca onde a função srand está implementada //utilizamos esse comando para que conseguir utilizar srand #include //time.h é a biblioteca onde a função time está implementada //utilizamos esse comando para que conseguir utilizar time void inicializaTabuleiro(int tabuleiro[][5]){ for (int i =0; i< 5; i++){ for (int j=0; j< 5; j++){ tabuleiro[i][j] = -1; } } } void mostrarTabuleiro(int tabuleiro[][5]){ printf("\t1 \t2 \t3 \t4 \t5"); // \t é utilizado para dar um espaçamento de tab printf("\n"); for (int i =0; i< 5; i++){ printf("%d",i+1); for (int j=0; j< 5; j++){ if (tabuleiro[i][j]== -1){ printf("\t~"); } else if (tabuleiro[i][j]== 0){ printf("\t*"); } else { printf("\tX"); } } printf("\n"); } } void iniciaNavios(int navios[][2]){ //À rigor, não existem números aleatórios em Computação. Então, os computadores também usam algoritmos e códigos para gerarem esses números que devem ser, teoricamente, aleatórios. //Porém, nunca serão totalmente aleatórios, pois são gerados por código, por funções e tarefas específicas //Para deixar os números mais aleatórios possíveis, podemos "alimentar" a função que gere esses números com números diferentes. //Esses números são chamados de semente. O tempo pode ser utilizado como semente. srand(time(NULL)); //A função srand, que gera números aleatórios, está sendo chamada utilizando como semente o tempo retornado pela função time(NULL) //Ou seja, a função srand passa como parâmetro o tempo retornado por time(NULL) //A função time(NULL) retorna um número inteiro que corresponde ao número de segundos passados desde 1 de janeiro de 1970, às 00:00. int navio, anterior; for(navio=0 ; navio < 3 ; navio++){ navios[navio][0]= rand()%5; navios[navio][1]= rand()%5; //rand()%5 significa que a função irá gerar um número aleatório entre 0 e 4 //se quisesse //agora vamos checar se esse par não foi sorteado //se foi, so sai do do...while enquanto sortear um diferente for(anterior=0 ; anterior < navio ; anterior++){ if( (navios[navio][0] == navios[anterior][0])&&(navios[navio][1] == navios[anterior][1]) ) do{ navios[navio][0]= rand()%5; navios[navio][1]= rand()%5; }while( (navios[navio][0] == navios[anterior][0])&&(navios[navio][1] == navios[anterior][1]) ); } } } int main(){ int tabuleiro[5][5]; int navios[3][2]; inicializaTabuleiro(tabuleiro); mostrarTabuleiro(tabuleiro); iniciaNavios(navios); return 0; }