He empleado vectores para manejar los estados y los viajes
* Estado_ini: 3M y 3C en la izquierda, 0M y0C en la derecha, y la canoa en la izquierda. Aquí es donde empezamos.
* Estado_fin: 0M y 0C en la izquierda, 3M y 3C en la derecha, y la canoa en la derecha. Aquí es a donde queremos llegar.* Viajes: 1M y 0C, 0M y 1C, 1M y 1C, 2M y 0C, 0M y 2C. Son las posibilidades de personal que puede ir en la canoa. Como no busco todas las soluciones, el resultado dependerá del orden en el que seprueben estas posibilidades.
He definido 3 funciones auxiliares, para simplificar el algoritmo:
* valido? (estado): devuelve cierto si un estado es válido. Comprueba que el número de individuos seacorrecto, porque probamos todos los viajes, aunque sean imposibles. Además verifica las condiciones del problema (que no se coman a la gente).
* canoa(estado, viaje): modifica el estado según elviaje indicado.
* muestraEstado(estado): muestra el estado de una forma más o menos bonita.
M:3 C:3 \___/ ~~~~~~~~ M:0 C:0
M:2 C:2 ~~~~~~~~ \___/M:1 C:1
M:3 C:2 \___/ ~~~~~~~~ M:0 C:1
M:3 C:0 ~~~~~~~~ \___/ M:0 C:3
M:3 C:1 \___/ ~~~~~~~~ M:0 C:2
M:1 C:1 ~~~~~~~~ \___/ M:2 C:2M:2 C:2 \___/ ~~~~~~~~ M:1 C:1
M:0 C:2 ~~~~~~~~ \___/ M:3 C:1
M:0 C:3 \___/ ~~~~~~~~ M:3 C:0
M:0 C:1 ~~~~~~~~ \___/ M:3 C:2M:1 C:1 \___/ ~~~~~~~~ M:2 C:2
M:0 C:0 ~~~~~~~~ \___/ M:3 C:3
Algunas funciones del marco teórico son: |
* Ampliar el horizonte del estudio y ofrecer una guía alinvestigador para que se centre en su problema y evite las desviaciones
* Ampliar la descripción y el análisis del problema planteado
* Fundamentar las hipótesis que den respuesta a las...
Regístrate para leer el documento completo.