慕课上的代码中下int sum=0; int num=2; do { sum=sum+num; num=num+2; }while(num<=50); System.out.print(sum);我的代码如下int sum=1; int n=0; int nn=0; do{ nn=2*sum; ++sum; n=n+nn; }while(nn<=50);System.out.println(n); 运行结果不同.重新整理了思路,总是找不到问题!请回答,谢谢!
2 回答
Its_forever
TA贡献361条经验 获得超328个赞
你的代码:
int sum = 1; int n = 0; int nn = 0; do { nn = 2 * sum; ++sum;//当sum等于25的时候。nn等于50,符合nn<=50判断条件。 //会再次进入到do循环体里面,然后sum等于26,nn等52. //所以你的结果会多一个52. //所以把nn<=50改为nn<50就好了。 n = n + nn; } while (nn <= 50); System.out.println(n);
一条小咸鱼
TA贡献457条经验 获得超255个赞
public class HelloWorld { public static void main(String[] args) { int count = 1; int sum = 0; do { sum += 2 * count; ++count; } while (2 * count <= 50); System.out.println(sum); } }
添加回答
举报
0/150
提交
取消