iOS round函数 需要ios 如何导入框架什么框架

查看: 1009|回复: 8
阅读权限20
在线时间 小时
用了round函数保留0位,蓝色部分合计与红色部分相差1元,而黄色部分却无误差,为什么。如用round函数保留2位,蓝色与红色部分无误差,但其他区域却有误差0.01现请教如何在都保留0位的情况下可以无误差?
(3.62 KB, 下载次数: 24)
23:08 上传
点击文件名下载附件
阅读权限150
在线时间 小时
用四舍五入函数修约后的计算结果凑齐一个整数,下面两个相同,只是凑巧而已。
原公式可简化一下
=ROUND((B4=&对&)*SUMIF(A:A,A4,M:M)*K4/SUMIF(A:A,A4,K:K),0)
阅读权限50
在线时间 小时
因为小数位数越少,四舍五入对半的概率越小,所以就会出现这种情况,如果要精确,只有两次四舍五入,先精确到1位,再对其1位小数四舍五入舍掉小数,这样对半概率就大了,就不会出现误差1元的现象。或干脆设置辅助列进行保留小数汇总,对四舍五入结果修正
阅读权限50
在线时间 小时
不过还是嵌套两次公式更好,因为辅助列修正,不知道如何修正。公式参考如下
=ROUND(ROUND(A1,1),0)
阅读权限50
在线时间 小时
如果不行,可以再嵌套一层,增加对半概率(先2位,再1位,再取0位)。
阅读权限20
在线时间 小时
& & & & & & & &
谢谢大家的回复,先试下看看结果如何再和大家讨论,谢谢!
阅读权限20
在线时间 小时
刚才按nkgsm 兄的方法试了,公式参考如下=ROUND(ROUND(A1,1),0),左边合计为5280的对了,但是右边合计3000的还是差1元。然后再用先2位,再1位,再0位嵌套,左边合计为5281了,右边3000还是差1元,哎头大啊!
阅读权限50
在线时间 小时
只有用辅助列汇总原始数据,因为只有很少的数据才会出现这样四舍五入不对半的概率,不是我说的小数位数的关系,根据概率论应该是硬币抛掷的次数太少,所以,这种数据个数这么少的数据四舍五入,很容易出现误差,可以用辅助列检验,再手工修正个别数据(也只需修改1个),比如3000汇总结果的,可以选择那个小数点后两位最大的那个比如0.36那个单元格用roundup向上舍入处理。因为楼主的数据量太少只有这样处理,嵌套公式还是不理想。
阅读权限20
在线时间 小时
谢谢nkgsm 兄的热心解答!
玩命加载中,请稍候
玩命加载中,请稍候
Powered by
本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任! & & 本站特聘法律顾问:徐怀玉律师 李志群律师查看: 1076|回复: 5
问一个if和round函数的问题
阅读权限10
在线时间 小时
本帖最后由 minic00per 于
13:22 编辑
能不能定义函数“在小于或等于50范围内,以最接近5递增量标示,大于50的,以10递增量标示,小于5l则用零标示”,取整
比如数据平均值是84,我输出的是90 比如平均值41.5,那我输出的就是45
比如平均值是4.1,那我输出的就是0
这个问题暂时就不考虑了,(一般我会有3-5个检测数据,比如73,74,78,82,83平均值是78,照理我输出数据是80;但是,考虑到有两个数据是82,83,所以我是需要纠正一下输出90。)
多谢3,4楼的兄弟,我上传下我得数据,我的数据在B3,C3,D3,平均值E3;输出数据是C100。我已经按照帮助修改了函数,但是问题是平均值是110时,输出数据是110,而实际需要应该是120,
(17.34 KB, 下载次数: 3)
13:17 上传
点击文件名下载附件
阅读权限95
在线时间 小时
这逻辑还没说完整啊。。。
“比如73,74,78,82,83平均值是78,照理我输出数据是80;但是,考虑到有两个数据是82,83,所以我是需要纠正一下输出90。”
那如果是&&1,1,1,95,105 呢? 平均值才40多,考虑到有超过100的,纠正下输出110?
阅读权限30
在线时间 小时
& & & & & & & &
数据在A1时;
=IF(A1&=50,LOOKUP(A1,(ROW(1:10)-1)*5)+5,INT(A1/10)*10+MIN(MOD(A1,10),1)*10)
阅读权限100
在线时间 小时
数据在A1=IF(A1&5,0,IF(AND(A1&5,A1&=50),CEILING(A1,5),IF(A1&50,CEILING(A1,10))))复制代码
阅读权限100
在线时间 小时
在本单元格变化不行,在其他单元格应该没问题,第二个问题请把条件说得清楚些,有一个超80不变,有两个就向上进?90呢?……
请上传excel压缩文件,并模拟结果!
阅读权限10
在线时间 小时
首席打杂 发表于
这逻辑还没说完整啊。。。
“比如73,74,78,82,83平均值是78,照理我输出数据是80;但是,考虑到有两个 ...
这个确实是问题,不过我们是样品的检测数据,不会出现1,95这样的跨度,10之内的跨度是有的。
玩命加载中,请稍候
玩命加载中,请稍候
Powered by
本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任! & & 本站特聘法律顾问:徐怀玉律师 李志群律师extern&float&ceilf(float);
extern&double&ceil(double);
extern&long&double&ceill(long&double);
extern&float&floorf(float);
extern&double&floor(double);
extern&long&double&floorl(longdouble);
extern&float&roundf(float);
extern&double&round(double);
extern&long&double&roundl(longdouble);
round:如果参数是小数,则求本身的四舍五入。
ceil:如果参数是小数,则求最小的整数但不小于本身.
floor:如果参数是小数,则求最大的整数但不大于本身.&
Example:如何值是3.4的话,则
3.4 -- round 3.000000
& & -- ceil 4.000000
& & -- floor 3.00000
CGRectMake(floorf(self.view.bounds.size.width*0.5f&-39.f*0.5f),self.view.bounds.size.height&-57,&39,&39)
其中floorf(self.view.bounds.size.width*0.5f&-39.f*0.5f)返回值为
140.000000这种形式
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:32794次
排名:千里之外
原创:26篇
转载:73篇
(1)(1)(2)(1)(1)(3)(3)(8)(1)(9)(6)(8)(9)(3)(4)(1)(6)(4)(6)(9)(8)(7)评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
第一章 ASP.NET 教程 (基础)
第二章 ASP.NET 教程(高级)查看: 1076|回复: 5
问一个if和round函数的问题
阅读权限10
在线时间 小时
本帖最后由 minic00per 于
13:22 编辑
能不能定义函数“在小于或等于50范围内,以最接近5递增量标示,大于50的,以10递增量标示,小于5l则用零标示”,取整
比如数据平均值是84,我输出的是90 比如平均值41.5,那我输出的就是45
比如平均值是4.1,那我输出的就是0
这个问题暂时就不考虑了,(一般我会有3-5个检测数据,比如73,74,78,82,83平均值是78,照理我输出数据是80;但是,考虑到有两个数据是82,83,所以我是需要纠正一下输出90。)
多谢3,4楼的兄弟,我上传下我得数据,我的数据在B3,C3,D3,平均值E3;输出数据是C100。我已经按照帮助修改了函数,但是问题是平均值是110时,输出数据是110,而实际需要应该是120,
(17.34 KB, 下载次数: 3)
13:17 上传
点击文件名下载附件
阅读权限95
在线时间 小时
这逻辑还没说完整啊。。。
“比如73,74,78,82,83平均值是78,照理我输出数据是80;但是,考虑到有两个数据是82,83,所以我是需要纠正一下输出90。”
那如果是&&1,1,1,95,105 呢? 平均值才40多,考虑到有超过100的,纠正下输出110?
阅读权限30
在线时间 小时
& & & & & & & &
数据在A1时;
=IF(A1&=50,LOOKUP(A1,(ROW(1:10)-1)*5)+5,INT(A1/10)*10+MIN(MOD(A1,10),1)*10)
阅读权限100
在线时间 小时
数据在A1=IF(A1&5,0,IF(AND(A1&5,A1&=50),CEILING(A1,5),IF(A1&50,CEILING(A1,10))))复制代码
阅读权限100
在线时间 小时
在本单元格变化不行,在其他单元格应该没问题,第二个问题请把条件说得清楚些,有一个超80不变,有两个就向上进?90呢?……
请上传excel压缩文件,并模拟结果!
阅读权限10
在线时间 小时
首席打杂 发表于
这逻辑还没说完整啊。。。
“比如73,74,78,82,83平均值是78,照理我输出数据是80;但是,考虑到有两个 ...
这个确实是问题,不过我们是样品的检测数据,不会出现1,95这样的跨度,10之内的跨度是有的。
玩命加载中,请稍候
玩命加载中,请稍候
Powered by
本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任! & & 本站特聘法律顾问:徐怀玉律师 李志群律师}

我要回帖

更多关于 round函数怎么用 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信