1

この基本的なJavaコードで奇妙な動作が発生しています

  public class Sigma {
       public static void main(String[] args) {
           int sum = sigma(3);
           System.out.println(sum);
       }

       public static int sigma(int n){
           int sum = 0;
           for (int i = 0; i <= n; i++) {
               sum += 1;
           }
           return sum;
       }
   }

期待される出力は ですが6、コードを実行すると得られる4

4

2 に答える 2

8

これは間違っています。次のように変更sum += 1;する 必要があります。sum += i;

また、1 から N までの AP の合計を計算する場合は、次の式を直接使用することをお勧めします。

(n*(n+1))/2

于 2013-08-11T04:09:29.397 に答える
3

次のようにコードを変更する必要がありsum+=1ますsum+=i;

于 2013-08-11T04:08:39.497 に答える