[경성 프로그래밍 교육 5일차]파이썬 프로그래밍 - 하노이 타워

중고생을 위한 경성 프로그래밍 교육(파이썬 프로그래밍) - 5.GUI 프로그래밍

파이썬특강5.pptx



하노이타워(파이썬 프로그래밍)

재귀를 이용하여 하노이 타워 문제를 해결해 보자.


*교육 종료 후 소스코드 제공




def main():

n = eval(input("디스크의 개수를 입력하세요 : "))


print("옮기는 순서는 다음과 같습니다 :")

moveDisks(n, 'A', 'B', 'C')


def moveDisks(n, fromTower, toTower, auxTower):

if n==1: # 정지 조건

print("디스크", n, "을/를", fromTower, "에서", toTower, "로 옮긴다.")

else:

moveDisks(n-1, fromTower, auxTower, toTower)

print("디스크", n, "을/를", fromTower, "에서", toTower, "로 옮긴다.")

moveDisks(n-1, auxTower, toTower, fromTower)


main()



실행결과