mathematica进制(数字格式)转换
来源:互联网 发布:郑州网络销售抓人 编辑:程序博客网 时间:2024/05/17 01:51
光看这个名字可能感觉不知道在讲什么,这一篇其实主要就是讲数字的十进制转二进制,二进制转十进制,十进制转罗马数字等的。
使用的函数
这一篇会用到的函数有:
1. IntegerString
:这个用来把十进制的数子转换成其他的格式。
2. FromDigits
:把x进制的数字转换成十进制。
3. Head
:查看数据类型。
4. LetterNumber
:给出字母对应的位置
5. FromLetterNumber
:给出对应数字的字母
简单例子
把十进制转换成二进制
IntegerString[10, 2]
要注意的是,转换成二进制后的数据不能直接做运算,因为是String
类型的。我们可以使用ToExpress
来进行转换数据类型来进行计算。
IntegerString[ ToExpression[IntegerString[10, 2]] + ToExpression[IntegerString[10, 2]], 10]
查看数据类型
我们可以通过Head
来查看数据类型,可以看到一开始是String数据类型的,加了ToExpress之后是Integer数据类型了。
把二进制转换成十进制
上面是把十进制转换成二进制,理所当然,我们想到了如何把二进制转换为十进制。
FromDigits["10", 2]
我们看一下之前的例子,把10转换成2进制相加,再转换成10进制,查看结果是否正确,可以看到计算是正确的。
FromDigits[ IntegerString[ ToExpression[IntegerString[10, 2]] + ToExpression[IntegerString[10, 2]], 10], 2]
任意进制之间的相互转化
有了上面的二进制和十进制的转换,下面我们看一下任意进制的转换,该例子是十进制和八进制的转换。
把十进制转换成罗马数字
除了能将不同进制的数字相互转化,还能将数字与罗马数字转化。这些帮助文档中也会提及,大家也可以自行翻看,我在这里就简单介绍一下。
找到十进制对于的字母
就直接看下面的例子,也是能看懂的
生成字母表
我们应用上面的知识,来生成一张英文字母和希腊字母对应的表格。
最后做到的效果如下图所示:
其实做起来想法是很简单的,就是使用对应数字极其对应的字母。下面先来看第一种写法。
这种写法是使用Labeled来做注释的。
Table[Labeled[i, Labeled[FromLetterNumber[i], FromLetterNumber[i, "Greek"]]], {i, 24}]
写出来的效果如下:
但是这样写有一个不方便的地方就是不能使用Grid
进行扩展,于是我们考虑下面的写法:
Grid[Transpose[ Table[{i, FromLetterNumber[i], FromLetterNumber[i, "Greek"]}, {i, 24}]], Frame -> All]
这种写法的优点就是便于扩展,因为数据是保存成了矩阵的形式
上面生成的表格还是不够好看,我想分成上下两层,突出字母,于是就修改Grid
的代码即可。
Rasterize[ Grid[Flatten[ Transpose[ Partition[ Table[{i, Style[FromLetterNumber[i], Bold], Style[FromLetterNumber[i, "Greek"], Bold]}, {i, 24}], 12][[#]]] & /@ Range[2], 1], Frame -> {False, All}, Background -> {None, {{Pink, Yellow, Yellow}}}], RasterSize -> 2000]
于是我们就得到了上面的那张表格。
以上,所有
2017 / 7 / 1
- mathematica进制(数字格式)转换
- 数字输出格式转换
- java 数字格式转换
- 转换RMB数字大小写格式
- SAS 字符数字格式转换
- js数字转换货币格式
- mysql 日期转换和数字格式转换
- javascript将中国数字格式转换成欧式数字格式
- ORACLE函数TO_CHAR以及数字转换格式
- ORACLE函数TO_CHAR以及数字转换格式
- ip地址,字符串、数字格式转换
- SQL将数字转换成千分号格式
- ORACLE函数TO_CHAR以及数字转换格式
- Excel 数字和文本格式转换
- sql日期格式转换的数字含义
- ORACLE函数TO_CHAR以及数字转换格式
- 替换非数字:转换时间格式
- ORACLE函数TO_CHAR以及数字转换格式
- Linux问题—主机与虚拟机相互通信及虚拟机访问外网
- Zookeeper一致性算法——Paxos算法
- Hadoop入门-配置Hadoop-2.8
- 谈谈Linux下动态库查找路径的问题
- ssh和ejb的区别
- mathematica进制(数字格式)转换
- Effective Java 学习笔记——第二章
- mysql中 where in 用法详解
- jira中svn地址显示为link的实现
- Java中的八种基本数据类型
- Redis Select 命令
- 设计模式资源清单
- 微信小程序之 PHP 发送模板消息
- BibTeX 生成自定义的参考文献