//******************************************************************* // Hanoi1.java //******************************************************************* public class Hanoi1 { public static String towerOfHanoi(int ndisks, int fromPeg, int toPeg) { int helpPeg; String Sol1, Sol2, MyStep; if (ndisks == 1) return "Move " + fromPeg + " ---> " + toPeg + "\n"; else { helpPeg = 6 - fromPeg - toPeg; Sol1 = towerOfHanoi(ndisks-1, fromPeg, helpPeg); MyStep = "Move " + fromPeg + " ---> " + toPeg + "\n"; Sol2 = towerOfHanoi(ndisks-1, helpPeg, toPeg); return Sol1 + MyStep + Sol2; } } public static void main (String[] args) { int ndisks = 4; // Try also with ndisks = 3 to gain insight int fromPeg = 1; int toPeg = 3; String StepsToSolution; StepsToSolution = towerOfHanoi(ndisks, fromPeg, toPeg); System.out.println(StepsToSolution); } }