Jogo que procura minas ! Ajuda ! como fazer!

6 respostas
R

Seguinte, alguém consegue me ajudar a fazer um jogo em java onde o objetivo é encontrar as minas. Só que tem regras que precisam ser seguidas. Não estou conseguindo fazer. As regras são:

  1. Apresente uma aplicação que, dado um arquivo de entrada
    qualquer (ver exemploentrada.txt), RODE e seja capaz de
    percorrer o grafo (terreno) até que encontre TODAS as minas, não
    havendo necessidade de voltar a origem, que sempre será a linha
    1, coluna 1.

  2. Cada posição da matriz do grafo (terreno) apresenta três valores
    
    distintos:
    
    · 0 (zero) posição livre;
    
    · 1 (um) obstáculo;
    
    · * (asterisco) mina.
    
  3. Como o objetivo é encontrar TODAS as minas com o menor
    número de passos, cada vez que o robô passar por uma posição 0
    (zero) ele pagará uma multa de 1 unidade e cada vez que
    encontrar uma mina, ganha um prêmio de 10 unidades. A partir
    da empresa que apresentar o menor custo médio nas 5 (cinco)
    entradas distintas que serão apresentadas no dia, haverá uma
    penalização de 0,5 ponto por colocação, ou seja, 0,5 ponto para a
    segunda, 1,0 ponto para a terceira, assim por diante.

  4. Cada entrada, que deve ser lida de um arquivo texto, DEVE gerar
    um arquivo de saída, no formato do arquivo exemplo, cujo nome é
    exemplosaida.txt:

exemplo arquivo de entrada.txt

5 > tamanho da matriz, sempre quadrada

3 > total de minas

0 0 1 0 0
1 0 1 * 1 \

  • 0 0 0 0 > matriz com as informacoes, separadas por um espaco
    0 1 0 1 * /
    1 0 0 1 0 /

Obs: Terá que fazer o melhor caminho possível em qualquer arquivo de entrada dado.

6 Respostas

Marky.Vasconcelos

Opa… ajudamos sim…

Só falar onde voce tem duvida.

T

Acho que ele não sabe nem onde começar. Deve ser um exercício do livro de Algoritmos; talvez seja interessante ver com ele qual é o capítulo do livro que ele está lendo, para sabermos quais os algoritmos que devem ser usados para resolver o tal problema.

R

isso…
é um exercício que um professor passou em aula…
mas nao sei nem como começar…
ele passou esse exercício quando ele ensinou Busca em Largura e Busca em profundidade.
Mas nao sei como fazer… eu tenho a ideia, mas nao sei implementar…
se alguém puder me ajudar de algum jeito eu agradeço…

Marky.Vasconcelos

Um começo pra voce…

Scanner sc = new Scanner(arquivo);
List<String[]> matriz = new ArrayList<String[]>();

while(sc.hasNext())
matriz.add(sc.nextLine().split(" "));

arquivo é o arquivo de entrada que voce vai receber. Só falta implementar a lógica de procurar o caminho mais rapido.

R

Mark_Ameba:
Um começo pra voce…

Scanner sc = new Scanner(arquivo);
List<String[]> matriz = new ArrayList<String[]>();

while(sc.hasNext())
matriz.add(sc.nextLine().split(" "));

arquivo é o arquivo de entrada que voce vai receber. Só falta implementar a lógica de procurar o caminho mais rapido.

ok, mas não entendi o seguinte. Eu preciso ler as duas primeiras linhas do arquivo txt e armazer em duas variaveis e a partir daí ler a matriz do txt e jogar na matriz do java. Acho que esse código não faz isso, ou faz??

Marky.Vasconcelos

Não ele só pega o conteudo do arquivo e cria uma matriz contendo em cada posição um array com todas as palavras das linhas.

O resto é com voce… quando tiver duvidas pergunte.

Criado 20 de maio de 2009
Ultima resposta 21 de mai. de 2009
Respostas 6
Participantes 3