我现在用Google搜索并尝试各种方法,但没有任何成功。 那么对于这个问题, 我有这个循环,我输入一个数字“n”ex。 10.然后程序计数从1到10。 这是我正在使用的循环。
n = Keyboard.readInt();
for(int e = 1; e <=n; e++)
System.out.println(e);
工作正常,但现在我想计算已经在循环中显示的数字......这将是1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 + 10(如果'n' '被选为数字10)它应该给出计算,所以它会说1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 + 10 = 55。
如果有人在这里帮助我会很棒。
提前致谢,
迈克尔。
答案 0 :(得分:15)
你可以通过艰难的方式或简单的方式来做到这一点:
困难的方法:保持一个正在运行的金额并在循环内添加它。
简单方法:请注意,您要查找的金额等于n*(n+1)/2
(easy to prove)。
答案 1 :(得分:6)
StringBuilder buffer = new StringBuilder();
int n = Keyboard.readInt();
int sum = 0;
for ( int e = 1; e <=n; e++ )
{
buffer.append( "+ " + e );
sum += e;
}
System.out.println( buffer.substring( 2 ) + " = " + sum );
答案 2 :(得分:5)
int sum = 0;
for(int e = 1; e <=n; e++)
{
sum += e;
}
System.out.println(sum);
答案 3 :(得分:5)
这样做:
public static void main(String[] args) {
int n = 10;
int sum = 0;
for(int e = 1; e <=n; e++)
sum = sum + e;
System.out.println(sum);
}
答案 4 :(得分:2)
使用另一个变量来累积结果。
答案 5 :(得分:1)
我觉得自己喜欢吃勺子,所以这就是代码:
public static void main(String args[]) {
int n = Keyboard.readInt();
int total = 0;
for (int i = 1; i <= n; i++)
total += i;
System.out.println(total);
}
答案 6 :(得分:1)
试试这个:
n = Keyboard.readInt();
int total = 0;
StringBuilder arith = new StringBuilder();
for(int e = 1; e <=n; e++) {
total += e;
arith.append(e + (e < n? "+" : ""));
}
arith.append("=" + total);
System.out.println(arith.toString());