【发布时间】:2020-05-23 21:27:02
【问题描述】:
所以我有这个实验室,而且我一直保持十分之九的正确率。我最终将我的原始代码更改为这个非常古怪的版本以容纳额外的点。问题是:
编写一个程序,将 20-98 范围内的整数作为输入。输出是从整数开始倒计时,当两个输出数字相同时停止。
我的代码:
import java.util.Scanner;
public class LabProgram {
public static void main(String[] args) {
Scanner scnr = new Scanner(System.in);
int userDigit;
int newDigit;
userDigit = scnr.nextInt();
newDigit = userDigit - 1;
if ((userDigit > 19) && (userDigit < 99)) {
System.out.print(userDigit + " ");
}
else {
System.out.println("Input must be 20-98");
}
while ((userDigit > 19) && (userDigit < 99) && (newDigit % 11 != 0)) {
if (userDigit % 11 == 0) {
System.out.println();
break;
}
System.out.print(newDigit + " ");
--newDigit;
if (newDigit % 11 == 0) {
System.out.println(newDigit + " ");
break;
}
}
}
}
有人可以告诉我我是否考虑过这一点,以及是否有更简单的方法来格式化 for 循环而无需所有“ifs”。我是这方面的新手,现在已经上课 4 周了。任何建议将不胜感激。我知道可能有某种方法可以使用另一种方法,但说明说明使用“while”循环。
【问题讨论】:
标签: java loops while-loop