我正在尝试做一个数字系统计算器,但仅使用控件或重复结构。这是我的示例:
int base = 0, given = 0, remainder = 0;
// input given here
System.out.print("The answer is: ");
if (base == 2){
while(given != 0){
remainder = given % base;
given /= base;
System.out.print("" + remainder);
}
}
输出如下:
Input: 32
The answer is: 000001
问题是,由于二进制数32是100000而不是000001,我将如何将输出反转为100000?条件是除了三个重复结构:for,while和do-while之外,不要使用其他任何东西;使用决定性结构:if,else-if和for。
最佳答案
您可以将数字连接成String
并在循环后打印:
String output = "";
if (base == 2){
while(given != 0){
remainder = given % base;
given /= base;
output = remainder + output;
}
System.out.println(output);
}