我对这段基本的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
答案 0 :(得分:7)
这是错误的,您应该将sum += 1;
更改为sum += i;
如果您正在从1到N进行AP求和,请更好地直接使用公式:
(N *(N + 1))/ 2
答案 1 :(得分:2)
您应该将代码更改为sum+=1
到sum+=i;