标题:请教老师,小程序哪儿有问题?
只看楼主
greenpop
Rank: 1
等 级:新手上路
帖 子:73
专家分:3
注 册:2011-12-22
结帖率:88.24%
已结贴  问题点数:5 回复次数:2 
请教老师,小程序哪儿有问题?
while max!=-1:
    max=int(input('请输入一个数(-1结束):'))
    i=2
    for i in range(2,max+1):
   
       if(max%i==0 and max!=i):
           print(max,'是合数')
           print(i,max)
        else:
           print('是质数')
           break      
搜索更多相关主题的帖子: 老师 小程序 max print and 
2022-03-27 14:54
蟒蛇出洞
Rank: 2
等 级:论坛游民
威 望:1
帖 子:41
专家分:22
注 册:2021-8-19
得分:2 
你这个程序明显有错,用户输入的数字要是能被2-9除尽就是合数,注意,要他们不填1
2022-03-27 18:45
古123
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:14
帖 子:219
专家分:1098
注 册:2017-2-5
得分:3 
回复 楼主 greenpop
语法上:
你的程序是从直接从写的代码中复制过来的吗?
如果是的话else的前面的空格少了,要和if一样。

逻辑上:
循环没必要有那个+1,因为肯定能被自身整除,+1没必要。

你的程序逻辑实际上是从2依次到本身,能不能被整除,被整除输出合数,不能输出是质数退出循环。
比如输入9:你的程序逻辑是先判断能否被2整除,不是,直接输出“是质数”break退出循环了。

其他:
论坛输入框的上面有插入代码的功能,鼠标放上去会有提示,点击一下就好
2022-03-28 17:44



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-508676-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.055155 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved