Towers of hanoi problem, Computer Engineering

Assignment Help:

The Towers of Hanoi Problem

Towers of Hanoi problem is described. There are three pegs on which disks are "threaded" (there are holes in the disks to allow them to be placed on the pegs). No two disks have the same size and one can never place a larger disk stop a smaller disk. Only one disk can be moved at a time (and when a disk is not being move, it must be on one of the pegs). The problems starts with all the disks on one peg and the goal is to move them all to one other peg.

Write a program that solves the Towers of Hanoi problem. However, we want to make some minor changes to the speci?cation provided in the textbook.

Instead of numbering the pegs 1, 2, and 3, number them 0, 1, and 2. You code should start with all the disk on peg 0 and the goal is to move them all to peg 2.

Call the function you write to solve the problem hanoi(). This is a void function. Instead of four parameters (as described in the textbook), the function should take ?ve parameters as follows:

1. The total number of disks on all the pegs.

2. The number of disks to be moved.

3. The peg on which the disks are initially threaded (i.e., the "source" peg).

4. The peg to which these disks are to be moved (i.e., the "destination" peg).

5. The peg to use as a temporary holding peg.

Note that parameters 2 through 5 in the list above are the same as the parameters 1 through 4 as described in the textbook. The only new parameter is the ?rst one and, once initially set, this parameter will not change throughout the remainder of the execution of the program  though not necessary for the solution of this problem, the reason for including this parameter will be more clear in the next problem.


Related Discussions:- Towers of hanoi problem

Propositional inference rules - artificial intelligence, Propositional Infe...

Propositional Inference Rules -Artificial intelligence : Equivalence rules are specifically useful because of the vice-versa aspect,that means we can discover forwards andbackw

Give difference between assembler and interpreter, Give difference between ...

Give difference between assembler and interpreter. Assembler: It is the translator for an assembly language of computer. An assembly language is a low-level programming langu

Multi-threaded processors, Multi-Threaded Processors In unit 2, we have...

Multi-Threaded Processors In unit 2, we have gone through the use of distributed shared memory in parallel computer architecture. Although the use of distributed shared memory

Write the command to show the ip host table, show hosts is the command whi...

show hosts is the command which display the IP host table

What are the techniques of data collection, What are the techniques of Data...

What are the techniques of Data Collection It can be either automatic or manual. Manual techniques can include: -  Keypads/Keyboards to type in data -  touch screens to s

What do you mean by manual assembly, Q. What do you mean by Manual Assembly...

Q. What do you mean by Manual Assembly? It was an old method which required the programmer to translate every opcode in its numerical machine language representation by search

Ascii characters, Display how the value ASCII "MIRIAM" is stored in memory ...

Display how the value ASCII "MIRIAM" is stored in memory in Big Endian format starting at location 100 hexadecimal. Suppose that each memory location kept two ASCII characters.

General concepts of links and association, General Concepts of links and as...

General Concepts of links and association A link is a conceptual or physical connection among objects for instance. Mathematically, you can define a link as a tuple which is a

What is refactoring, What is refactoring? Refactoring is explained as t...

What is refactoring? Refactoring is explained as the changes to the internal structure of software to improve its design without changing its external functionality. It is an e

Reading decision trees, Reading Decision Trees: However we can justifi...

Reading Decision Trees: However we can justified by see that a link between decision tree representations and logical representations that can be exploited to make it easier t

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd