int main() { Mapa m[MAX+2][MAX+2]; Fila f[MAX][MAX]; int i,j; int nLinhas,nColunas; scanf("%d%d",&nLinhas,&nColunas); inicia_mapa(m,nLinhas,nColunas); /*faz a leitura e inicializa os valores da estrutura mapa*/ for(i=1;i<=nLinhas;i++) for(j=1;j<=nColunas;j++){ scanf("%d",&m[i][j].n); m[i][j].i = i; m[i][j].j = j; m[i][j].rotulo = 0; } /*acha os pontos dissipadores e os coloca na fila*/ rotular_pontos(m, f, nLinhas, nColunas); /*executa o algoritmo para resolver o problema*/ calcula_lda(m, f, nLinhas, nColunas); /*imprime a saida*/ for(i=1;i<=nLinhas;i++){ for(j=1;j<=nColunas;j++) printf("%c ",m[i][j].rotulo); printf("\n"); } return 0; }
//--------------------------------------------------------------------------------------------------------------------------------------------------- void novo_jogo(){ intizinho opcao = 0; Jogo jogo; MapaJogo mapa; system("cls"); inicia_mapa(&(jogo.mapa)); jogo = cria_jogo("<SEM NOME>", START, &(jogo.mapa)); //pause(); //dicas_de_jogo(); //posicionar_embarcacoes(&(jogo.mapa)); do{ opcao = menu_partida(); switch(opcao){ case 1: //jogo(); imprimir_mapa_partida((jogo.mapa).player, (jogo.mapa).partida_inimigo); pause(); break; case 2: if(salvar_jogo(&jogo)==TRUE){ //nothing }else{ printf("N%co foi poss%cvel salvar jogo.\n", CHAR_ATIO, CHAR_IACENTO); pause(); } break; case 3: if(salvar_jogo(&jogo)==TRUE){ //nothing }else{ printf("N%co foi poss%cvel salvar jogo.\n", CHAR_ATIO, CHAR_IACENTO); pause(); } opcao=STOP; break; case 4: opcao=STOP; break; default: printf("Op%c%co inv%clida.", CHAR_CEDILHA, CHAR_ATIO, CHAR_AAGUDO); pause(); continue; } }while(opcao!=STOP); }
//--------------------------------------------------------------------------------------------------------------------------------------------------- Jogo cria_jogo(char* nome, intizinho turno, MapaJogo* mapa){ //receb o nome, o turno e os mapas e retorna a struct jogo intizinho i=0,j=0; Jogo jogo; if(nome == NULL){ nome = (char *) calloc(TAMANHO_NOME_JOGO, sizeof(char)); strcpy(nome, "<VAZIO>"); }else{ //nothing } if(mapa == NULL){ mapa = (MapaJogo *) malloc(sizeof(MapaJogo)); inicia_mapa(mapa); }else{ //nothing } strcpy(jogo.nome, nome); jogo.turno = turno; jogo.mapa = *mapa; return jogo; }