Java - problema de la col,oveja y lobo en JAVA

 
Vista:

problema de la col,oveja y lobo en JAVA

Publicado por prego (2 intervenciones) el 31/01/2005 23:32:58
Antes de nada gracias ya solo por leer esto........NECESITO AYUDA!!

Necesito implementar en Java el problema de la col, la oveja y el lobo.
Por si alguien desconoce el problema aki os lo explico:

"Este acertijo es un clásico: Un granjero tiene una cabra, un lobo y una col. Tiene que cruzar un río, pero en la barca sólo caben el granjero y uno de sus animales o la col. Cuando el granjero está presente, puede separar a los animales, pero si deja a la oveja con el lobo solos, éste se la comería (la oveja evidentemente hará lo propio con la col).

¿Cómo puede cruzar los tres animales a la otra orilla sin que nadie se coma a nadie?"

LA SOLUCION SERIA:

"primero pasa con la oveja, la deja y vuelve a por la col, lleva la col, la deja y coge a la oveja y va a por el lobo, cuando coge al lobo deja a la oveja, lleva al lobo a junto la col y por ultimo coge a la oveja"

El problema es que no consigo pasarlo a Java.....me lio muchiiiisimo!!

Necesito ayuda, tengo que entregarlo este VIERNES!!

AYUDA POR FAVOR!!

Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:problema de la col,oveja y lobo en JAVA

Publicado por Wilfredo Vargas Almendras (314 intervenciones) el 01/02/2005 15:46:27
Hola, bueno este problema es clasico, mira existen varias formas de resolverlos. La estrategia es la siguiente:
Construyes una estructura de datos, de tal manera que los metodos de esta te den la posibles acciones que puedes realizar, en estos debes restringir los estados a los cuales no puedes llegar en el desarrollo de tu problema, ya debes conocer las tecnicas de primero el mejor, amplitud, etc. De acuerdo a estas deberas generar las busquedas necesarias para llegar a la solucion..Luego una vez llegado al estado deseado, haces un recorrido hacia atras en tus estructuras de datos y podras desplegar el camino..

Espero te sea de ayuda...

SALUDOS Wilfredo Vargas Almendras
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:problema de la col,oveja y lobo en JAVA

Publicado por prego (2 intervenciones) el 01/02/2005 16:24:24
Necesito codigo................
..........ademas necesito hacer vclases, subclases y relaciones de herencia.
Tenemos que hacer una case PASAJERO que contiene los atribitos oveja, col y lobo y tiene una relacion consigo misma para saber quien come a quien.

De todos modos Gracias por tu interes...

GRACIAS!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Problema de la Zanahoria = Col, Cabra= Oveja y Lobo en JAVA

Publicado por FerCho (2 intervenciones) el 14/12/2014 08:30:49
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
package proyectojuego;
 
import java.util.Scanner;
 
