QQ登录

只需一步,快速开始

登录 | 立即注册 | 找回密码

主题

帖子

荣誉

新鱼友

Rank: 1

积分
11
查看: 260|回复: 9

[已解决]大神帮我看看,这3段代码有什么区别

[复制链接]
最佳答案
0 

尚未签到

cq3136248 发表于 2018-1-14 08:57:47 2609 | 显示全部楼层 |阅读模式

马上注册加入鱼C,享用更多服务吧^_^

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
list=[]
c=1
for i in range(2,100):   
    y=2                  
    while i%y!=0 and y<i:
            c=y
            y+=1
    if i==c+1:
        print(i)


list=[]
c=1
for i in range(2,100):   
    y=2                  
    while i%y!=0:
       if y<i:
            c=y
            y+=1
    if i==c+1:
        print(i)


        
list=[]
c=1
for i in range(2,100):   
    y=2                  
    while y<i:
       if i%y!=0:
            c=y
            y+=1
    if i==c+1:
        print(i)
最佳答案
2018-1-14 11:40:35
cq3136248 发表于 2018-1-14 11:35
第一个和第二个输的i 都是2到100的所有质数,第三个就只有2,3。  求解第三个

第三个if判断条件什么时候满足?你思考一下,不管满不满足这个判断,y是不是都应该自增
楼层
跳转到指定楼层
最佳答案
1128 
累计签到:365 天
连续签到:2 天
BngThea 发表于 2018-1-14 10:17:47 From FishC Mobile | 显示全部楼层
没有区别
最佳答案
0 

尚未签到

cq3136248  楼主| 发表于 2018-1-14 10:55:10 | 显示全部楼层

没有区别,输出过后,显示不全一样
最佳答案
1128 
累计签到:365 天
连续签到:2 天
BngThea 发表于 2018-1-14 11:31:56 From FishC Mobile | 显示全部楼层
cq3136248 发表于 2018-1-14 10:55
没有区别,输出过后,显示不全一样

原因出在y自增判断,第一个每次都自增,后面的不是每次
最佳答案
0 

尚未签到

cq3136248  楼主| 发表于 2018-1-14 11:35:37 | 显示全部楼层
BngThea 发表于 2018-1-14 11:31
原因出在y自增判断,第一个每次都自增,后面的不是每次

第一个和第二个输的i 都是2到100的所有质数,第三个就只有2,3。  求解第三个
最佳答案
1128 
累计签到:365 天
连续签到:2 天
BngThea 发表于 2018-1-14 11:40:35 From FishC Mobile | 显示全部楼层    本楼为最佳答案   
cq3136248 发表于 2018-1-14 11:35
第一个和第二个输的i 都是2到100的所有质数,第三个就只有2,3。  求解第三个

第三个if判断条件什么时候满足?你思考一下,不管满不满足这个判断,y是不是都应该自增
最佳答案
0 

尚未签到

cq3136248  楼主| 发表于 2018-1-14 12:13:00 | 显示全部楼层
BngThea 发表于 2018-1-14 11:40
第三个if判断条件什么时候满足?你思考一下,不管满不满足这个判断,y是不是都应该自增

看了半天还是看不懂,我是不是没救了。
最佳答案
0 

尚未签到

cq3136248  楼主| 发表于 2018-1-14 12:40:11 | 显示全部楼层
cq3136248 发表于 2018-1-14 12:13
看了半天还是看不懂,我是不是没救了。


c=1
for i in range(2,100):   
    y=2                  
    while y<i:
        if i%y!=0:
            c=y
            y+=1
        else:
            break
    if i==c+1:
        print(i)
第三段代码加了一个else语句,就和第一,第二一样了。
最佳答案
1128 
累计签到:365 天
连续签到:2 天
BngThea 发表于 2018-1-14 14:32:01 From FishC Mobile | 显示全部楼层
cq3136248 发表于 2018-1-14 12:40
c=1
for i in range(2,100):   
    y=2                  

你把i=4代进去分析一下试试
最佳答案
0 

尚未签到

cq3136248  楼主| 发表于 2018-1-14 14:41:27 | 显示全部楼层
BngThea 发表于 2018-1-14 14:32
你把i=4代进去分析一下试试

没问题了,谢谢

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

小甲鱼强烈推荐 上一条 /1 下一条

    移动客户端下载(未启用)
    微信公众号

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备11014136号

Copyright 2018 鱼C论坛 版权所有 All Rights Reserved.

Powered by Discuz! X3.3 Copyright
© 2001-2018 Comsenz Inc.    All Rights Reserved.

小黑屋|手机版|Archiver|鱼C工作室 ( 粤公网安备 44051102000370号 | 粤ICP备11014136号

GMT+8, 2018-6-24 05:15

快速回复 返回顶部 返回列表