赋值操作命令Java

时间:2018-01-25 12:03:46

标签: java

练习内容如下: 练习32:一组数字的总和

创建一个计算总和1 + 2 + 3 + ... + n的程序,其中n是用户输入的数字。

这是工作代码的一部分:

int first = 1;
int sum = 0;

while (first <= read) {

        sum = sum + first;
        first++;

    }

将上面改为下面:

int first = 1;
int sum = 0;

while (first <= read) {

        first++;
        sum = sum + first;

 }

产生错误答案。如果读取= 3则sum = 9而不是6,如果读取= 7则sum = 35而不是28,依此类推。为什么?

2 个答案:

答案 0 :(得分:4)

在第二个代码段中,您将first增加sum,然后将其添加到2 + 3 + ... + read + (read+1) ,这意味着您正在计算总和

1 + 2 +  .......   + read.

而不是

/
./project-a
./project-a/pom.xml
./project-a/facade/pom.xml  -> makes a war
./project-a/delegate/pom.xml 
./project-bean1
./project-bean1/pom.xml -> makes a jar
./project-parent
./project-parent/pom.xml -> makes a jar
./project-b
./project-b/pom.xml
./project-b/facade/pom.xml  -> makes a war
./project-b/delegate/pom.xml

bean1 -> depends on parent
a -> depends on bean and parent
b -> depends on bean and parent

答案 1 :(得分:1)

  1. 使用调试器逐步执行代码。这将使您深入了解如何调试代码,教您如何使用调试工具,它将很容易帮助您发现错误。

  2. 您可以避免(计算上)昂贵的循环。 前N个数之和的直接公式为(N *(N + 1))/ 2