猫史档案馆


【Python作品分享】约瑟夫圆环问题效果图绘制程序【作业帖】

用户:心纳海心纳海查看:0 回复:0 评论:0 创建时间:2021-08-18T22:06:09


【作品展示】

center_image

 

【作品介绍】

约瑟夫圆环问题效果图绘制程序

 

【作品源代码】

import turtle
pen = turtle.Pen()
turtle.bgcolor("#5BBDC8")           
pen.hideturtle()
pen.up()
pen.goto(-80 , -80)

def start(n):
    for j in range(n):
        pen.up()
        pen.forward(100)
        pen.left(360 / n)
        pen.down()
        pen.dot(30, "#F8981D")
        pen.color("#FFFFFF")
        pen.write(j + 1 , align = "center", font = ("Arial", 16, "normal"))


def joseph(num, begin, k):
    queue = list(range(1, num+1))
    go_out = begin - 1
    for i in range(num - 1):
        go_out = (go_out + k - 1) % len(queue)
        print('out:', queue[go_out])
        pen.up()
        pen.setheading(0)
        pen.goto(-80, -80)
        for j in range(queue[go_out]):
            pen.up()
            pen.forward(100)
            pen.left(360 / num)
        pen.down()
        pen.dot(30, "#F9E54E")
        pen.color("#FFFFFF")
        pen.write(queue[go_out], align="center", font=("Arial", 16, "normal"))
        queue.pop(go_out)
    print('survivor:', queue[0])


start(8)
joseph(8, 5, 7)
turtle.done()

 

【提示】

部分含有Python第三方库相关内容的作品,在海龟编辑器网页端无法运行哦!如遇到这种情况,可以打开下面的链接,下载海龟编辑器客户端:

https://python.codemao.cn


回复

上一页1 页 / 共 0下一页