怎么把,其他的进制转化为十进制

qzjackie 2005-12-02 11:31:50
...全文
451 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
qzjackie 2005-12-03
  • 打赏
  • 举报
回复
这样子我也懂只是,我不懂得用代码怎么写出来
ybyb14 2005-12-03
  • 打赏
  • 举报
回复
其它进制转换成十进制的方法是,把其它进制数按位权展开,利用十进制的运算法则求出其值,就可以转换为十进制.
如:
二进制(101.01)=1*2的二次方+0*2的一次方+1*2的零次方+0*2的负一次方+1*2的负二次方
八进制(42)=4*8的一次方+2*8的零次方=34
十六进制(42)=4*16的一次方+2*16的零次方
比较简单,楼主认真看看应该能明白
qzjackie 2005-12-03
  • 打赏
  • 举报
回复
谢谢
qzjackie 2005-12-03
  • 打赏
  • 举报
回复
??
f_acme 2005-12-03
  • 打赏
  • 举报
回复
楼主看的明白怎么会写不出来呢?
给楼主一个参考:

public class StringToDecNumber
{
/*将d进制的字符串str转换为十进制数字*/
public double toDec(String str,int d)
{
int i;
double power=1,sum=0;
int len=str.length();
int point=str.indexOf(".");
for(i=(point==-1?len-1:point-1);i>=0;i--)
{
sum=sum+(str.charAt(i)-'0')*power;
power*=d;
}
if(point!=-1)
{
for(power=1.0/d,i=point+1;i<len;i++)
{
sum=sum+(str.charAt(i)-'0')*power;
power=power/d;
}
}
System.out.println (sum);
return sum;
}
public static void main(String args[])
{
new StringToDecNumber().toDec("201.3",5);
}
}
qzjackie 2005-12-02
  • 打赏
  • 举报
回复
那就8进制,转化到10进制
supergoalcn 2005-12-02
  • 打赏
  • 举报
回复
任意进制的数转换成十进制的算法只能自己写的,随便找一个计算机的基础教材都可以找到相关内容的。

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