使用循环和整数

时间:2014-01-29 18:46:11

标签: java loops

所以我有一个基本的项目:

用户输入数字1-10

程序打印下面添加的所有数字

例如:

用户输入6

程序打印“1 + 2 + 3 + 4 + 5 + 6 = 21”

这就是我所拥有的

import java.util.Scanner;

public class Loop {

    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int num;
        int sum = 0;
        int temp = 1;

        do {
            System.out.print("Enter a number 1-10: ");
            num = in.nextInt();
        } while (!(num > 0 && num <= 10));

        System.out.print("\n");


        while (temp != num) {
            System.out.print(temp + "+");
            sum += ++temp;
        }
        sum += 1;
        System.out.print(num + "=" + sum);
    }

}

好的,我改变了代码

sum + = ++ temp;

现在所有的款项都是一次性的?

我补充说 sum + = 1; 在while循环之后但还有其他方法可以修复它吗?

4 个答案:

答案 0 :(得分:3)

您有temp变量来跟踪您要添加的当前号码,但您永远不会更改它。变化:

sum += ++temp;

而不是

sum += temp;

答案 1 :(得分:0)

我可能不熟悉java,但我想你可以像这样做循环

int temp =0;
int inputedNumber = 6;
for(int a = 1; a <= inputedNumber; a++){
 temp += a;
}
cout << temp;

答案 2 :(得分:0)

只是为了好玩使用这个功能:)

  private static String oOo(int OoO) {
    if (OoO == 1) return "1";
    return oOo(OoO - 1) + "+" + String.valueOf(OoO);
  }

答案 3 :(得分:0)

我更喜欢使用For循环,你可以做一些有趣的事情。

// number是用户输入,您必须在

之前验证它
for (int i = number; i >= 1; i--) {
    if (i == 1) {
        System.out.print(i);
        sum = sum + 1;
    } else {
        System.out.print(i + " + ");
        sum = sum + i;
    }
}
System.out.print(" = " + sum);