Форум программистов, компьютерный форум CyberForum.ru

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

Восстановить пароль Регистрация
Другие темы раздела
C++ шаблоны функциии http://www.cyberforum.ru/cpp-beginners/thread1151123.html
Программирование с использованием шаблонов функции.
C++ Ofstream дублирует бэк-слеш Здравствуйте, столкнулся с проблемой, что при чтении из файла путём использования потока ofstream у меня дублируются все находящиеся в файле бэк-слэши. Для того чтобы не изобретать с вашей помощью новое колесо сразу скажу, что мне необходимо чтобы из файла скопировался символ переноса строки \n. Как это можно сделать? http://www.cyberforum.ru/cpp-beginners/thread1151105.html
Сборка многофайлового приложения: ошибка LNK2005 C++
Привет! Помогите пожалуйста разобраться со организацией исходников. Структура такова: ColorButton.h в нем подключается Object.h и Panel.h Panel.h в нем подключается Object.h и ColorButton.h Object.h в нем подключается Point.h Application.h в нем подключается Object.h main.cpp подключает Application.h, ColorButton.h и Panel.h Для каждого .h кроме Point.h есть соответствующий .cpp, где...
В чем ошибка в файловом потоке? C++
Есть программа. В файле borders.in такой текст: 6 6 2 1 1 4 4 3 3 6 6 . В файл borders.out выводится сам массив. Во время компиляции включается отладка и Visual Studio указывает на ошибку в fstream. Помогите найти ошибку вмоей программе. void F() { int b, value; int a,c,k,num,q,w,e,r/*, xm,ym,xm1,ym1*/; ifstream in("C:\\doc\\borders.in"); ofstream out("C:\\doc\\borders.out"); in...
C++ Функция упорядочивания элементов set http://www.cyberforum.ru/cpp-beginners/thread1151091.html
Возникла проблема на классах (элементами сет были классы). Но я попробовал такую вещь с int, и появилась та же ошибка. bool com (const int& a, const int& b) { return a<b; } Эта функция сравнения двух чисел. Теперь пытаюсь создать множество set<int, com> s; но компилятор выдает ошибку: error C2923: std::set: "com" не является допустимым аргументом типа шаблон для параметра "_Pr"...
C++ Перевод числа в p-ичной системе счисления в десятичную систему Задание: Дана символьная строка, представляющая собой запись натурального числа в p-ичной системе счисления (2 ≤ р ≤ 9). Составить программу для перевода этого числа в десятичную систему счисления. В общем начал писать код и заступорился: #include <iostream> #include <string> using namespace std; int main() { int s,p,n; подробнее

Показать сообщение отдельно
hardxx
Сообщений: n/a
18.04.2014, 20:58     Ханойская башня
Легенда гласит, что, в Великом храме города Бенарас, под собором, отмечающим середину мира, находится бронзовый диск, на котором укреплены 3 алмазных стержня, высотой в один локоть и толщиной с пчелу. Давным-давно, в самом начале времен монахи этого монастыря провинились перед богом Брамой. Разгневанный, Бог Брама поместил на один из стержней 64 диска из чистого золота, причем так, что каждый меньший диск лежит на большем. Монахи должны были переместить все диски с одного стержня на другой при условии, что при каждом перемещении можно брать только один диск и больший диск никогда нельзя положить на меньший. Третий стержень предоставляет возможность для временного размещения дисков. Как только все 64 диска будут переложены со стержня, на который Бог Брама сложил их при создании мира, на другой стержень, башня вместе с храмом обратятся в пыль и под громовые раскаты погибнет мир.


Напишите программу решения этой задачи.
Перемещение N дисков может быть легко представлено в терминах перемещения только N-1 диска (и, следовательно, рекурсивно):
1. Переместить N-1 дисков с колышка 1 на колышек 2, используя колышек 3 как место временного размещения.
2. Переместить последний диск ( наибольший ) с колышка 1 на колышек 3
3. Переместить N-1 дисков с колышка 2 на колышек 3, используя колышек 1 как место временного размещения.
Используйте рекурсивную функцию с четырьмя параметрами:
1. Количество дисков, которое должно быть перемещено.
2. Колышек, на который эти диски нанизаны первоначально.
3. Колышек, на который эта группа дисков должна быть перемещена.
4. Колышек, используемый как место временного размещения.
Ваша программа должна печатать четкие инструкции, что нужно делать для перемещения дисков с начального колышка на конечный. Например, чтобы передвинуть группу из трех дисков с колышка 1 на колышек 3, ваша программа должна напечатать следующую последовательность перемещений:
1->3 (это обозначает перенос диска с 1-го колышка на 3-ий)
1->2
3->2
1->3
2->1
2->3
1->3
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 17:45. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru