Java 无限循环问题 - 未知变量

Java Infinite Loop Problem - With Unknown Variable

我正在学习 Coursera 的课程。我正在尝试为他们的带有未知变量的无限 while 循环问题找到解决方案。

问题是:

int i = 1;
while (<<?>>) {
    i = i*n;
}

What should be written in place of <<?>> so that the loop ends when i is at least 34? You may assume n is an int variable that has been declared and given a value prior to this code (the value of n does not affect the answer to this question).

我试过i % 34 = 0i<=34等条件,但找不到正确的答案。他们没有给出这个问题的解决方案。

不知道 n 的值如何解决这个问题?

i<=34差不多就对了,但是要求是在i至少为34的时候结束循环。即,如果 i 是 34,则循环应该 而不是 继续,这意味着您应该使用 < 运算符,而不是 <= 运算符:

while (i < 34) {
    i = i*n;
}