久久福利_99r_国产日韩在线视频_直接看av的网站_中文欧美日韩_久久一

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

python繪制漢諾塔

瀏覽:82日期: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 編程
相關文章:
主站蜘蛛池模板: 中文字幕亚洲欧美日韩在线不卡 | 日韩在线观看精品 | 日韩国产一区二区 | 国产成人av一区二区三区 | 亚洲午夜av| 99热首页 | 欧美黄色一区 | 一区二区三区高清不卡 | 久久精品国产免费 | 91色电影| 欧洲毛片 | 国产精品夜夜爽 | 天堂欧美城网站 | 一区二区精品视频 | 91精品久久 | 国产美女网站视频 | 久久极品 | 久久www免费人成看片高清 | 亚洲精品久久久久久久久久久 | 国产精品视频播放 | 成人在线播放 | 久久不射电影网 | 亚洲免费网 | 亚洲国产精品一区二区久久,亚洲午夜 | 亚洲一区二区黄 | 久久精品久久综合 | xx视频在线观看 | 伊人网电影 | 嫩草视频在线观看免费 | av中文在线 | 色久视频 | 国产精品久久久久久久久久久久久久 | 成人国产精品一级毛片视频 | 北条麻妃国产九九九精品小说 | 免费观看一级特黄欧美大片 | 97色婷婷成人综合在线观看 | 亚洲欧洲一区 | 国产精品一区2区 | 在线视频亚洲 | 自拍偷拍第一页 | 亚洲www啪成人一区二区 |