幽默的服务员算法演示

幽默的服务员算法演示

"""
某宾馆有100个房间,从1到100编了号,第一个服务员来了,他把所有的房门都打开。
第二个服务员来了,他把所有编号是2的倍数作相反处理(即原来关上的打开,原来打开的关上。)
第三个服务员把所有编号是3的倍数的房间也做相反处理。以后,第4、5一直到第100号服务员也
都是把自己编号倍数的房间做相反处理。问第100个服务员走过以后,有哪几扇门是开着的。
"""

from sprites import *

doorsimage = ['close.png','open.png']
rows = 10
cols = 10
length = 50
# 画10x10,长宽各为50的格子图,返回中心点坐标到cors
cors = Sprite(visible=False).draw_grid2(rows,cols,length,length)

doors = []                   # 装每个角色的列表
for rows in cors:
    for cor in rows:
        s = Sprite(shape=doorsimage,pos=cor)
        doors.append(s)
        time.sleep(0.01)

rooms = [ index for index in range(1,101) ]
# 下面的rooms中的键是房间编号,值代表房间开合状态,False代表关,True代表开
rooms = {}.fromkeys(rooms,False)

dummy = Sprite(visible=False)
dummy.addy(260)


以下代码省略......
    

下载完整源代码与素材,请

成为会员后,登陆才能继续浏览!联系微信scratch8即可办理会员。
(会员专属:能浏览所有文章,下载所有带链接的Python资源。)

李兴球

李兴球的博客是Python创意编程原创博客

评论已关闭。