我必须编写一个读入正int的程序,然后计算并显示前N个奇数的总和。例如,如果N为4,程序应显示值16,即1 + 3 + 5 + 7.
到目前为止,这是我所拥有的,但是我遇到了一堵砖墙,并且会欣赏正确方向上的一点。
import acm.program.*;
public class OddIntegers extends ConsoleProgram {
public void run() {
println("This program adds the number of odd numbers");
int n = readInt("Enter a positive number: ");
int b = 1;
for (int i = 0; i < n; i++);
b = b + (b + 2);
println("The total is " + b);
}
}
答案 0 :(得分:3)
答案 1 :(得分:2)
首先从;
循环结束时删除for
。
第二次使用sum
作为存储和的变量,b
来保存奇数。
int b=1, sum = 0;
for (int i = 1; i <=n; i++){
sum+=b;
b+=2;
}
答案 2 :(得分:1)
你的for循环后面有一个分号,所以循环中没有实际的代码,你计算错了,你添加一个额外的值,因为你在一个开始b
。
int b = 0;
int odd = 1;
for (int i = 0; i < n; i++){
b = b + odd;
odd += 2;
}