Duda EmptyStackException
Publicado por Sergio (2 intervenciones) el 21/06/2020 17:35:34
Hola, estaba haciendo un juego del solitario, tengo una variable llamada montonExterior que es un array de cuatro pilas (una pila para cada palo, 12 cartas por palo). Al finalizar el juego, cuando no me queden movimientos quería contar el número de cartas que hay en total en el montón exterior.
La baraja tiene ochos y nueves, hay 48 cartas.
Si coloco más de 24 cartas en el montón exterior quiero que salga el mensaje "ánimo", si no consigo más de 24, quiero imprimir el mensaje "Ha perdido".
Para ello hice el siguiente código:
El anterior código me da una EmptyStackException en la línea de montonExterior[i].pop.
He solucionado el problema cambiando el código al siguiente:
Alguien me podría decir por qué antes me daba el EmptyStackException? Muchas gracias.
La baraja tiene ochos y nueves, hay 48 cartas.
Si coloco más de 24 cartas en el montón exterior quiero que salga el mensaje "ánimo", si no consigo más de 24, quiero imprimir el mensaje "Ha perdido".
Para ello hice el siguiente código:
1
2
3
4
5
6
7
8
9
10
int contador =0;
for (int i = 0; i < 4; i++) {
while(!montonExterior[i].empty()){
for (int j =0; j<12;j++){
montonExterior[i].pop();
contador++;
}
}
}
El anterior código me da una EmptyStackException en la línea de montonExterior[i].pop.
He solucionado el problema cambiando el código al siguiente:
1
2
3
4
5
6
7
8
9
10
int contador =0;
for (int i = 0; i < 4; i++) {
do{
if(!montonExterior[i].empty()){
montonExterior[i].pop();
contador++;
}
}while(!montonExterior[i].empty());
}
Alguien me podría decir por qué antes me daba el EmptyStackException? Muchas gracias.
Valora esta pregunta


0