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

Функции. Рекурсия. - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Подскажите как делать,пожалуйста http://www.cyberforum.ru/cpp-beginners/thread394039.html
Вот задачка,сколько сижу думаю над ней,не понимаю=( 1)Соседями элементами Аij в матрице назовем элементы Аkl(внизу) c i-1<=k<=i+1,j-1<=l<=j+1, (k,l)<>(не равно)(i,j). Операция сглаживания матрицы...
C++ Работа с файловой системой... Дискеты Доброго времени, возникла необходимость создать видимость пустой дискеты. В связи с чем 2 вопроса: - Возможно ли это с обратимостью? - Возможно ли это для флешки? И самое главное, что нужно... http://www.cyberforum.ru/cpp-beginners/thread394036.html
C++ 3адачки (в виде фотографии)
Прошу решить задачи на с++... Тык Нужны 3,4,6,7,8,9,10,11,12 задачи. Благодарю вас за помощь, надеюсь поможете. Задания нужно сдать до 20 декабря, иначе не допустят к зачету >< ...
C++ Открыть файл, имя которого задается с клавиатуры. Переписать в другой файл только те строки, которые содержат заданное слово.
Открыть файл, имя которого задается с клавиатуры. Переписать в другой файл только те строки, которые содержат заданное слово. помогите написать программу. так сказать подстраховаться если что) а...
C++ галаксиан http://www.cyberforum.ru/cpp-beginners/thread394023.html
Добрый вечер, есть задача: написать упрощенную версию игры типа старого доброго "Галаксиана" (скриншот из игры в аттаче - общий смысл из него понятен). Что у меня есть на данный момент так это юнит,...
C++ задачи C++ Пожалуйста помогите решить задачи!!!3 вариант подробнее

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

Функции. Рекурсия. - C++

29.11.2011, 08:45. Просмотров 634. Ответов 4
Метки (Все метки)

Пишем в Microsoft Visual Studio -> Win32 Console Application -> C++. С помощью Рекурсий.

Условие задачи :
Перемещение 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

На сколько я знаю это не много сложней чем ряд Фибоначчи, но как это "выразить" без понятия, очень надеюсь на вашу помощь.
(Кажется такую задачу, с помощью массивов решил всего один человек в мире, если у кого есть ссылка на более детальную информацию буду благодарен! )

Добавлено через 14 часов 23 минуты
Ряд Фибоначчи

C++
1
2
3
4
5
6
7
8
9
    int F (int n)
    {
        if(n<0)
    return 0;
    else if (n==0 || n==1)
        return n;
    else
        return F(n-1) + F(n-2);
    }

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