所以我试图解决的问题是,用户应该输入任何正数。然后,我尝试编写一个程序,只将奇数加到用户输入的数字上,并显示总数。例如,如果用户输入4,我的程序应该添加四个奇数。1+3+5+7= 16。
我唯一可用的工具是for statement、if、if/else if、while loop和println。
我只能想出如何打印出奇数。我知道我想创建一个名为total的变量来存储将所有奇数相加的值,但我不知道如何将其应用到程序中。
import acm.program.*;
public class AddingOddNumbers extends ConsoleProgram {
    public void run() {
        int n = readInt("enter a positive nunber: ");
        int total = 0;
        for (int i = 0; i < n; i++) {
            if (n == 1) {
                println(1);
            } else {
                println((i * 2) + 1);
            }
        }
    }
}发布于 2012-11-15 18:51:21
import acm.program.*;
public class AddingOddNumbers extends ConsoleProgram {
    public void run() {
        int n = readInt("enter a positive nunber: ");
        int total = 0;
        for (int i = 0; i < n; i++) {
            if (n == 1) {
                println(1);
            } else {
                println((i * 2) + 1);
                total += (i * 2) + 1;
            }
        }
        println("total : " + total);
    }
}发布于 2012-11-15 18:51:32
sum = 0;
for (i = 1; i < n*2; i=i+2)
    sum = sum + i;发布于 2012-11-15 18:51:39
这将为您提供奇数sum。
  if (n>0) 
   {
    total=0;
      for (int i = 1; i < n; i ++){
        if (i%2 == 1)
            total+=i;
      }
   }如果希望包含n,则将条件更改为i<=n。
https://stackoverflow.com/questions/13395898
复制相似问题