elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Únete al Grupo Steam elhacker.NET


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  Laberinto en java
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Laberinto en java  (Leído 5,276 veces)
fprg

Desconectado Desconectado

Mensajes: 16


Ver Perfil
Laberinto en java
« en: 12 Octubre 2015, 23:37 pm »

Me gustaría hacer un laberinto en java y con un metodo comprobarsi todas las poiciones estan accesibles. Ya tengo el codigo para generar un laberinto, pero no se me ocurre como puedo comprobar si las posiciones estan accesibles. Tendria que hacer recursividad para ir pasando por cada posicion del array?
Gracias!!


En línea

0roch1

Desconectado Desconectado

Mensajes: 123



Ver Perfil
Re: Laberinto en java
« Respuesta #1 en: 12 Octubre 2015, 23:44 pm »

Debes ser más especifico de cómo lo estás llevando a cabo.
De ser posible coloca algo de código.

Utiliza el Geshi para resaltar el código.


En línea

Devdox

Desconectado Desconectado

Mensajes: 7



Ver Perfil WWW
Re: Laberinto en java
« Respuesta #2 en: 13 Octubre 2015, 13:40 pm »

No estoy muy seguro a que te refieres, puede ser que lo que quieres decir es cómo comprobar que los caminos que has generado en tu laberinto son funcionales, es decir, están comunicados.

Hay de esto muchos ejemplos en Intenet, simplemente con escribir en Google algo como: "Creating a maze solving algorithm in Java" te saldrán muchísimos ejemplos.

Yo, si tuviera que hacerlo, dividiría esto en dos partes:
- La primera, comprobaría si el laberinto generado tiene al menos una solución (es decir, si al menos puedo llegar de una forma de la entrada a la salida), de no ser así, tendría que generar un nuevo laberinto o corregir este.
- La segunda parte, una vez que sabemos que al menos tiene una solución, sería comprobar que todos los caminos que hubiera en el laberinto estuvieran conectados entre sí, es decir, que no hubiera ninguna calle a la que no se pudiera entrar, de encontrar errores en esta fase, el algoritmo los corregiría.

Realmente, si no quieres calentarte mucho la cabeza, haz un algoritmo que solamente resuelva la primera parte, porque ya con esa parte, se puede decir que tienes un laberinto "funcional", y ya si quieres hacer algo ya más decente, pues ya sabes, haz las dos partes :D

P.D: Si nos explicaras mejor tu proyecto, o nos enseñaras algo de código, te podríamos ayudar mejor.
En línea

Mi nuevo blog [en construcción]: http://misternauta.wordpress.com
Ocelot1994

Desconectado Desconectado

Mensajes: 40



Ver Perfil
Re: Laberinto en java
« Respuesta #3 en: 13 Octubre 2015, 15:57 pm »

Resumidamente puedes crear varias variables segun cada posición del laberinto,es decir:
Crear una variable para las casillas que son el camino,otra para el obstaculo(serian las paredes) ,y otra libre para saber a cuales puedes acceder..
Para acceder con un if de este estilo:
Código
  1. if(Lab[X][Y] != libre)
  2.                      toret =false;
  3.  
  4.                  else {
  5.                        .........}
  6.  
Ese es un ejemplo pero obviamente habría que hacer mas comprobaciones ,según como te puedes mover o si la siguiente casilla es una pared..etc
Espero que sea esto a lo que te refieres.
Un saludo
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Interfaz Grafica en Java (Laberinto)
Java
cyberx4 2 13,772 Último mensaje 3 Septiembre 2005, 03:05 am
por cyberx4
Laberinto en Php.
PHP
n3fisto 2 4,598 Último mensaje 20 Marzo 2010, 15:26 pm
por n3fisto
Problema laberinto java
Java
fran774 2 5,935 Último mensaje 4 Noviembre 2014, 10:04 am
por fran774
laberinto en java
Java
fprg 1 2,640 Último mensaje 20 Octubre 2015, 13:19 pm
por explorer
MOVIDO: laberinto en java
Programación General
Eleкtro 0 1,859 Último mensaje 3 Octubre 2015, 18:38 pm
por Eleкtro
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines