Ir para conteúdo
Fórum Script Brasil
  • 0

Por favor ajudem-me


stblink

Pergunta

olá pessoal,

eu preciso de ajuda para desenvolver um código. será que me podem ajudar??

este é o trabalho que tenho de fazer:

"" 1ª Parte

Pretende-se desenvolver um sistema de encontrar caminhos num labirinto.

Para especificar a forma do labirinto, é fornecido um ficheiro com '#' e '.', que representam as paredes e as passagens, respectivamente.

O sistema deve devolver um caminho válido, na forma de uma lista de movimentos a efectuar, dadas uma entrada e uma saída.

A dimensão do labirinto não é fixa, ou seja, o número de linhas e colunas é determinado com base no input.

O sistema pode ser definido por uma função procura_caminho(labirinto, entrada, saida)

entrada e saida devem ser pares ordenados (linha,coluna)

labirinto pode ser qualquer estrutura que represente o labirinto (sugestão: usar uma lista de linhas, na qual cada linha é uma lista de colunas grande sorriso).

Exemplo:

Input

#####

...##

##.##

##..#

###.#

###..

#####

Output (definindo a entrada em (1,0) e a saída em (5,4)):

['r','r','d','d','r','d','d','r']

(as direcções são ®ight, (l)eft, (u)p ou (d)own)

2ª Parte

1. Transformar a lista de output da 1ª parte na seguinte forma (sem repetições de movimentos): [(2,'r'),(2,'d'),(1,'r'),(2,'d'),(1,'r')]

2. Definir uma função todos_caminhos, que mostra todos os caminhos possíveis para chegar da entrada à saída, ordenados pelo número de movimentos necessários.

3. Usar a biblioteca do TurtleWorld para:

* Desenhar o labirinto dado como input

* Dado o output modificado no ponto 1), fazer uma tartaruga percorrer o percurso indicado na lista (no fundo, entrar e sair do labirinto) ""

Peço que me ajudem, por favor.

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

A entrada será sempre nesta ordem de cima para baixo, ou poderá ser váriavel?

Agora to sem tempo, fiz um rascunho...Depois dou mais uma olhada.

Segue essa linha:

entrada = open("entrada.txt")

linhaEntrada = 1
colunaEntrada = 0
linhaSaida = 5
colunaSaida = 4

linha = ""
caminhos = []

for linhaCaminho, linhaArquivo in enumerate(entrada.readlines()):
    for colunaCaminho, caracter in enumerate(linhaArquivo[:-1]):
        caminhos.append([linhaCaminho, colunaCaminho, caracter])
        
for caminho in caminhos:
    if caminho[2] == '.':
        print caminho

E ai, não comentasse mais nada, ta saindo alguma coisa ae?

Editado por marcio_jagua
Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,5k
×
×
  • Criar Novo...