Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

C++ Towers of Hanoi. There is a story about Buddhist monks who are playing this puzzle with 64 stone disks. The story claims that when

C++

Towers of Hanoi.

There is a story about Buddhist monks who are playing this puzzle with 64 stone disks. The story claims that when the monks finish moving the disks from one post to a second via the third post, time will end. Eschatology (concerns about the end of time) and theology will be left to those better qualified; our interest is limited to the recursive solution to the problem.

A stack of n disks of decreasing size is placed on one of three posts. The task is to move the disks one at a time from the first post to the second. To do this, any disk can be moved from any post to any other post, subject to the rule that you can never place a larger disk over a smaller disk. The (spare) third post is provided to make the solution possible. Your task is to write a recursive function that describes instructions for a solution to this problem. We dont have graphics available, so you should output a sequence of instructions that will solve the problem.

Hint:

If you could move n-1 of the disks from the first post to the third post using the second post as a spare, the last disk could be moved from the first post to the second post.

Then by using the same technique (whatever that may be) you can move the n-1 disks from the third post to the second post, using the first disk as a spare. There! You have the puzzle solved. You only have to decide what the non-recursive case is, what the recursive case is, and when to output instructions to move the disks.

I am expecting to see the following sample output from a run of this program:

RUN 1:

TOWERS of Hanoi Enter a number of disks to play. I'll give necessary moves. 3 Move a disk from post A to post B Move a disk from post A to post C Move a disk from post B to post C Move a disk from post A to post B Move a disk from post C to post A Move a disk from post C to post B Move a disk from post A to post B

Process returned 0 (0x0) execution time : 4.788 s Press any key to continue.

------------------------------------------

RUN 2

TOWERS of Hanoi Enter a number of disks to play. I'll give necessary moves. 4 Move a disk from post A to post C Move a disk from post A to post B Move a disk from post C to post B Move a disk from post A to post C Move a disk from post B to post A Move a disk from post B to post C Move a disk from post A to post C Move a disk from post A to post B Move a disk from post C to post B Move a disk from post C to post A Move a disk from post B to post A Move a disk from post C to post B Move a disk from post A to post C Move a disk from post A to post B Move a disk from post C to post B

Process returned 0 (0x0) execution time : 7.769 s Press any key to continue.

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Database Technology And Management Computers And Information Processing Systems For Business

Authors: Robert C. Goldstein

1st Edition

0471887374, 978-0471887379

More Books

Students also viewed these Databases questions