import java.util.Scanner;
public class BinaryToHexa
{
public static void main(String args[])
{
int binnum, rem;
String hexdecnum="";
int decnum=0;
char hex[]={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};
Scanner scan = new Scanner(System.in);
System.out.print("Enter Binary Number : ");
binnum = scan.nextInt();
// converting the number in decimal format
int i=0;
while(binnum>0)
{
rem = binnum%10;
binnum=binnum/10;
decnum = decnum + (int)(rem*Math.pow(2,i));
i++;
}
// converting the number in hexadecimal format
while(decnum>0)
{
rem = decnum%16;
hexdecnum = hex[rem] + hexdecnum;
decnum = decnum/16;
}
System.out.print("Equivalent Hexadecimal Value is :\n");
System.out.print(hexdecnum);
}
}
# 1 楼答案
从我的库中尝试此函数。不使用此函数进行任何计算。只需比较字符串,就可以将任意多的二进制转换为十六进制。只要限制字符串的长度
# 2 楼答案
根据您的要求,首先您必须将二进制no转换为十进制,然后再转换为十六进制。因此,请尝试这个程序,它可以根据您的要求工作:
如果你有任何疑问,请告诉我
谢谢
# 3 楼答案
这真是个糟糕的问题。你应该解释你想出了什么,并展示你迄今为止尝试过的代码
这是一个二进制数:
将其分为四位(一位是二进制数字,即1或0):
有趣的是,每组四位的最大值是
这听起来有什么意义吗?以下是hexadecimal中的“数字”:
一个十六进制数字的最大值是多少
这意味着您可以简单地将每组四位转换成一个十六进制数字:
# 4 楼答案
这里的确切问题是什么
使用整数。要转换的toHexString(num)