我正在尝试编写一个while循环,就像问题表明以递减顺序返回7的倍数。起初我试图只是编写一个代码来返回值然后减少,但我的while循环将不会执行。我添加了一个声明,打印“开始”只是为了确保它正在运行。
System.out.println("Start");
int number = 7;
int count = 9999;
while (number <= count);
{
System.out.print(number);
number = number + 7;
}
我用这种方式写它是为了更简单,因为我不确定如何将数字变成一串值并检查每一个。对此有任何帮助表示赞赏。谢谢!
**解决。抱歉第一次在网站上,我不确定是否有另一种方法来关闭它,但多亏了多个用户指出半冒号和Vikas指出println错误,代码运行。至于减少它我只是交换了一些东西:
System.out.println("Start");
int number = 9999;
int count = 7;
while (number >= count)
{System.out.println(number);
number = number - 7;
}
}
答案 0 :(得分:9)
while()之后你有一个额外的分号。去掉它。
在此行末尾使用分号,while循环有一个空体。 循环完成后,执行花括号中的以下语句。但是循环永远不会完成,因为条件总是正确的,因为number
永远不会改变。
while (number <= count);
将其更改为:
while (number <= count)
{
...
}
答案 1 :(得分:0)
你的while循环结束时有一个分号:
while (number <= count);
这会使它成为一个空循环。并且以下花括号将仅作为代码块而不是循环
答案 2 :(得分:0)
您无法看到数字的输出值,因为它是println
而不是print
System.out.print(number);
将此更改为
System.out.println(number);
并且正如其他人已经回答的那样,取出半结肠;在while循环结束时。
话虽如此,因为您希望将结果从Descending打印到Ascending,使用下面的代码,
System.out.println("Start");
int number = 7;
int count = 9996;
while (number <= count)
{
System.out.println(count);
count = count - number;
}
答案 3 :(得分:0)
int count = 9999;
while (count >= 1) {
if (count % 7 == 0) {
System.out.println(count);
}
count--;
}
答案 4 :(得分:0)
我使用了这段代码,它也起作用了
System.out.println("Start");
int number = 9999;
int count = 7;
while (number >= count){
if(number%7==0)
System.out.println(number);
number--;
}}}