java - 这段代码是如何工作的以及输出是什么..这看起来很简单

标签 java output logic

当我执行下面的代码时,它给出了 13 作为答案。我不明白这是如何工作的?

package Assignment_One;

class Main {    
    public static void main(String[] args) {
        int this_number = 3;
        int that_number;

        while(this_number<10) {
            that_number=this_number;
            this_number = that_number+this_number/2;
        }
        System.out.println("Answer is:"   + this_number);
    }
}

最佳答案

this_number 经历了以下更改:

-> 3
-> 3 + [int(3/2) = 1] = 4
-> 4 + [int(4/2) = 2] = 6
-> 6 + [int(6/2) = 3] = 9
-> 9 + [int(9/2) = 4] = 13

此后,违反了 while 循环下的条件,因此跳出了循环。

你能具体说一下哪部分是你不明白的吗?您是否有循环或以下行的问题:
this_number = that_number+this_number/2;

关于java - 这段代码是如何工作的以及输出是什么..这看起来很简单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55672327/

相关文章:

java - java.lang.NoSuchMethodError:org.apache.hadoop.hive.metastore.HiveMetaStoreClient.alter_table

java - 如何检测用户何时完成向 RecyclerView 中的 EditText 输入值?

hadoop - MapReduce:将 Reducer 的结果分组为固定大小的 block

JAVA——程序功能为输入输出、输入输出;想让程序的功能分别为输入输入、输出、输出

PHP异常捕获和编程逻辑

java - 变量可以在引用交换时被访问吗?

java - 需要在java中的某个点重新开始

delphi - 帮助更好的复选框逻辑

python - 如何在Python中使用numpy.savetxt居中对齐不同长度的列?

java - Else If 逻辑等价