import javax.swing.JOptionPane;

public class Hanoi {

  private static void muoviUnDisco(int sorg, int dest) {
    System.out.println("muovi un disco da " + sorg + " a " + dest);
  }

  private static void muovi(int n, int sorg, int dest, int aux) {
    if (n == 1)
      muoviUnDisco(sorg, dest);
    else {
      muovi(n-1, sorg, aux, dest);
      muoviUnDisco(sorg, dest);
      muovi(n-1, aux, dest, sorg);
    }
  }

  public static void main (String[] args) {
    
    int n = Integer.parseInt(
      JOptionPane.showInputDialog("Quanti dischi vuoi muovere?"));

    System.out.println("Per muovere " + n +
                       " dischi da 1 a 2 con 3 come appoggio:");
    muovi(n, 1, 2, 3);

    System.exit(0);
  }
}




//---------------------------------------------------------


/*

*/
