Задание
Написать программу, которая будет просить пользователя ввести буквы башен от и до, или завершить программу. Пользователь должен ввести буквы башен, например AB, и у нас выводится три стержня с перенесенными дисками.
Функционал программы
Функционал простой. Программа просит пользователя ввести буквы башен от и до, или завершить программу. Пользователь вводит буквы башен, например AB, и программа выводит три стержня с перенесенными дисками. Чтобы завершить программу, надо написать QUIT, и программа пишет, спасибо за игру.
Фрагмент программного кода
def main():
print("""Ханойская башня,
Перемещайте башню дисков, по одному диску за раз, в другую башню.
Диски большего размера не могут располагаться поверх диска меньшего размера.
"""
)
# Set up the towers. The end of the list is the top of the tower.
towers = {'A': copy.copy(COMPLETE_TOWER), 'B': [], 'C': []}
while True:
displayTowers(towers)
# Ask the user for a move:
fromTower, toTower = askForPlayerMove(towers)
# Move the top disk from fromTower to toTower:
disk = towers[fromTower].pop()
towers[toTower].append(disk)
# Check if the user has solved the puzzle:
if COMPLETE_TOWER in (towers['B'], towers['C']):
displayTowers(towers) # Display the towers one last time.
print('Вы разгадали головоломку! Отличная работа!')
sys.exit()
def askForPlayerMove(towers):
"""Asks the player for a move. Returns (fromTower, toTower)."""
while True:
print('Введите буквы башен "от" и "до" или ЗАВЕРШИТЕ')
print('(например, AB для перемещения диска из башни A в башню B.)')
response = input('> ').upper().strip()
Скриншот архива с проектом
Пояснения по запуску программы
Запустить PyCharm, открыть проект и запустить программу, нажав на вкладку вверху и run Main.

Телеграм
-