::Tower of Hanoi ::

The Tower of Hanoi (also called the Tower of Brahma or Lucas' Tower,[1] and sometimes pluralized) is amathematical game or puzzle. It consists of three rods, and a number of disks of different sizes which can slide onto any rod. The puzzle starts with the disks in a neat stack in ascending order of size on one rod, the smallest at the top, thus making a conical shape
The objective of the puzzle is to move the entire stack to another rod, obeying the following simple rules:
  1. Only one disk can be moved at a time.
  2. Each move consists of taking the upper disk from one of the stacks and placing it on top of another stack i.e. a disk can only be moved if it is the uppermost disk on a stack.
  3. No disk may be placed on top of a smaller disk.
With three disks, the puzzle can be solved in seven moves. The minimum number of moves required to solve a Tower of Hanoi puzzle is 2n - 1, where n is the number of disks.


 
#include <iostream>
 using namespace std;
void towers(int, char, char, char);

int main()
{
    int num;

    cout<<"Enter the number of disks : "<<endl;
    cin>>num;
    cout<<"The sequence of moves of the Tower of Hanoi are :\n"<<endl;
    towers(num, 'A', 'C', 'B');
    return 0;
}
void towers(int num, char A, char B, char C)
{
    if (num == 1)
    {
        cout<<"\nMove disk "<<num<<" from peg "<< A<<" to peg "<< B<<endl;
        return ;
    }
    towers(num - 1, A, C, B);


    cout<<"Move disk "<< num <<" from peg "<< A<<" to peg "<<B;
    towers(num - 1, C, B, A);
}


::Output ::


Show Comments: OR

0 comments:

Post a Comment

আপনার একটি মন্তব্য একজন লেখক কে ভালো কিছু লিখার অনুপ্ররেনা যোগাই তাই প্রতিটি পোস্ট পড়ার পর নিজের মতামত জানাতে ভুলবেন না । তবে এমন কোন মন্তব্য করবেন না যাতে লেখকের মনে আঘাত করে !!

 
Top

Contact With Me