有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java我不明白这个练习的解决方案

我正在做练习。埃杜和我有些麻烦。本练习是编写以下代码:

int total = 25;
for (int number = 1; number <= (total / 2); number++ ) {
    total = total - number;
    System.out.println(total + " " + number );
}

我的输出是

24 1
22 2
19 3
15 4
10 5
4 6
-3 7
-11 8
-20 9
-30 10
-41 11
-53 12

因为我认为这个数字从1开始到12结束(数字<;=(总数/2))。然而,结果是

24 1
22 2
19 3
15 4
10 5

我不明白这个结果,你能帮我解释一下吗


共 (1) 个答案

  1. # 1 楼答案

    这是因为每次迭代时,你的总数会越来越少

    total = total - number;
    

    即:

    //1st iteration
    25 - 1 = 24; // outputs 24 1
    
    // 2nd iteration
    24 - 2 = 22 // outputs 22 2
    
    // 3rd iteration
    22 - 3 = 19 // outputs 19 3
    
    // 4th iteration
    19 - 4 = 15 // outputs 15 4
    
    // 5th iteration
    15 - 5 = 10 // outputs 10 5
    

    等等

    你想做什么