math.modf

当我们调用该函数时,该函数返回两个值,第一个值是数字的整数值,第二个返回值是数字的小数值(如果有的话)

math.floor

向下取整
ua 中的math.floor函数是向下取整函数。
math.floor(5.123)  – 5
math.floor(5.523)   – 5
用此特性实现四舍五入
math.floor(5.123 + 0.5)  – 5
math.floor(5.523 + 0.5)  – 6
也就是对math.floor函数的参数进行 “+ 0.5” 计算

小数精度截取

 --获取准确小数-- num 源数字--n 位数function GetPreciseDecimal(num, n)if    type(num) ~= "number" thenreturn numendn = n or 0n = math.floor(n)if   n < 0 then n = 0 endlocal decimal = 10 ^ nlocal temp = math.floor(num * decimal)return = temp / decimalend

获取一个数的位数

function GetNumDigit(num)local result = numlocal digit = 0while(result > 0) doresult =math.modf(result / 10)digit = digit +1endreturn digit
end

整数4舍6入,5保留

例如从第二位开始算

function GetNumDigit(num)local result = numlocal digit = 0while(result > 0) doresult =math.modf(result / 10)digit = digit +1endreturn digit
endlocal num =690local digit = GetNumDigit(num)
print("digit:" .. digit)
local digit2 = digit - 2
print("digit2:" .. digit2)
local ten = 10 ^ digit2
print(" ten:" ..  ten)
local qianLiangWei = math.modf(num / ten)
print("qianLiangWei:" .. qianLiangWei)local qianLiangWeiXiaoShu = qianLiangWei/10
local qianLiangWeiXSZ,qianLiangWeiXSX =math.modf(qianLiangWeiXiaoShu)
print(qianLiangWeiXSZ .. "-->" .. qianLiangWeiXSX)function ShiSheLiuRu(XiaoShu,XiaoPart)if XiaoPart == 0.5 thenreturn XiaoShuelsereturn  round(XiaoShu)end
end--四舍五入
function round(value)value = tonumber(value) or 0return math.floor(value + 0.5)
endlocal qianLiangWei5BeiShu = ShiSheLiuRu(qianLiangWeiXiaoShu,qianLiangWeiXSX)
print(qianLiangWei5BeiShu)local finial = qianLiangWei5BeiShu * ten * 10
print (finial)--输出
digit:3
digit2:1ten:10
qianLiangWei:69
6-->0.9
7
700

整数最靠近5的倍数

function GetDengJiZhengByNear5(num)local geWei = num % 10local zhengPart,xiaoPart = math.modf(num/10)local xiaoShu = num/10if geWei <= 2 thenreturn zhengPart *10elseif geWei >= 3 and geWei <= 7 thenreturn zhengPart *10 + 5elseif geWei >= 8 thenreturn round(xiaoShu) * 10end
end--四舍五入
function round(value)value = tonumber(value) or 0return math.floor(value + 0.5)
endnum = 59
print(GetDengJiZhengByNear5(num))输出
60

