Пример #1
0
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;
}
Пример #2
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);
	
}
Пример #3
0
//---------------------------------------------------------------------------------------------------------------------------------------------------
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;
}