Форум программистов, компьютерный форум, киберфорум
Наши страницы

Ханойские башни - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ WT С++ - нужен пример http://www.cyberforum.ru/cpp-beginners/thread1069578.html
хочу разобраться с библиотекой WT С++ смотрел код чата на сайте, но как то слишком там не понятно, мошь есть у кого другой пример?
C++ Найдите в массиве целых чисел наиболее часто встречающийся элемент Найдите в массиве целых чисел наиболее часто встречающийся элемент и выведите его на экран монитора. Ввод элементов массива осуществляйте с клавиатуры в процессе работы программы. Вроде задание... http://www.cyberforum.ru/cpp-beginners/thread1069577.html
Не компилится программа, которая переводит градусы Цельсия по Фарангейту и наоборот C++
Это 2 моя прога, первая была простая которая выводила Hello World так что не судите если код плохой,еще учусь. Нужно написать программу которая переводит градусы Цельсия по Фарангейту и наоборот,...
Мусор в переменной C++
Здравствуйте, есть следующий фрагмент кода: void main() { setlocale(LC_ALL,""); srand(time(NULL)); const int ar = 10; int square; int max, min, sr, sumch, sumnech; int...
C++ Функция n*(n+1). Написать прототип http://www.cyberforum.ru/cpp-beginners/thread1069537.html
Такоя задача: Написать прототип на функция: int sum(int n); n на вход из клавиатуре. Например если n из клавиатуре 4,результат будет 1х2+2х3+3х4.....n*(n+1). Написать еще главноя функция с...
C++ Верно ли, что сумма элементов массива, которые больше 20, превышает 100 Дан массив целых чисел. Выяснить: а)верно ли, что сумма элементов, которые больше 20, превышает 100. б)верно ли, что сумма элементов, которые... подробнее

Показать сообщение отдельно
Bog_prog
0 / 0 / 0
Регистрация: 01.01.2014
Сообщений: 8

Ханойские башни - C++

12.01.2014, 19:53. Просмотров 1434. Ответов 4
Метки (Все метки)

Головоломка “Ханойские башни” состоит из трех стержней,
пронумерованных числами 1, 2, 3. На стержень 1 надета пирамидка из n дисков
различного диаметра в порядке возрастания диаметра. Диски можно перекладывать с одного стержня
на другой по одному, при этом диск нельзя класть на диск меньшего диаметра.
Необходимо переложить всю пирамидку со стержня 1 на стержень 3 за минимальное число
перекладываний.


Напишите программу, которая решает головоломку; для данного числа дисков n
печатает последовательность перекладываний в формате
a b c, где a — номер перекладываемого диска, b — номер стержня с которого снимается данный диск, c — номер стержня на который надевается данный диск.


Например, строка 1 2 3 означает перемещение диска номер 1 со стержня
2 на стержень 3. В одной строке печатается одна команда.
Диски пронумерованы числами от 1 до n в порядке возрастания диаметров.


Программа должна вывести минимальный (по количеству произведенных операций) способ перекладывания пирамидки из данного числа дисков.
Указание: подумайте, как переложить пирамидку из одного диска? Из двух дисков?
Из трех дисков? Из четырех дисков? Пусть мы научились перекладывать пирамидку
из n дисков с произвольного стержня на любой другой, как переложить пирамидку из n+1 диска,
если можно пользоваться решением для n дисков.


Напишите функцию move (n, x, y),
которая печатает последовательность перекладываний дисков для перемещения
пирамидки высоты n со стержня номер x на стержень номер y.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru