lzy1227 4 months ago
parent 975c07c894
commit eeecbfb7d4

@ -3,6 +3,7 @@
<component name="NewModuleRootManager" inherit-compiler-output="true">
<exclude-output />
<content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
</content>
<orderEntry type="inheritedJdk" />

@ -33,7 +33,34 @@ public class computer{
return decimal;
}
public static String fromDecimal(int decimal, int base) {
if (base < 2 || base > 16) {
throw new IllegalArgumentException("Base must be between 2 and 16");
}
StringBuilder number = new StringBuilder();
// 当十进制数大于0时持续转换
while (decimal > 0) {
int remainder = decimal % base;
char digit;
// 处理0-9
if (remainder < 10) {
digit = (char) ('0' + remainder);
}
// 处理10-15A-F
else {
digit = (char) ('A' + (remainder - 10));
}
number.insert(0, digit); // 在字符串的开头插入新的字符
decimal /= base; // 更新十进制数,去掉已转换的部分
}
// 如果转换后的字符串为空即输入的十进制数为0则返回"0"
return number.length() == 0 ? "0" : number.toString();
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);

Loading…
Cancel
Save