weixin_45667102 2020-05-29 17:31 采纳率: 33.3%
浏览 912

python 只使用while来表示出100内的所有质数

sosuh=[2,3]
a = 5
while(a < 100):
b = 2
while(b <= (a/b)):
if not(a%b): break
b = b + 1
if (b > a/b) :
sosuh.append(a)
a = a + 1
print(sosuh)

怎么样才能去掉break和if 只使用while

  • 写回答

2条回答 默认 最新

  • 我不是高材生 2020-05-29 23:00
    关注

    如果把 while 当成 if 使用是不是就可以了

    i = 2
    result = list(range(2,100))
    while(i < 100):
        flag = 1
        j = i - 1
        while(j > 1 and flag):
            while(i % j == 0 and flag):
                result.remove(i)
                flag = 0
            j -= 1
        i += 1
    print(result)
    
    

    图片说明

    评论

报告相同问题?

悬赏问题

  • ¥15 程序不包含适用于入口点的静态Main方法
  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记