进制转换问题---例如把26进制转为10进制
来源:互联网 发布:windows各版本开机音乐 编辑:程序博客网 时间:2024/06/08 03:59
问题:a-z表示0-25,代表26进制,现在要求把该26进制转为10进制
例如:
输入:ba
输出:26
它可以表示为:2*10^3+0*10^2+3*10^1+9*10^0
那么任何进制的数都一样,例如16进制数8A30E
它就是8*16^4+10*16^3+3*16^2+0*16^1+14*16^0=566030,算出来的值就是这个数对应的十进制数
又例如k进制数abcdef(这是一个6位数)
它就是a*k^5+b*k^4+c*k^3+d*k^2+e*k^1+f*k^0
这样想就十分简单了
一个数的每一位都有一个权值,例如十进制数2039
它可以表示为:2*10^3+0*10^2+3*10^1+9*10^0
那么任何进制的数都一样,例如16进制数8A30E
它就是8*16^4+10*16^3+3*16^2+0*16^1+14*16^0=566030,算出来的值就是这个数对应的十进制数
又例如k进制数abcdef(这是一个6位数)
它就是a*k^5+b*k^4+c*k^3+d*k^2+e*k^1+f*k^0
这样想就十分简单了
给个题目练习下:
package com.hbut.test;public class Converter {//2:题目描述////用英文字母a-z来分别表示数值0-25, 形成一个26进制的数值表示法。需要你写一个方法,将用a-z表示的26进制数值的字符串,转化为对应的10进制数值。// 输入// 输入数据有多组,每组占一行,包含多个a-z之间的字符。// 样例输入// ba// bcd// gibbon// goodboy// // 输出// 所对应表示的10进制数。public static Long getNum(String s){Long sum=0L;for(int i=0;i<s.length();i++){sum+=(long) ((s.charAt(i)-'a')*Math.pow(26,s.length()-1-i));}return sum;}public static void main(String[] args) {System.out.println(getNum("gibbon"));}}
输出结果:74962693
阅读全文
0 0
- 进制转换问题---例如把26进制转为10进制
- 1.1进制转换:十进制转为十六进制
- 1.1进制转换:十进制转为二进制
- 把十进制的数字转为任何进制
- C++:把一个数从M进制转为N进制。
- 10进制转为16进制
- 16进制字符串转为10进制
- 16进制转为10进制
- 把整型数据转为最低2进制最高36进制的字符串
- java计算md5值-为什么要把结果转为16进制的字符串?
- 关于16进制的字符串转为整数的问题
- 16进制转为8进制
- 请设计一个函数可以把10进制的正整数转换为4位定长的36进制字符串,36进制规则0-9,A-Z,例如:1=‘000‘,10=’000A‘,100='002S',2000='01JK’
- C语言将10进制转为2进制
- 10进制转为2进制,两种方法。。。
- 把PDF转为Excel的转换方法
- 任意进制转为十进制
- 把一个16进制 或8进制转换为10进制的函数
- JS选取DOM元素的方法
- hibernate笔记-002-hibernate5.2使用hbm2ddl.auto错误
- java多线程总结(4)
- java多态
- 对于线性时间筛选素数算法的理解
- 进制转换问题---例如把26进制转为10进制
- Android屏幕像素转换
- JDBC 事物处理
- 双飞翼布局
- Redis实现消息队列
- (0056)iOS开发之深拷贝与浅拷贝
- OpenGL编程中的一些概念理解
- 538. Convert BST to Greater Tree
- java基础知识