av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

python繪制漢諾塔

瀏覽:76日期:2022-06-26 17:03:27

本文實例為大家分享了python繪制漢諾塔的具體代碼,供大家參考,具體內容如下

源碼:

import turtleclass Stack: def __init__(self): self.items = [] def isEmpty(self): return len(self.items) == 0 def push(self, item): self.items.append(item) def pop(self): return self.items.pop() def peek(self): if not self.isEmpty(): return self.items[len(self.items) - 1] def size(self): return len(self.items)def drawpole_3(): # 畫出漢諾塔的poles t = turtle.Turtle() t.hideturtle() def drawpole_1(k): t.up() t.pensize(10) t.speed(100) t.goto(400 * (k - 1), 100) t.down() t.goto(400 * (k - 1), -100) t.goto(400 * (k - 1) - 20, -100) t.goto(400 * (k - 1) + 20, -100) drawpole_1(0) # 畫出漢諾塔的poles[0] drawpole_1(1) # 畫出漢諾塔的poles[1] drawpole_1(2) # 畫出漢諾塔的poles[2]def creat_plates(n): # 制造n個盤子 plates = [turtle.Turtle() for i in range(n)] for i in range(n): plates[i].up() plates[i].hideturtle() plates[i].shape('square') plates[i].shapesize(1, 8 - i) plates[i].goto(-400, -90 + 20 * i) plates[i].showturtle() return platesdef pole_stack(): # 制造poles的棧 poles = [Stack() for i in range(3)] return polesdef moveDisk(plates, poles, fp, tp): # 把poles[fp]頂端的盤子plates[mov]從poles[fp]移到poles[tp] mov = poles[fp].peek() plates[mov].goto((fp - 1) * 400, 150) plates[mov].goto((tp - 1) * 400, 150) l = poles[tp].size() # 確定移動到底部的高度(恰好放在原來最上面的盤子上面) plates[mov].goto((tp - 1) * 400, -90 + 20 * l)def moveTower(plates, poles, height, fromPole, toPole, withPole): # 遞歸放盤子 if height >= 1: moveTower(plates, poles, height - 1, fromPole, withPole, toPole) moveDisk(plates, poles, fromPole, toPole) poles[toPole].push(poles[fromPole].pop()) moveTower(plates, poles, height - 1, withPole, toPole, fromPole)myscreen = turtle.Screen()drawpole_3()n = int(input('請輸入漢諾塔的層數并回車:n'))plates = creat_plates(n)poles = pole_stack()for i in range(n): poles[0].push(i)moveTower(plates, poles, n, 0, 2, 1)myscreen.exitonclick()

效果圖:

python繪制漢諾塔

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 天天干天天爱天天 | 亚洲高清网 | 中文在线一区 | 最新超碰 | 一区二区在线不卡 | 欧美一级黄色片在线观看 | 中文字幕一区二区三区在线视频 | 色一情一乱一伦一区二区三区 | 国产高清在线 | 中文字幕一区二区三 | 午夜免费福利影院 | 久久精品亚洲精品国产欧美 | 美女黄视频网站 | 久久久性 | 国产精品久久久久久久久久久久 | 久久成人国产精品 | 久久久久久国产精品久久 | 五月激情六月婷婷 | 亚洲福利 | 国产91一区 | 国产精品一区二区在线 | 欧美日韩国产一区二区 | 超碰欧美| 一区二区久久 | 中文字幕在线观看一区 | 国产精品一区二区视频 | 欧美日韩中文字幕 | 91精品国产自产在线老师啪 | 99re6在线视频精品免费 | 少妇一级淫片免费播放 | 国产国语精品 | 午夜国产一级 | 亚洲成人999| 亚洲高清av | 久久中文字幕一区 | 国产高清美女一级a毛片久久w | 国产中文视频 | 国产一级一级 | 激情欧美一区二区三区中文字幕 | 国产无人区一区二区三区 | 亚洲精品久久久久久一区二区 |