Задание
Написать программу, которая будет просить пользователя ввести буквы башен от и до, или завершить программу. Пользователь должен ввести буквы башен, например 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.
platonlaptev