Vim技能修炼教程(16) - 浮点数计算函数
浮点数计算函数
这一节的所有函数,只有在vim编译时支持了+float时才有效。
三角函数
- sin() : sine正弦函数
- cos() : cosine余弦函数
- tan() : tangent正切函数
- asin() : arc sine反正弦函数
- acos() : arc cosine反余弦函数
- atan() : arc tangent反正切函数
- atan2({X坐标},{Y坐标}) : arc tangent反正切函数
- sinh() : hyperbolic sine 双曲正弦函数
- cosh() : hyperbolic cosine双曲余弦函数
- tanh() : hyperbolic tangent双曲正切函数
这些函数基本上都是对应的C函数的封装。比如对于双曲正弦不熟悉的话,可以参看man sinh. 如果不理解atan2,可以man atan2.
数学计算
- abs(): 绝对值
- fmod(): 浮点余数
- exp(): e的乘方
- log(): 自然对数
- log10(): 以10为底的对数
- pow(): 阶乘
- sqrt(): 平方根,如果求负数的平方根,返回NaN.
- isnan(): 判断是否为NaN。比如isnan(0.0/0.0)为真。
浮点数转整数
- float2nr() : 将浮点数转成整数。
- round() : round off, 四舍五入
- ceil(): round up, 上舍入
- floor(): round down,下舍入
- trunc(): 简单截断小数点后面的数
我们来写个函数测试下它们的功能:
function Float2Number(arg)echo "Orginal value:"echo a:argecho "float2nr:"echo float2nr(a:arg)echo "round:"echo round(a:arg)echo "ceil:"echo ceil(a:arg)echo "floor:"echo floor(a:arg)echo "trunc:"echo trunc(a:arg)
endfunction
我们先试试2.06:
Orginal value:
2.06
float2nr:
2
round:
2.0
ceil:
3.0
floor:
2.0
trunc:
2.0
我们再试试122.667:
Orginal value:
122.667
float2nr:
122
round:
123.0
ceil:
123.0
floor:
122.0
trunc:
122.0
我们再看一个负数:-9.08
Orginal value:
-9.08
float2nr:
-9
round:
-9.0
ceil:
-9.0
floor:
-10.0
trunc:
-9.0
最后来一个五入的负数:
Orginal value:
-65.96
float2nr:
-65
round:
-66.0
ceil:
-65.0
floor:
-66.0
trunc:
-65.0
我们总结一下:
- 除了float2nr,其它所有截断的结果还是浮点数
- float2nr的策略跟trunc一致,也就是说,如果要想四舍五入的话,先做round再float2nr.
- round是四舍五入,不管正负,都是四舍五入。
- ceil取大于等于它的最小整数。
- floor取小于等于它的最大整数。
- trunc就是简单去掉小数部分。
Vim技能修炼教程(16) - 浮点数计算函数相关推荐
- Vim技能修炼教程(10) - 代码跳转
程序员功能 前面我们用了5讲的篇幅来讲基本编辑的基本功:第4讲是基本操作,第5讲是操作符,第6讲行编辑ex命令,第7讲可视模式,第8讲多窗口,第9讲缓冲区和标签页. 从这一讲开始,我们从通用功能向程序 ...
- PHP浮点数计算函数不四舍五入
PHP浮点数计算函数不四舍五入 之前做统计模块时,遇到PHP计算精度的问题,比如: $a = 2586; $b = 2585.98;var_dump($a-$b); //期望的结果是:float(0. ...
- datatables 一列显示两个字段的数据_【tableau入门教程16】计算字段
有时数据表中的原始维度和度量并不满足我们的需求,因此可通过计算字段功能,利用各种函数新建字段. 创建字段步骤 1.在侧栏 创建计算字段 2.拖曳字段到输入框或是输入部分字段名称选择字段,当输入框下面显 ...
- Python ln_Python入门教程(三):史上最全的Numpy计算函数总结,建议收藏!
点击上方 蓝字 关注我们 Numpy提供了灵活的.静态类型的.可编译的程序接口口来优化数组的计算,也被称作向量操作,因此在Python数据科学界Numpy显得尤为重要.Numpy的向量操作是通过通用函 ...
- python乘法表运算_Python入门教程(三):史上最全的Numpy计算函数总结,建议收藏!...
点击上方 蓝字 关注我们 Numpy提供了灵活的.静态类型的.可编译的程序接口口来优化数组的计算,也被称作向量操作,因此在Python数据科学界Numpy显得尤为重要.Numpy的向量操作是通过通用函 ...
- 计算机动漫与游戏制作与影视,中职中专计算机动漫与游戏制作专业系列教材·动画与影视后期制作:After Effects CS4技能应用教程...
中职中专计算机动漫与游戏制作专业系列教材·动画与影视后期制作:After Effects CS4技能应用教程 语音 编辑 锁定 讨论 上传视频 <中职中专计算机动漫与游戏制作专业系列教材·动画与 ...
- 计算机表格计算总积分,Excel函数教程: 根据条件计算成绩表-excel技巧-电脑技巧收藏家...
Excel函数教程: 根据条件计算成绩表 (三)根据条件计算值 在了解了IF函数的使用方法后,我们再来看看与之类似的Excel提供的可根据某一条件来分析数据的其他函数.例如,如果要计算单元格区域中某个 ...
- 《zw版·Halcon-delphi系列原创教程》 Halcon分类函数014,tuple,元组
<zw版·Halcon-delphi系列原创教程> Halcon分类函数014,tuple,元组 为方便阅读,在不影响说明的前提下,笔者对函数进行了简化: :: 用符号"**&q ...
- 《zw版·Halcon-delphi系列原创教程》 Halcon分类函数011,ocr,字符识别
<zw版·Halcon-delphi系列原创教程> Halcon分类函数011,ocr,字符识别 为方便阅读,在不影响说明的前提下,笔者对函数进行了简化: :: 用符号"**&q ...
最新文章
- 【转】Linux查看文件编码格式及文件编码转换
- 《系统集成项目管理工程师》必背100个知识点-97信息系统生命周期
- 经典C语言程序100例之八一
- iOS开发网络篇—网络请求(HTTP协议)小结(转)
- ie11上vue中使用elementui的input框无法输入中文
- RPOPLPUSH用法(转)
- PHP 利用Mail_MimeDecode类提取邮件信息
- 给Teams消息附加图片的三种方式
- Github Pages + Jekyll 独立博客一小时快速搭建上线指南
- 浅谈Java回调机制
- 企业之haproxy
- mysql 原来用的引擎_MySQL 的常用引擎
- 怎么理解知行之桥EDI系统的端口?
- 餐饮营销策划案例合集(共18份)
- 启动react-native报错 Unrecognized font family 'Ionicons'
- 计算机温度压力测试,整机性能与温度压力测试
- ORACLE11g数据库安装-刘建-专题视频课程
- 有了这些好看的流程图模板,你也可以画出漂亮的流程图
- dubbokeeper-moniter部署指南
- 计算机硬件故障与软件故障,电脑的故障分硬件故障与软件故障的两大类