我正在尝试创建java程序,它可以总结数字,直到n个数字和n值之上的值之和,n继续递增,N是总值 例如,当n = 6时,它应该打印
1+2+3+4 5 6+7+8+9+10
1+2+3+4+5 6 7+8+9+10
我能够总结n以下但不高于n的值。请帮我找错误
public class Sigma {
public static void main(String[] args) {
int N = 10;
int N1= 10;
int below = 0;
int above=0;
int sum = 0;
for (int i = 1; i < N; i++) {
below = below + i; // Sigma Below n
int n = i + 1; // n
N-- ;
above = above + N;
for (int j = n; j < N1; j++) {
sum = sum - sum;
sum = sum + j;
}
System.out.println(below + "\t No. " + n + "\t"+ sum);
}
}
}
另外,如果你能分辨出N1的上下相等的值是什么
答案 0 :(得分:0)
我认为你的问题是你在循环中sum = sum-sum
sum = 0
。因此,您每次都将值设置为0,然后添加j
;因此值始终为j
。所以替换
for (int j = n; j < N1; j++) {
sum = sum - sum;
sum = sum + j;
}
通过
sum = 0;
for (int j = n; j < N1; j++) {
sum = sum + j;
}