prog

1122 palavras 5 páginas
/* * Programa para decidir o melhor caminho entre dois pontos de um bairro * * */

/*dimensões do bairro (Linhas, colunas)*/ #define LINHAS 5 #define COLUNAS 8

//definir constantes para as direções //norte #define N 'N' //sul #define S 'S' //Este #define E 'E' //Oeste #define O 'O'

//livre #define L '#'

//Halt (bloqueado) #define H 'H'

//definir os limites (onde deve ocorrer o ultimo passo na direção indicada) //limite Este #define LE (COLUNAS-1)

//limite Norte #define LN (0)

//limite Sul #define LS (LINHAS-1)

//limite Oeste #define LO (0)

#include

/* * Ler impedimentos do utilizador e guardar */ void lerImpedimentos( char bairroImp[][COLUNAS], int linhas);

/* * protótipos direção (movimentos) * */ void norte ( int local[ ] ); void sul( int local[ ] ); void este( int local[ ] ); void oeste( int local[ ] );

/* * decide para onde ir (N)orte ou (E)ste mediante impedimentos ou não * recebe a configuração do bairro, e o local atual, e para onde pretende ir * retorna H (halt) caso nenhum movimento pode ser usado */ char decideNE(char bairroImp[ ][ COLUNAS], const int local[ ], char vouPara);

/* * caminho a seguir, dando uma direção inicial * recebe a configuração do bairro, e o local atual, e para onde pretende ir * retorna numero de passos até o destino */ int caminho( char bairroImp[ ][ COLUNAS], int posicao[ ], const int posicaoFinal[], char rumoInicial);

//decide o melhor caminho a percorrer entre dois pontos de um bairro int main(int argc, char *argv[]){ int linha = 0; //linha atual usada na leitura dos impedimentos //1) configuração inicial de impedimentos char bairroImp[ LINHAS ][ COLUNAS ] = { //0 1 2 3 4 5 6 7 { L , L , L , L , L , E, L, L} , //0 { L , L , L , L , L , N, L, L} , //1 { N , L , L , L , L , E, L, L} , //2 { L , S , L , L , L , L, L, L} , //3 { L , N , L , L , E , L, L, L} //4 }; //2) posiçoes iniciais e finais com valores fixos (4,0) e (0,7) int posicao[2] = {4, 0}; int posicaoFinal[2] = {0, 7}; //3) rumo

Relacionados

  • Prog
    330 palavras | 2 páginas
  • prog
    412 palavras | 2 páginas
  • prog
    5006 palavras | 21 páginas
  • PROG
    2652 palavras | 11 páginas
  • prog
    1577 palavras | 7 páginas
  • prog
    551 palavras | 3 páginas
  • prog
    2806 palavras | 12 páginas
  • Prog
    1681 palavras | 7 páginas
  • Prog
    564 palavras | 3 páginas
  • prog
    1275 palavras | 6 páginas