打印

小数计算问题

[复制链接]
1870|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
彪哥|  楼主 | 2007-3-22 12:51 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
coldra| | 2007-3-22 12:56 | 只看该作者

尽量不用浮点型数据计算

其实fre_t_us =1000000/fre_data嘛,用不着浮点数吧,如果精度不够,将1000000左移就可以了,结果再右移还原

使用特权

评论回复
板凳
ayb_ice| | 2007-3-22 13:16 | 只看该作者

随便说说

  这也花不了多少时间,浮点数计算没有想象的那么花时间。

使用特权

评论回复
地板
彪哥|  楼主 | 2007-3-22 13:34 | 只看该作者

fre_data本身就有可能是个小数

如果按照2楼的方法,还是要浮点计算,因为fre_data本身就是小数。

使用特权

评论回复
5
AA_55| | 2007-3-22 14:11 | 只看该作者

除非你是在做科学计算,否则没有必要使用浮点数

long int的表达范围能达到-21亿到+21亿,有效精度可以达到10位,有什么工程技术数值不能表达的,非要浮点数?

使用特权

评论回复
6
coldra| | 2007-3-22 14:24 | 只看该作者

fre_data也放大到整数

根据精度要求左移不同位而已,比如1.5/0.4,分子放大256倍得384,0.4放大256倍得102(弃小数)结果为3,精度不好没关系,前者改为放大65536得98304,除102得963十六进制数为3C3,C3就是小数部分。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

44

主题

171

帖子

1

粉丝