关于for循环的判断条件问题

篂空下 2014-10-30 05:48:58

public static boolean isShu(int num) {
// TODO 自动生成的方法存根
for(int i=2;i<num;i++){ //如果用小于等于就不行
if(num%i==0){
return false;
}
}
return true;
}

该方法判断传过来的数是否是素数,如上,如果判断条件改成小于等于,程序就不能运行,调试时发现num%i==0为永真,导致返回值一直为false,而改成小于的话 ,程序正常运行。
...全文
527 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
shixitong 2014-10-31
  • 打赏
  • 举报
回复
楼主为什么想到把条件改为i<=num? 素数判断从2开始,到自身的前一个数 1和自己肯定是可以被整除的
江城DiorsMan 2014-10-31
  • 打赏
  • 举报
回复
因为当i 等于num的时候就能整除了啊,所以肯定是true 啊
talkdream 2014-10-31
  • 打赏
  • 举报
回复
把你的代码和调用代码代码都列出来,看看吧。

50,523

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