public interface Hanoi
setup
- nastavení parametrů hry (počet disků) a
inicializace hracího plánu (všechny disky jsou vlevo
move
- opakované přesuny disků podle pravidel
done
- poslední kontrola, zda jsou všechny disky
vpravo
IllegalStateException
.Modifier and Type | Interface and Description |
---|---|
static class |
Hanoi.Place
Poloha věže.
|
Modifier and Type | Field and Description |
---|---|
static Hanoi |
EMPTY
Prázdná implementace pravidel.
|
Modifier and Type | Method and Description |
---|---|
void |
done()
Ověří ukončení hry.
|
void |
move(Hanoi.Place from,
Hanoi.Place to)
Přesune jeden disk z jedné věže na druhou.
|
void |
setup(int count)
Spustí novou hru.
|
static final Hanoi EMPTY
void setup(int count) throws java.lang.IllegalArgumentException
count
- počet diskůjava.lang.IllegalArgumentException
- pokud počet disků není kladné číslovoid move(Hanoi.Place from, Hanoi.Place to) throws java.lang.IllegalStateException
from
- poloha věže, ze které se má disk přesunoutto
- poloha věže, na kterou se má být disk přesunoutjava.lang.IllegalStateException
- pokud je tah v rozporu s pravidlyvoid done() throws java.lang.IllegalStateException
java.lang.IllegalStateException
- pokud hra není na konci (jsou disky, které
zůstaly na levé nebo střední věži)