完美者(wmzhe.com)网站以软件下载为基础,改版后的网站对功能性板块进行扩充,以期能够解决用户在软件使用过程中遇见的所有问题。网站新增了“软件百科”、“锦囊妙技”等频道,可以更好地对用户的软件使用全周期进行更加专业地服务。
大数进制转换工具是一款使用简单的进制转换工具,支持36进制以内的任意长度数字转换(数字长度只受编辑框长度限制),只支持正整数型大数,炒股偶10进制的数字默认以A、B、C...递增。
使用方法
在待转区和到达区选择进制后,在其中的一边输入数字,另一边会立即转换,达到同步预览的效果。
将任意长度十六进制转化为十进制应该注意什么?
一般来讲,进制转换是在字符串处理的时候才会用到,比如把一个数按照特定进制输出,或者由特定进制的数的字符串表示生成具体的数值,这样才会用到数的进制转换。如果是应用在RSA等等这样的数学算法里面,是没有必要使用字符串的,应该都是具体的数值。比方说,有一个InputStream,从这里可以得到具体的若干比特的数值,那么就可以直接读取它,不管多少位,因为数值是没有进制之分的,只有数值的表示才有进制之分。但是如果这个InputStream里面存放的是字符串(不应该这样的),那么只能用一些字符串处理来转换了。如果想要将数据用不同的进制表示出来,那么BigInteger和BigDecimal都很方便。
关键在于数据的输入是直接的数值还是字符串。如果很不幸是字符串,那么我建议lz改成二进制输入,因为很少有用字符串形式保存数值的,尤其在科学计算方面。
"锦囊妙技"栏目是聚合全网软件使用的技巧或者软件使用过程中各种问题的解答类文章,栏目设立伊始,小编欢迎各路软件大神朋友们踊跃投稿,在完美者平台分享大家的独门技巧。
本站文章素材来源于网络,大部分文章作者名称佚失,为了更利于用户阅读和使用,根据需要进行了重新排版和部分改编,本站收录文章只是以帮助用户解决实际问题为目的,如有版权问题请联系小编修改或删除,谢谢合作。
软件大小:788.80 KB
只要会笔整数算乘除法和加减法,就能转化,比如:18560D=?H写出十六进制每位上的基数,个位1,高位=低位*16,写到比18560大为止18560=4*4096+2176=4*4096+8*256+128=4*4096+8*256+8*16+0*1因此,18560D=4880H其他进制也是这么计算,使用不同的基数即可(十进制也是这样的),n进制基数:个位1,高位=低位*n
windows里面的开始-程序-附件-计算器 就可以 选择查看-标准型 输入十进制数据后 选择“二进制”就可以自动转换 同理还可以转换八进制 十六进制
我这有,给你吧 .版本 2 .支持库 eCalc .子程序 _启动子程序, 整数型, , 请在本子程序中放置易模块初始化代码 _临时子程序 () ' 在模块初始化代码执行完毕后调用模块测试代码 返回 (0) .子程序 _临时子程序 ' 本名称子程序用作测试程序用,仅在开发及调试环境中有效,编译发布程序前将被系统自动清空,请将所有用作测试的临时代码放在本子程序中。 ***注意不要修改本子程序的参数及返回值类型。 .子程序 模块_进制转换, 文本型, 公开, 可以将从二进制到三十六进制的数值随意进行转换,不可以转换负数以及小数。 .参数 被转换文本, 文本型 .参数 被转换进制, 整数型 .参数 转换的进制, 整数型 .局部变量 欲转换文本, 文本型, , , 输入的文本串 .局部变量 临时文本, 文本型, , , 存放从输入的文本串中取出的一个文本 .局部变量 临时数值, 长整数型 .局部变量 计次变量1, 整数型 .局部变量 计次变量2, 整数型 .局部变量 次方数, 大数, , , 每一位数字对应的10的次方数 .局部变量 转换的进制大数1, 大数, , , 要转换的进制-1 .局部变量 转换的进制大数, 大数, , , 要转换的进制 .局部变量 被转换进制大数, 大数, , , 被转换的进制 .局部变量 临时大数, 大数, , , 将被转换数字转换成的大数 .局部变量 余数大数, 大数, , , 存放求出的余数大数 .局部变量 数值1大数, 大数, , , 只存放1 .局部变量 临时大数1, 大数, , , 将被转换数字的每一位转换成的大数 .如果真 (被转换进制 < 2 或 转换的进制 < 2 或 被转换进制 > 36 或 转换的进制 > 36) ' 判断两个“进制系数”是否正确 返回 (“参数错误-进制只能在2-36之间”) .如果真结束 被转换文本 = 到大写 (到半角 (被转换文本)) ' 规范参数 .变量循环首 (1, 取文本长度 (被转换文本), 1, 计次变量1) ' 判断输入的数字文本是否有效 临时文本 = 取文本中间 (被转换文本, 计次变量1, 1) .如果真 (寻找文本 (取文本左边 (“0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ”, 被转换进制), 临时文本, , 假) = -1) 临时文本 = “参数错误-” + 被转换文本 + “不是一个有效的” + 取文本左边 (数值到金额 (被转换进制, 真), 取文本长度 (数值到金额 (被转换进制, 真)) - 4) + “进制数!” 跳出循环 () .如果真结束 ' 全部查找完毕 .如果真 (计次变量1 = 取文本长度 (被转换文本)) 临时文本 = “” .如果真结束 .变量循环尾 () ' 如果临时文本不为空,说明此数字文本无效! .如果真 (临时文本 ≠ “”) 返回 (临时文本) .如果真结束 ' 以上为数据正确性校验处理代码 .如果真 (被转换进制 = 转换的进制) ' 相同时,不用进行转换 返回 (被转换文本) .如果真结束 .变量循环首 (1, 取文本长度 (被转换文本), 1, 计次变量1) ' 先将要转换的数字放入大数中 次方数.导入数字 (1) ' 数值1不能直接和大数类型计算,所以先放入一个大数中 被转换进制大数.导入数字 (被转换进制) .计次循环首 (取文本长度 (被转换文本) - 计次变量1, 计次变量2) ' 求次方 次方数 = 次方数.乘 (被转换进制大数) .计次循环尾 () 临时大数1.导入数字 (寻找文本 (“0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ”, 取文本中间 (被转换文本, 计次变量1, 1), , 真) - 1) 临时大数1 = 临时大数1.乘 (次方数) 临时大数 = 临时大数1.加 (临时大数) ' 临时大数即为最后转换成的大数 .变量循环尾 () 转换的进制大数1.导入数字 (转换的进制 - 1) 转换的进制大数.导入数字 (转换的进制) 数值1大数.导入数字 (1) ' 数值1不能直接和大数类型计算,所以先放入一个大数中 .判断循环首 (临时大数.大于 (转换的进制大数1) = 真) ' 开始进制转换,除进制数取余数 余数大数 = 临时大数.求余 (转换的进制大数) ' 求出的余数 临时大数1 = 余数大数.加 (数值1大数) ' 求出的余数+1 临时数值 = 到数值 (临时大数1.导出文本 ()) ' 最后的余数 欲转换文本 = 取文本中间 (“0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ”, 临时数值, 1) + 欲转换文本 ' 找出每一个余数对应的数字 临时大数 = 临时大数.除 (转换的进制大数, 10) ' 取出剩余的数字 临时大数 = 临时大数.取整数 () .判断循环尾 () 临时数值 = 临时大数.导出整数 () ' 最后剩下的余数 欲转换文本 = 取文本中间 (“0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ”, 临时数值 + 1, 1) + 欲转换文本 ' 整数转换结束 返回 (欲转换文本) 新建一个易模块程序,把上面的代码复制进去,编译了就可以了。 另外,虚机团上产品团购,超级便宜
#include #include using namespace std; #define n 2.0//其他进制换位权就可以了 int main() { char c[100]; cin>>c; long value=0; int temp; for(int i=strlen(c)-1,j=0;i>=0;i--,j++) { temp=int(c[i]-'0'); value+=temp*pow(n,j); } cout< 评论0 0 加载更多