Lua:小数精度计算,几位数判断,四舍五入,最靠近5倍数取整相关推荐

  1. 图解数组计算模块NumPy下(三角函数、四舍五入函数(around)、取整、将弧度转化为角度、统计分析函数、中位数、数组的排序、argsort()、lexsort())

    本文来自<Python数据分析从入门到精通>--明日科技编著 8.5 NumPy常用统计分析函数 8.5.1 数学运算函数 NumPy包含大量的数学运算的函数,包括三角函数.算术运算函数. ...

  2. Python除法:四舍五入,地板除,取整,取小数

    原文链接:http://www.juzicode.com/archives/5985 因为除法运算会遇到除不尽问题,除法运算后的结果就会存在各种近似取结果的情况,比如最后的结果是向下取整或者向上取整还 ...

  3. SQLserver技巧 年份判断,以及向上想下取整

    SELECT [出厂日期],DATEDIFF(month,出厂日期,getdate())*1.0/12 as '使用年限/年' ---------得到的结果实际(浮点),cast(DATEDIFF(m ...

  4. Java int类型的除法 向上取整 向下取整 保留小数位数

    今天做了一道计算题,用到整数相除的向上取整,突然卡住了.然后查询并试用了如下方法. 一.三目运算法(向上 / 向下取整 快捷.准确) 两个int型 a.b,a / b 向上取整.可以使用 a / b ...

  5. python3小数向上取整_Python小数取整 向下取整、四舍五入、向上取整【分享】

    本帖子想要达到的效果: 会配置实体服务规则(能用实体服务规则实现的,尽量选用实体服务规则实现), 设置实体服务规则的字段必然触发条件, 小数类型的 可以实现向下取整.四舍五入.向上取整 功能. 先看界 ...

  6. c# 四舍五入、上取整、下取整

    在处理一些数据时,我们希望能用"四舍五入"法实现,但是C#采用的是"四舍六入五成双"的方法,如下面的例子,就是用"四舍六入五成双"得到的结果 ...

  7. 大于3小于4的整数bleem_java中的取整与四舍五入方法实例

    java中的取整与四舍五入方法实例,方式,正数,负数,四舍五入,小数点 java中的取整与四舍五入方法实例 易采站长站,站长之家为您整理了java中的取整与四舍五入方法实例的相关内容. 一.java中 ...

  8. python四舍五入取整_Python取整——向上取整、向下取整、四舍五入取整、向0取整...

    废话少叙,直接上code: 首先,不得不提醒大家一个容易被忽视或者搞混的问题--一般的,0.5这种末尾是5的小数,四舍五入取整应进位.这个进位的意思是:-0.5 → -1:0.5 → 1.即正负情况不 ...

  9. Python取整——向上取整、向下取整、四舍五入取整、向0取整

    废话少叙,直接上code: 首先,不得不提醒大家一个容易被忽视或者搞混的问题--一般的,0.5这种末尾是5的小数,四舍五入取整应进位.这个进位的意思是:-0.5 → -1:0.5 → 1.即正负情况不 ...

最新文章

  1. Uber网站国际化的工程实践(CMS篇)
  2. 深入理解C/C++二维数组
  3. 杭电1430康托 bfs(java)
  4. 【项目实战课】基于Pytorch的3DCNN视频分类与行为识别实战
  5. 多视角透析Struts2
  6. C#软件设计——小话设计模式原则之:接口隔离原则ISP
  7. CSS中可以通过哪些属性定义,使得一个DOM元素不显示在浏览器可视范围内?
  8. android仿qq登陆demo,runOnUiThread,Handler
  9. [转载]测试程序执行时间
  10. 一个dsp最小系统至少要有_DSP原理及应用(2812)试卷_附答案卷B2(2015城南)
  11. matlab中IGBT是什么,igbt的matlab仿真
  12. 问题:you-get能下载百度网盘的资源吗?
  13. How-to: 利用Web Camera模拟Windows Phone 7的重力加速度传感器
  14. 一天一个面试题之——反射
  15. 【ISO/IEC9126】ISO/IEC9126中软件质量模型品质介绍总结
  16. lisp画弯箭头_在CAD中直接画箭头的命令的一个方法
  17. 为什么http请求会缓存?显示from disk cache?
  18. 用Word统计文本出现次数
  19. 【IoT开发】D3引擎升级啦!速速来体验机智云新版智能场景推送
  20. POI 在导出的Excel中插入图片

热门文章

  1. 测试手机是否降频软件,如何检测自己的iPhone是否被苹果降频 降频的处理方法有哪些...
  2. 怎样申请微信公众号/如何开通微信订阅号
  3. 华为荣耀20s云服务_华为荣耀20s云服务_华为荣耀20和20s的区别
  4. 远程计算机强迫关闭一个连接,远程主机强迫关闭了一个现有的连接。
  5. Method threw ‘feign.codec.DecodeException‘ exception.
  6. Python实现一键生成微信好友头像墙
  7. 数控技能大赛计算机程序员,全国数控技能大赛计算机程序设计员-广东职业技能鉴定指导.DOC...
  8. html借助JS简单实现图片闪烁功能
  9. 0.10版本后的kafka配置producer和comsumer的server参数
  10. php截图整个网页,selenium save_screenshot 如何进行全网页截图?