java进制转化的问题,在线等

zgycsmb 2018-05-25 03:54:42
假设有:
36进制 0 到 9 分别用 '0' '9' 10 用 'A' 表示 ,11用 'B' ,以类推, 35用 'Z'
比如 十进制中 100 ,相当于36进制中的 2S
请用java完成 36进制和十进制的相互转换
//36进制转10进制,p代表36进制的字符串 需要返回出一个int十进制值
public int void a3(String p){
...
}


//10进制转36进制 i代表十进制值,p代表36进制字符串

public static void a10(int i,String p){

}

请完善上面二个方法,在线等
...全文
977 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
zgycsmb 2018-05-26
  • 打赏
  • 举报
回复
5 6楼的可以,多谢
Lafite_1039814352 2018-05-25
  • 打赏
  • 举报
回复
public static String f(int i) { char a[]=new char[100]; int temp=0; StringBuffer str=new StringBuffer(); while(i/36!=0) { temp=i%36; if(temp<=9) str.append((char)(temp+48)); else str.append((char)(temp+55)); i/=36; } if(i<=9) str.append((char)(i+48)); else str.append((char)(i+55)); i/=36; return str.reverse().toString(); }
Lafite_1039814352 2018-05-25
  • 打赏
  • 举报
回复
public static int fun(String p) { char a[]=p.toCharArray(); int sum=0; for(int i=a.length-1;i>=0;i--) { if(a[i]>='0'&&a[i]<='9') sum+=(a[i]-48)*Math.pow(36,a.length-i-1); else sum+=(a[i]-55)*Math.pow(36, a.length-i-1); } return sum; }
llllyyyyhhhh1111 2018-05-25
  • 打赏
  • 举报
回复
其中的A-Z可以写个判断进行解析
llllyyyyhhhh1111 2018-05-25
  • 打赏
  • 举报
回复
public double a3(String p){ double sum = 0; int j = 0; char [] a = p.toCharArray(); p = p.trim(); for(int i = a.length; i < 0 ;i--){ sum = sum + Integer.valueOf(a[i])*Math.pow(36,j); } return sum; }
llllyyyyhhhh1111 2018-05-25
  • 打赏
  • 举报
回复
应该是把按权展开的过程写出来吧
zgycsmb 2018-05-25
  • 打赏
  • 举报
回复
多谢楼上的,只是题需要我们写转化过程,并按提供的方法名和参数,完善其方法内代码。
Braska 2018-05-25
  • 打赏
  • 举报
回复
Long.toString(10, 36) java有现成的啊

62,635

社区成员

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

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