循环数总和

时间:2013-11-18 08:54:22

标签: java while-loop

我需要有关如何计算while循环打印数字总和的帮助。我必须使用while循环获得数字1到100并一起计算所有这些。比如1 + 2 + 3 ... + 98 + 99 + 100。我可以得到数字,但不能一起计算它们。这是我的代码:

public class Loops {
    public static void main(String[] args) throws Exception {
        int i = 1;
        while (i < 101) {
           System.out.print(i);
           i = i + 1;
        }
    }
}

如何让它只打印最后一笔钱?如果我试图欺骗等式,它就会挂起。

5 个答案:

答案 0 :(得分:2)

使用另一个变量而不是i这是循环变量:

int i   = 1;
int sum = 0;
while (i < 101) {
  sum += i;
  i++;
}

现在sum将包含所需的输出。在之前的版本中,您并没有真正地将i的所有值从1循环到101。

答案 1 :(得分:2)

首先要么改变你的sum变量或索引变量

public class Loops {
 public static void main(String[] args) {
  int sum = 0;
  int i = 1;
  while (i < 101) {
   sum = sum + i;
   ++i;
  }
  System.out.println(sum);
}

答案 2 :(得分:1)

尝试以下方法。将值移动了一下以确保最多可以加100并始终显示总和。

public static void main(String[] args) throws Exception {

    int i = 1;
    long tot = 1;

    while (i < 100) {   
       i += 1;
       tot += i;
       System.out.print("Number :" + i + "  ,sum="+tot);
    }

}

答案 3 :(得分:1)

你的总和(i)也是你的指数。因此,每次添加时,都会跳过要添加到其中的数字。

public class Loops {
 public static void main(String[] args) {
  int sum = 0;
  int i = 1;
  while (i < 101) {
   //System.out.print(i);
   sum = sum + i;
   ++i;
  }
  System.out.println(sum);
}

或者,使用高斯和:n(n + 1)/ 2

因此,结束总和为100(101)/ 2 = 5050

答案 4 :(得分:-3)

public class Loops {
  public static void main(String[] args) throws Exception {
    int i = 1;
    int sum = 0;
    while (i < 101) {
       sum = i + 1;
    }
    System.out.print(sum);
  }
}