Java语言怎么用反除法将一个15进制数转换成14进制数

Java语言怎么用反除法将一个15进制数转换成14进制数?用反除法来实现用的是什么函数过程比较好?完整的步骤是什么

效果图如图

img

思路步骤
1 从键盘获取一个15进制数,可以使用Java的Scanner类实现。
2. 创建一个方法,用于将一个十进制数转换为14进制的字符表示。
3. 在主方法中,使用反除法将15进制数转换成14进制数

代码如下

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);

        System.out.print("请输入一个15进制数:");
        String hex15 = scanner.next();

        String hex14 = "";  // 保存转换后的14进制数

        int decimal = Integer.parseInt(hex15, 15);  // 将15进制数转换为十进制数

        while (decimal > 0) {
            int remainder = decimal % 14;  // 取余数
            char hex14Char = convertToHex14(remainder);  // 将余数转换为14进制字符
            hex14 = hex14Char + hex14;  // 将14进制字符拼接到结果字符串的前面
            decimal /= 14;  // 进行下一轮的除法运算
        }

        System.out.println("转换后的14进制数为:" + hex14);
    }

    // 将一个十进制数转换为14进制的字符表示
    public static char convertToHex14(int decimal) {
        if (decimal >= 0 && decimal <= 9) {
            return (char) ('0' + decimal);
        } else if (decimal >= 10 && decimal <= 13) {
            return (char) ('A' + decimal - 10);
        } else {
            return '?';  // 非法输入,返回问号表示错误
        }
    }
}


有帮助的话采纳一下
Java调用此方法

调用方法
String result = convert("1A7F", 15, 14);

方法
public String convert(String num, int sourceRadix, int targetRadix) {

  int decimal = Integer.parseInt(num, sourceRadix);
  String res = "";
  
  while(decimal > 0) {
    int rem = decimal % targetRadix;
    res = rem + res;
    decimal /= targetRadix; 
  }

  return res;

}

看完这篇博客,你以后再也不用为进制发愁了:

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^