|
2 / 1 / 1
Регистрация: 20.01.2023
Сообщений: 63
|
||||||
Модифицированная задача о Ханойских башнях19.12.2024, 03:53. Показов 1354. Ответов 0
Не получается реализовать визуальное перемещение дисков, как сделать так, чтобы при нажатии на кнопки итераций они передвигались. И правильно ли считается общее количество проделанных итераций для перемещения всех дисков на шпиндель один. Помогите пожалуйста, месяц уже голову ломаю. Дайте ответ пожалуйста кодом
Сама задача: Существует 8 шпинделей, пронумерованных от 8 до 1 справа налево. На каждом шпинделе надеты диски, в количестве, равном соответствующей цифре 70198120. Все диски имеют разные диаметры. Диаметр диска равен M * 10 + N, где М – номер шпинделя, на котором надет диск, а N – это номер диска на шпинделе, считая сверху вниз. Необходимо визуально изобразить предложенную задачу. Диски на шпинделях сделать случайных цветов. На каждом диске отображать цифру, равную его диаметру. Диаметр диска также показывать его фактическим размером в пикселях. Необходимо вычислить, за какое минимальное количество итераций переместятся все диски на шпиндель номер 1 по следующим правилам: • За одну итерацию можно переместить один диск; • диски можно класть только с большего на меньший; • cо шпинделя номер 8 можно перекладывать диски только на шпиндели 7 и 6; • cо шпинделя 1 можно перекладывать диски только на шпиндели номер 2 и 3; • cо шпинделей от 2 по 7 можно перекладывать диски только на два соседних шпинделя. Необходимо отобразить начальное и конечное расположение дисков на шпинделях, для этого под изображением Ханойских башен предусмотреть две кнопки «Начало» и «Окончание». При нажатии на нее, в надписи под схемой должен выводится текст «Итерация ХХ», где ХХ – номер итерации (либо 0, либо номер итоговой итерации, соответственно). Необходимо графически отобразить четыре промежуточные итерации перекладывания дисков. Для этого: a. общее количество итераций признаётся равным 100%; b. 70198120 делится на 4 двузначных числа, каждое из которых обозначает итерацию, соответствующую этому проценту выполнения общей задачи. Под изображением Ханойских башень предусмотреть четыре поля для ввода цифр с процентами выполнения. По-умолчанию добавить туда числа 70198120 Под каждым полем для ввода предусмотреть кнопку, при нажатии на которую схема Ханойской башни отображает расположение дисков на соответствующей итерации. Также в надписи под схемой должен выводится текст «Итерация ХХ», где ХХ – номер итерации. Дать возможность пользователю изменять проценты в полях для ввода цифр, и по нажатию соответствующей кнопки просматривать расположение дисков на данной итерации. Основная часть работы над задачей сводится к правильной визуализации полученных результатов, а также оптимальному поиску промежуточных результатов. Так как размер диска должен соответствовать его номеру на шпинделе и номеру самого шпинделя, умноженного на 10, то максимальный диаметр диска может быть 89. Поэтому для правильной визуализации без наложения дисков рекомендуется выдерживать расстояние между шпинделями примерно в 100-120 пикселей (для окна формата 1280х1024). Поскольку диски близких размеров будут отличаться всего на один пиксель, то для контроля на каждом диске необходимо проставить его диаметр в виде цифры. Так как в конце задачи все диски будут находиться на первом шпинделе, а общее количество дисков теоретически может быть равно 72, то рекомендуется сделать толщину одного диска примерно равной 10-12 пикселям, для указанного окна. Остальные элементы управления под схемой Ханойской башни рекомендуется выстраивать при нажатии на кнопки, нужно показать итерации, соответствующие 70%, 19%, 81% и 20% выполнения задачи. Если по какому-либо проценту получается дробная итерация, то необходимо её визуализировать как промежуточный этап переноса диска. При этом диск изобразить в воздухе, между тем шпинделем, с которого он снят, и тем, на который он переносится. Номер итерации в таком случае отображать как дробный, с округлением до 3 цифр после нуля. Входные данные: Номер из 8 цифр, промежуточные проценты, вводимые в соответствующие поля над кнопками. Выходные данные: На цифровом дисплее должно отображаться окно с начальным расположением дисков на шпинделях Ханойских башень. Шпиндели пронумерованы, на дисках также обозначены соответствующие диаметры. Под ней отображается шесть кнопок и четыре поля для ввода цифр. В нижней части экрана демонстрируется надпись «Итерация 0». При нажатии на любую из шести имеющихся кнопок, либо при заполнении поля ввода другими данными и нажатии на кнопку, схема ханойских башень меняется, для отображения соответствующей итерации. Надпись в нижней части экрана также меняется.
0
|
||||||
| 19.12.2024, 03:53 | |
|
Ответы с готовыми решениями:
0
Модифицированная задача о Ханойских башнях Задача о Ханойских башнях Задача о Ханойских башнях |
| 19.12.2024, 03:53 | |
|
Помогаю со студенческими работами здесь
1
задача о Ханойских башнях Модифицированния задача о ханойских башнях
Нерекурсивное решение в Ханойских башнях Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Как я обхитрил таблицу Word
Alexander-7 21.03.2026
Когда мигает курсор у внешнего края таблицы, и нам надо перейти на новую строку, а при нажатии Enter создается новый ряд таблицы с ячейками, то мы вместо нервных нажатий Энтеров мы пишем любые буквы. . .
|
Krabik - рыболовный бот для WoW 3.3.5a
AmbA 21.03.2026
без регистрации и смс.
Это не торговля, приложение не содержит рекламы. Выполняет свою непосредственную задачу - автоматизацию рыбалки в WoW - и ничего более. Однако если админы будут против -. . .
|
Программный отбор значений справочника
Maks 21.03.2026
Установка программного отбора значений справочника "Сотрудники" из модуля формы документа.
В качестве фильтра для отбора служит предопределенное значение перечислений.
Процедура. . .
|
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
|
|
Оттенки серого
Argus19 18.03.2026
Оттенки серого
Нашёл в интернете 3 прекрасных модуля:
Модуль класса открытия диалога открытия/ сохранения файла на Win32 API;
Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
|
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога
Финальные проекты на Си и на C++:
finish-rectangles-sdl3-c. zip
finish-rectangles-sdl3-cpp. zip
|
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие.
Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
|
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ВВЕДЕНИЕ
Выполняя задание на управление насосной группой заполнения резервуара,. . .
|