我写了一个
java程序需要将小数从1转换为256进制,但问题是在尝试小数超过256进制后,开始得到不准确的结果。
这是我的代码:
公共类转换{
publicstaticvoidmain (字符串[ ] args ) {
system.out.printf('%s '、' Decimal '、' Hexadecimal ';
for(intI=1; i=300; I ) {
system.out.printf (,I );
dcimaltohex(I;
System.out.println (;
}
}
私有状态语音识别器
输入计数;
if(decimal=256 ) {
计数=2;
} else {
计数=1;
}
for(intI=1; i=count; I ) {
if(decimal=256 ) {
返回hex (decimal/256;
decimal %=256;
}
if(decimal=16 ) {
返回hex (decimal/16;
差值%=16;
}
返回hex (decimal;
decimal /=16;
}
}
隐私保护编号{
交换机(number ) {
case 15:
system.out.print('f );
布雷克;
case 14:
system.out.print('e );
布雷克;
case 13:
system.out.print('d ';
布雷克;
case 12:
system.out.print('c ';
布雷克;
case 11:
system.out.print('b ';
布雷克;
case 10:
系统. out.print (' a ';
布雷克;
默认:
system.out.printf('%d ',number );
布雷克;
}
}
}
这是我得到的结果的样本:
254 FE
255 FF
256 100
257 111
264 199
266 1AA
271 1FF
272 1100
273 1111
注意:我刚开始学习java,所以如果可能的话请简单一些。 谢谢