С Новым годом! Форум программистов, компьютерный форум, киберфорум
Pascal ABC
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.87/76: Рейтинг темы: голосов - 76, средняя оценка - 4.87
0 / 0 / 0
Регистрация: 19.09.2011
Сообщений: 4
1

Ханойская башня

22.09.2011, 09:21. Показов 14346. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Даны три стержня, на один из которых нанизаны N колец, причем кольца отличаются размером и лежат меньшее на большем. Задача состоит в том, чтобы перенести пирамиду из N колец с первого на второй стержень. За один раз разрешается переносить только одно кольцо, причём нельзя класть большее кольцо на меньшее. Напишите программу, которая по заданному N выводит алгоритм решения задачи.
Формат входных данных
Входной файл содержит единственное число N (1 ≤ N ≤ 10) .
Формат выходных данных
В выходной файл выведите алгоритм решения задачи, по одному действию на строку. Действие выводится в форме "a->b" (без кавычек) и означает, что верхнее кольцо со стержня a нужно переложить на стержень b. Если решений несколько, выдайте любое, содержащее не более 10000 действий.

Помогите плиз
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
22.09.2011, 09:21
Ответы с готовыми решениями:

Задача ''Ханойская башня'' (рекурсивная функция)
Имеются три колышка A,B,C и N дисков разного диаметра на A, пронумерованных от 1 до N в порядке...

Ханойская башня
Ханойская башня является одной из популярных головоломок XIX века. Даны три стержня, на один из...

Ханойская башня
Здравтвуйте! Нужно решить задачу где на вход дано Н стержней и К дисков и еще известны начальная и...

Ханойская башня
"Ханойская башня". Имеются три колышка A,B,C (Пользователь сам должен задавать с какого колышка на...

3
Почетный модератор
64303 / 47600 / 32742
Регистрация: 18.05.2008
Сообщений: 115,181
22.09.2011, 14:56 2
Уж эту задачу ни один сайт не пропустил где пишут о рекурсии, и алгоритм и готовые коды...

Добавлено через 1 минуту
Если уж в Гугле забанили, то держи.
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
Program Hanoi3; {3*— потому что для трех стержней}
uses crt;
Var N : byte;
Procedure Hanoi(first,second,third,N : byte); {first, second, third*— номера начального, промежуточного и конечного стержней, N*— количество дисков, которые надо перенести}
Begin
 If N=1 then
 writeln(first,' --> ',third,'; ') {тривиальный перенос одного диска*— вместо вывода на экран можно вызвать процедуру, отображающую перенос графически}
 else
 begin
  Hanoi(first,third,second,N-1); {перенос N-1 дисков на промежуточный стержень}
  Hanoi(first,second,third,1); {перенос 1*диска на конечный стержень}
  Hanoi(second,first,third,N-1); {перенос N-1 дисков с промежуточного на конечный стержень}
 end;
End;
Begin
 {ввод N*— количество дисков}
  write('n=');
  read(n);
 if N>0 then
 Hanoi(1,2,3,N); {переносим N дисков с стержня №1 на стержень №3}
//здесь поменяй местами 2 и 3 в параметрах процедуры
End.
0
0 / 0 / 0
Регистрация: 19.09.2011
Сообщений: 4
23.09.2011, 07:32  [ТС] 3
спс огромное
0
0 / 0 / 1
Регистрация: 25.12.2010
Сообщений: 54
16.01.2012, 16:41 4
помогите пожалуйста решить эту же задачу тока с 5 стерженями
0
16.01.2012, 16:41
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
16.01.2012, 16:41
Помогаю со студенческими работами здесь

Ханойская башня
Такая вот беда: Программа написана, вот только загвостка встала с тем, что при когда компьютер сам...

Ханойская башня
Кто нибудь может помочь реализовать решение ханойской башни на языке UML в любой среде?

Ханойская башня
Помогите разобраться в коде я понимать для чего procedure Beg (Sen: TObject); procedure...

Ханойская башня
Новичок в ПХП пытаюсь изучить этот язык. И тут попал в тупик, не могу написать код для решения...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Как создать игру "Танчики" на Unity3d и C#
InfoMaster 14.01.2025
Разработка игр – это увлекательный процесс, сочетающий в себе творчество и технические навыки. В этой статье мы рассмотрим создание классической игры "Танчики" с использованием Unity3D и языка. . .
Организую платный онлайн микро-курс по доработке Android-клиента Telegram
_Ivana 14.01.2025
Официальная версия и распространенные форки не полностью устраивают? Сделай свою кастомную версию клиента! 4 занятия по 2 часа (2 недели пн, ср 19:00-21:00 по Москве). Первое вводное занятие. . .
Как создать приложение для фитнеса для iOS/iPhone на Kotlin
InfoMaster 14.01.2025
Создание собственного фитнес-приложения — это не только захватывающий, но и полезный процесс, ведь оно может стать вашим верным помощником на пути к здоровому и активному образу жизни. В современных. . .
Как создать приложение магазина для iOS/iPhone на Swift
InfoMaster 14.01.2025
Введение в разработку iOS-приложений Разработка приложений для iPhone и других устройств на базе iOS открывает огромные возможности для создания инновационных мобильных решений. В данной статье мы. . .
Это работает. Скорость асинхронной логики велика. Вопрос видимо останется в стабильности. Плата - огонь!
Hrethgir 13.01.2025
По прошлому проекту в Logisim Evolution https:/ / www. cyberforum. ru/ blogs/ 223907/ blog8781. html прилагаю файл архива проекта Gowin Eda и снимок. Восьмибитный счётчик из сумматора+ генератор сигнала. . .
UserScript для подсветки кнопок языков программировани­­­­я в зависимости от текущего раздела
volvo 13.01.2025
В результате работы этого скрипта подсвечиваются нужные кнопки не только в форме быстрого ответа, но и при редактировании сообщения: / / ==UserScript== / / @name CF_DefaultLangSelect / / . . .
Введение в модели и алгоритмы машинного обучения
InfoMaster 12.01.2025
Машинное обучение представляет собой одну из наиболее динамично развивающихся областей искусственного интеллекта, которая фокусируется на разработке алгоритмов и методов, позволяющих компьютерам. . .
Как на Python создать нейросеть для решения задач
InfoMaster 12.01.2025
В контексте стремительного развития современных технологий особое внимание уделяется таким инструментам, как нейросети. Эти структуры, вдохновленные биологическими нейронными сетями, используются для. . .
Как создать нейросеть для генерации картинок на Python
InfoMaster 12.01.2025
Генерация изображений с помощью искусственных нейронных сетей стала одним из наиболее захватывающих направлений в области компьютерного зрения и машинного обучения. В этой статье мы рассмотрим. . .
Создание нейросети для генерации текста на Python
InfoMaster 12.01.2025
Нейросети, или искусственные нейронные сети, представляют собой модели машинного обучения, вдохновленные работой человеческого мозга. Они состоят из множества взаимосвязанных узлов, или "нейронов",. . .
Как создать нейросеть распознавания изображений на Python
InfoMaster 12.01.2025
Введение в распознавание изображений с помощью нейросетей Распознавание изображений с помощью нейронных сетей стало одним из самых впечатляющих достижений в области искусственного интеллекта. Эта. . .
Основы искуственного интеллекта
InfoMaster 12.01.2025
Искусственный интеллект (ИИ) представляет собой одну из наиболее динамично развивающихся областей современной науки и технологий. В широком смысле под искусственным интеллектом понимается способность. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru