wingerandwxt 2021-11-11 21:12 采纳率: 100%
浏览 11
已结题

程序循环到第二步,输出页面卡住了没输出

下面的程序运行的时候运行到第二轮的时候卡住了,查不出是什么问题
30 个人在一条船上,超载,需要 15 人下船。于是人们排成一队,排队的位置即为他们的编号。报数,从 1 开始数,报数为 9 的人下船。如此循环,直到船上仅剩 15 人为止,问都有哪些编号的人下船了呢?

l=[]
m=[]
n=[]
len1,yu=0,0
for i in range(1,31):
    l.append(i)
while len(l)>15:
    len1=len(l)
    print('数据长度=',len1)
    for j in range(1,len1+1):        
        if (j+yu)%9==0:
            m.append(l[j-1])    
    print('m=',m)
    for k in l:
        if not k in m:
            n.append(k)
    l=n
    print('本轮n=',n)
    print('结束后本轮l=',l)
    yu=len1%9  
    print('余数=',yu)
    if len(l)==15:
        break
print('下船编号:',m)
print('没下船编号',l)

输出结果:
运行到第二轮的for k in l这里就一直卡住,能告诉下是什么问题吗?

img

  • 写回答

1条回答 默认 最新

  • -Undefined_ 2021-11-11 21:57
    关注
    l=[]
    t=0
    for i in range(30):
        l.append(0)
    i=0
    m=1
    while t!=15:
        if l[i] == 0:
            if m == 9:
                l[i]=1
                print(i+1,end= ' ')
                t+=1
                m=0
            m+=1
        i+=1
        if i==30:
            i=0
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 11月20日
  • 已采纳回答 11月12日
  • 创建了问题 11月11日

悬赏问题

  • ¥15 Llama如何调用shell或者Python
  • ¥20 谁能帮我挨个解读这个php语言编的代码什么意思?
  • ¥15 win10权限管理,限制普通用户使用删除功能
  • ¥15 minnio内存占用过大,内存没被回收(Windows环境)
  • ¥65 抖音咸鱼付款链接转码支付宝
  • ¥15 ubuntu22.04上安装ursim-3.15.8.106339遇到的问题
  • ¥15 blast算法(相关搜索:数据库)
  • ¥15 请问有人会紧聚焦相关的matlab知识嘛?
  • ¥15 网络通信安全解决方案
  • ¥50 yalmip+Gurobi