Tower Of Hanoi In Java Example

Chapter: Math Class Last Updated: 05-11-2016 13:27:20 UTC

Program:

            /* ............... START ............... */
                
public class JavaTowerOfHanoi {

	private static void hanoi(int disks) {
		hanoi(disks, "Pole 1", "Pole 3", "Pole 2");
	}

	private static void hanoi(int disks, String from, String to, String using) {
		if (disks != 0) {
			hanoi(disks - 1, from, using, to);
			System.out.println("Move disk " + disks + " from " + from + " to " + to);
			hanoi(disks - 1, using, to, from);
		}
	}

	public static void main(String[] arg) throws Exception {
		hanoi(4);
	}
}

                /* ............... END ............... */
        

Output

Move disk 1 from Pole 1 to Pole 2
Move disk 2 from Pole 1 to Pole 3
Move disk 1 from Pole 2 to Pole 3
Move disk 3 from Pole 1 to Pole 2
Move disk 1 from Pole 3 to Pole 1
Move disk 2 from Pole 3 to Pole 2
Move disk 1 from Pole 1 to Pole 2
Move disk 4 from Pole 1 to Pole 3
Move disk 1 from Pole 2 to Pole 3
Move disk 2 from Pole 2 to Pole 1
Move disk 1 from Pole 3 to Pole 1
Move disk 3 from Pole 2 to Pole 3
Move disk 1 from Pole 1 to Pole 2
Move disk 2 from Pole 1 to Pole 3
Move disk 1 from Pole 2 to Pole 3

Notes:

  • Towers of Hanoi is a famous game.
  • In this game there are three poles and N number of disks placed one over another in increasing in size from top to bottom.
  • Objective of this game is to move disks from first pole to last pole.
  • And the condition is we can not place bigger disk on top of smaller disk.
  • Initially all disks placed in first pole smaller disk will be on top and bigger disk will be on bottom.
  • We need to move all the disks from from first pole to last pole.
  • Rules of tower of Hanoi:
  • We can move only one disk at a time.
  • At any poi of time larger disk can not be placed on smaller disk.
  • In order to solve this problem we have given a second pole so we can use second pole and move disks from first pole to third pole.
  • We can solve this using rec recursive procedure.

Tags

Tower Of Hanoi, Java, Math

Similar Programs Chapter Last Updated
Java Program To Calculate Standard Deviation Math Class 21-09-2017
Java Program To Display Factors Of Number Math Class 12-09-2017
Java Program To Find Power Of Number Using pow() Function Math Class 29-08-2017
Java Program To Find Quotient And Remainder Math Class 25-08-2017
Java Matrix Multiplication Math Class 18-05-2017
Java Matrix Subtraction Math Class 18-05-2017
Java Matrix Addition Math Class 17-05-2017
LCM And GCD Of Two Numbers In Java Math Class 14-05-2017
Java Cube Root Of Number Math Class 10-03-2017
Java Program To Calculate Area Of Right Triangle Math Class 16-12-2016
Java Program To Find Rectangle Perimeter Math Class 15-06-2016
Java Program To Find Circle Perimeter Math Class 15-06-2016
Math.Floor In Java Example Math Class 14-06-2016
Math.ceil In Java Example Math Class 14-06-2016
Java Program To Find Square Root Of Given Number Math Class 14-06-2016
Random Number Generation In Java Example Math Class 14-06-2016
Quadratic Equation In Java Example Math Class 14-06-2016
Java Program To Displays Powers of 2 Example Math Class 14-06-2016
Java Program To Check For Scalar Matrix Math Class 30-05-2016
Java Program To Find Saddle Point In Square Matrix Math Class 30-05-2016
Decimal To Octal Converstion In Java Math Class 30-05-2016
Decimal To Binary Converstion In Java Math Class 30-05-2016
Java Program To Check For Upper Triangular Matrix Math Class 28-05-2016
Java Program To Check For Pronic Number Math Class 28-05-2016
Java Program To Find Value Of Mobius Function For number Math Class 28-05-2016
Java Program To Check For Lower Triangular Matrix Math Class 28-05-2016
Java Program To Check For Harshad Number Math Class 28-05-2016
Java Program To Check Fascinating Number Math Class 28-05-2016
Java Program To Check For Evil Number Math Class 28-05-2016
Java Program To Check Bouncy Number Increasing Decreasing Number Math Class 07-02-2018

1 2