/** * Title: Chapter 4, "Methods" * Description: Examples for Chapter 4 * Copyright: Copyright (c) 2000 * Company: Armstrong Atlantic State University * @author Y. Daniel Liang * @version 1.0 */ // TowersOfHanoi.java: Find solutions for the Towers of Hanoi problem // package chapter4; public class TowersOfHanoi { // Main method public static void main(String[] args) { // Read number of disks, n System.out.println("Enter number of disks"); int n = MyInput.readInt(); // Find the solution recursively System.out.println("The moves are:"); moveDisks(n, 'A', 'B', 'C'); } // The method for finding the solution to move n disks // from fromTower to toTower with auxTower public static void moveDisks(int n, char fromTower, char toTower, char auxTower) { if (n==1) // Stopping condition System.out.println("Move disk " + n + " from " + fromTower+" to " + toTower); else { moveDisks(n-1, fromTower, auxTower, toTower); System.out.println("Move disk " + n + " from " + fromTower + " to " + toTower); moveDisks(n-1, auxTower, toTower, fromTower); } } }