public class ProyectoJuego {
 
// Un hombre, un lobo, una cabra y una zanahoria deben pasar un río, para ello 
// se dispone de una barca con capacidad para dos ocupantes, el hombre 
// (único que sabe remar) y otro. Si en una orilla se quedan solos el lobo y la 
// cabra, el lobo se come a la cabra. Si en una orilla se quedan solos la cabra 
// y la zanahoria, la cabra se come la zanahoria.
    public static void main(String[] args) {
 
        Scanner leer = new Scanner(System.in);
 
        int desicion = 1;
        int devolver;
        int devolver2;
        int devolver3;
        int devolver4;
        int remador;
        int sujeto1;
        int sujeto2;
        int sujeto3;
        int sujeto4;
 
        System.out.println("*****************************************************");
        System.out.println("Bienvenidos al Video Juego Como Cruzar el Rio");
        System.out.println("Usted Debe Hallar la Manera Para Cruzar a Todos");
        System.out.println("En la Barca Solo Caben 2 Sujetos");
        System.out.println("Utilize Solamente Numeros");
 
        while (desicion == 1) {
            System.out.println("Tenemos : ");
            System.out.println("1- A la Cabra");
            System.out.println("2- A la Zanahoria");
            System.out.println("3- Al el Lobo");
            System.out.println("4- Al el Hombre");
            System.out.println("A Cual Desea Pasar en el Espacio de Remador");
            System.out.print("-----> ");
            remador = leer.nextInt();
            System.out.println("  ");
 
            switch (remador) {
 
                case 1: {
                    System.err.println("****************************************");
                    System.err.println("---***Game Over***---");
                    System.err.println("La Cabra no Sabe Remar");
                    System.err.println("****************************************");
                    System.out.println("¿Desea Continuar el Juego?");
                    System.out.println("1- Si * 2- No");
                    System.out.print("-----> ");
                    desicion = leer.nextInt();
                    System.out.println("****************************************");
                    System.out.println(" ");
                    break;
                }
                case 2: {
                    System.err.println("****************************************");
                    System.err.println("---***Game Over***---");
                    System.err.println("La Zanahoria no Sabe Remar");
                    System.err.println("****************************************");
                    System.out.println("¿Desea Continuar el Juego?");
                    System.out.println("1- Si * 2- No");
                    System.out.print("-----> ");
                    desicion = leer.nextInt();
                    System.out.println("****************************************");
                    System.out.println(" ");
                    break;
                }
                case 3: {
                    System.err.println("****************************************");
                    System.err.println("---***Game Over***---");
                    System.err.println("El Lobo no Sabe Remar");
                    System.err.println("****************************************");
                    System.out.println("¿Desea Continuar el Juego?");
                    System.out.println("1- Si * 2- No");
                    System.out.print("-----> ");
                    desicion = leer.nextInt();
                    System.out.println("****************************************");
                    System.out.println(" ");
                    break;
                }
                case 4: {
                    System.out.println("Usted ha Eligido Al Hombre, Ahora");
                    System.out.println("¿Quien Acompaña al Hombre?");
                    System.out.println("1- El Lobo");
                    System.out.println("2- La Zanahoria");
                    System.out.println("3- La Cabra");
                    System.out.print("-----> ");
                    sujeto1 = leer.nextInt();
                    System.out.println(" ");
                    switch (sujeto1) {
                        case 1: {
                            System.err.println("****************************************");
                            System.err.println("-----*****Game Over*****-----");
                            System.err.println("La Cabra se Comio a Zanahoria");
                            System.err.println("****************************************");
                            System.out.println("¿Desea Continuar el Juego?");
                            System.out.println("1- Si * 2- No");
                            System.out.print("-----> ");
                            desicion = leer.nextInt();
                            System.out.println("****************************************");
                            System.out.println(" ");
                            break;
                        }
                        case 2: {
                            System.err.println("****************************************");
                            System.err.println("-----*****Game Over*****-----");
                            System.err.println("El Lobo se Comio a la Cabra");
                            System.err.println("****************************************");
                            System.out.println("¿Desea Continuar el Juego?");
                            System.out.println("1- Si * 2- No");
                            System.out.print("-----> ");
                            desicion = leer.nextInt();
                            System.out.println("****************************************");
                            System.out.println(" ");
                            break;
                        }
                        case 3: {
                            System.out.println("Usted ha Eligido La Cabra, Ahora");
                            System.out.println("La Cabra Esta del Otro Lado del Rio");
                            System.out.println("El Hombre Vuelve y Ahora");
                            System.out.println("¿A Quien Lleva?");
                            System.out.println("1- El Lobo");
                            System.out.println("2- La Zanahoria ");
                            System.out.print("-----> ");
                            sujeto2 = leer.nextInt();
                            System.out.println(" ");
                            switch (sujeto2) {
                                case 1: {
                                    System.out.println("Usted ha Eligido Al Lobo, Ahora");
                                    System.out.println("El Lobo Esta del Otro Lado del Rio con la Cabra");
                                    System.out.println("¿Desea Regresar con Alguno?");
                                    System.out.println("Digite: ");
                                    System.out.println("1- Ninguno");
                                    System.out.println("2- El Lobo");
                                    System.out.println("3- La Cabra");
                                    System.out.print("-----> ");
                                    devolver = leer.nextInt();
                                    System.out.println(" ");
                                    switch (devolver) {
                                        case 1: {
                                            System.err.println("****************************************");
                                            System.err.println("-----*****Game Over*****-----");
                                            System.err.println("El Lobo se Comio a la Cabra");
                                            System.err.println("****************************************");
                                            System.out.println("¿Desea Continuar el Juego?");
                                            System.out.println("1- Si * 2- No");
                                            System.out.print("-----> ");
                                            desicion = leer.nextInt();
                                            System.out.println("****************************************");
                                            System.out.println(" ");
                                            break;
                                        }
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Problema de la Zanahoria=Col, Cabra=Oveja y Lobo en JAVA

Publicado por FerCho (2 intervenciones) el 14/12/2014 08:34:03
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
case 2: {
	System.err.println("****************************************");
	System.err.println("-----*****Game Over*****-----");
	System.err.println("Hizo el Mismo Movimiento");
	System.err.println("****************************************");
	System.out.println("¿Desea Continuar el Juego?");
	System.out.println("1- Si * 2- No");
	System.out.print("-----> ");
	desicion = leer.nextInt();
	System.out.println("****************************************");
	System.out.println(" ");
	break;
}
case 3: {
	System.out.println("Usted ha Eligido La Cabra");
	System.out.println("Ahora La Cabra Esta del Lado Original con La Zanahoria");
	System.out.println("¿Ahora a Cual Desea Llevar al Otro Lado del Rio con El Lobo");
	System.out.println("1- Ninguno");
	System.out.println("2- La Cabra");
	System.out.println("3- Zanahoria");
	System.out.print("-----> ");
	sujeto3 = leer.nextInt();
	System.out.println(" ");
	switch (sujeto3) {
		case 1: {
			System.err.println("****************************************");
			System.err.println("-----*****Game Over*****-----");
			System.err.println("La Cabra se Comio a Zanahoria");
			System.err.println("****************************************");
			System.out.println("¿Desea Continuar el Juego?");
			System.out.println("1- Si * 2- No");
			System.out.print("-----> ");
			desicion = leer.nextInt();
			System.out.println("****************************************");
			System.out.println(" ");
			break;
		}
		case 2: {
			System.err.println("****************************************");
			System.err.println("-----*****Game Over*****-----");
			System.err.println("Hizo el Mismo Movimiento");
			System.err.println("****************************************");
			System.out.println("¿Desea Continuar el Juego?");
			System.out.println("1- Si * 2- No");
			System.out.print("-----> ");
			desicion = leer.nextInt();
			System.out.println("****************************************");
			System.out.println(" ");
			break;
		}
		case 3: {
			System.out.println("Usted ha Eligido La Zanahoria");
			System.out.println("Ahora La Zanahoria Esta del Otro Lado del Rio con El Lobo");
			System.out.println("¿Desea Regresar Con Alguno?");
			System.out.println("1- Ninguno");
			System.out.println("2- La Zanahoria");
			System.out.println("3- El Lobo");
			System.out.print("-----> ");
			devolver2 = leer.nextInt();
			System.out.println(" ");
			switch (devolver2) {
				case 1: {
					System.out.println("El Hombre Volvio Solo");
					System.out.println("Ahora La Cabra se Monto en la Barca Para Llegar al Otro Lado del Rio");
					System.out.println(" ");
					System.out.println("****************************************");
					System.out.println("Todos los Participantes Esta en el Otro Lado del Rio");
					System.out.println("Felicidades");
					System.out.println("Usted ha Ganado El Juego");
					System.out.println("Fin");
					System.out.println("****************************************");
					desicion = 2;
					System.out.println(" ");
					break;
				}
				case 2: {
					System.err.println("****************************************");
					System.err.println("-----*****Game Over*****-----");
					System.err.println("Hizo el Mismo Movimiento");
					System.err.println("****************************************");
					System.out.println("¿Desea Continuar el Juego?");
					System.out.println("1- Si * 2- No");
					System.out.print("-----> ");
					desicion = leer.nextInt();
					System.out.println("****************************************");
					System.out.println(" ");
					break;
				}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar