Problema muy f?cil de simular el giro de un dado.
Enlace Al principio el dado est? con el 1 en la cara de superior el 2 en la cara arriba, y el 3 en la cara izquierda. Te dan una serie de direcciones (norte, sur, este y oeste) y tienes que calcular que cara del dado quedar? arriba al terminar los movimientos.
C?mo deberiamos saber, las caras opuestas de un dado suman 7: detr?s del 1 estar? el 6, detr?s de 2 el 5 y detr?s del 3 el 4. Por lo tanto s?lo son necesarias tres variables para almacenar todas las caras del dado.
Pensando un poco podemos sacar las sencillas operaciones que se realizan en cada movimiento:
* norte
la nueva cara superior es igual a (7 - cara de arriba)
la nueva cara de arriba es la que antes era la superior
* sur
la nueva cara superior ser? la que antes estaba arriba
la nueva cara de arriba ser? (7 - cara superior)
Las direcciones este y oeste requieren 2 operaciones igual que las que he explicado arriba. Se dejan como ejercicio a quien le interese.
Truquillo:
Las direcciones nos las indican con palabras (north, east, ...), no hace falte comparar la palabra entera se puede comprobar el primer car?cter para saber la direcci?n que es m?s r?pido que comparar una cadena de caracteres.