有关Java入门的题目

wwwlinfei 2011-06-23 08:50:22
int i=0;
int sum=0;
while(i<=1000){
sum+=i; //累加
i=i+7; //这里不是很理解
}
System.out.println(sum);


/*输出1000以内包含1000的能被7整除的数的和上面的写法是我老师的,我不是很理解,下面的是我写的。希望各位前辈解释一下*/

int num1=0;
int num2=0;
while(num1<=1000){
if(num1%7==0){
num2+=num1;
}
num1++;
}
System.out.println(num2);
...全文
112 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
zheniswo 2011-06-25
  • 打赏
  • 举报
回复
顶4楼
牙痴 2011-06-24
  • 打赏
  • 举报
回复
for(int i=7;i<=10000;i+=7)
system.out.println(i);

TKD03072010 2011-06-24
  • 打赏
  • 举报
回复

int i=0;
int sum=0;
while(i<=1000){
sum+=i; //累加
i=i+7; // 这个说法的思想跟你的差不多,它是逢7的倍数相加的,结果是一样的,7+14+21+28+...
}
System.out.println(sum);
wwwlinfei 2011-06-24
  • 打赏
  • 举报
回复
我以前一直是用if else去判断,
sum+=i;
i=i+7;
这个方法能代替判断,执行效率高,

he3434 2011-06-24
  • 打赏
  • 举报
回复
4楼说得对,第一种算法效率高
五哥 2011-06-24
  • 打赏
  • 举报
回复

1、第一种的循环次数少很多 只要 Math.floor(1000 / 7) = 142 次 ;

2、第二种要循环1000遍,效率底啊 ,相比第一种这种效率底很多啦 ;

3、第一种法子就相当于 1*7 + 2*7 + 3*7 +...n*7 这里的n应该是142 ;
lh_fengyuzhe 2011-06-23
  • 打赏
  • 举报
回复
是啊,第一种循环次数少啊
剑神一笑 2011-06-23
  • 打赏
  • 举报
回复
1000以内包含1000的能被7整除的数
第一种算法很简单啊
就是7的倍数
sum = 0+7+14+21+。。。。

51,409

社区成员

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

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