为了账号安全,请及时绑定邮箱和手机立即绑定

将是否整除放在for条件内为何无法计算?

public class Helloworld{  
  public static void main(String[] args){
    //实例三:求1-100内可被3整除的整数之和
    int sn=1,ss=0;
    for(;sn<=100&&sn%3==0;sn++,ss+=sn){}
      System.out.print("1-100内可被3整除的整数之和为:"+ss);
  }
}

若不用if,则可以这样实现:

    //输出SS放在for循环外,需外部初始化,并且【输出ss时】需减去导致循环结束的最后一个数字(99+3=102)
    int ss=0;
    for(int sn=0;sn<100;sn+=3,ss+=sn){}      
      System.out.println("1-100内可被3整除的整数之和为:"+(ss-102));


正在回答

2 回答

整除放在for条件内可以运算的,只是你的for循坏进去的条件一旦sn变成了4,对3取余那就不等于0了,循环就断掉了

1 回复 有任何疑惑可以回复我~
#1

Sefelic 提问者

若是不用if,并且使用循环语句及之前的内容能否实现正常循环呢?
2018-07-16 回复 有任何疑惑可以回复我~
#2

Sefelic 提问者

非常感谢!
2018-07-16 回复 有任何疑惑可以回复我~

sn<=100&&sn%3==0 这个条件一旦满足不了就会跳出for循环,sn=1 sn%3=33333不满足条件sn%3==0的条件 所以直接跳出for循环了

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

将是否整除放在for条件内为何无法计算?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信