TI/Skrypty z zajęć/hanoi
Z Brain-wiki
# -*- coding: utf-8 -*-
"""
Created on Wed Apr 22 10:19:10 2020
@author: Tomek
"""
"""
Opis zagadnienia dostępny jest w załączonym nagraniu ze spotkania.
Należy napisać funkcję o nazwie "hanoi", która jako parametry przyjmuje:
n - liczbę dysków do przeniesienia,
z - nazwę wieży z której przenosimy,
przez - nazwę wieży pośredniczącej,
do - nazwę wieży docelowej.
Funkcja ma wypisywać kolejność ruchów prowadzących do przeniesienia "n" dysków z wieży "z" do wieży "do".
Przykład: hanoi(2, 'A' , 'B' , 'C' ) powinno wyświetlić:
"Przenieś dysk z A do B
Przenieś dysk z A do C
Przenieś dysk z B do C"
"""
def hanoi(n, z, przez, do):
"""Przenieś (n-1) dysków z A do B przez C
Przenieś dysk z A do C
Przenieś (n-1) dysków z B do C przez A """
if n>0:
hanoi(n-1, z, do, przez)
print('Przednies dysk z', z, 'do', do)
hanoi(n-1, przez, z, do)
hanoi(7,'A','B','C')