| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1867 人关注过本帖
标题:程序中不能用浮点数,怎么实现啊?谢谢大家
取消只看楼主 加入收藏
candle-ren
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2008-5-28
收藏
 问题点数:0 回复次数:7 
程序中不能用浮点数,怎么实现啊?谢谢大家
比如开方之类的,结果就是浮点数,可程序要求不能有浮点数,全用整型实现,怎么办啊?谢谢大家!
搜索更多相关主题的帖子: 点数 
2008-09-16 08:37
candle-ren
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2008-5-28
收藏
得分:0 
回复 2# ml232528 的帖子
那样的话就损失精度了啊~
2008-09-16 08:57
candle-ren
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2008-5-28
收藏
得分:0 
[bo][un]forever74[/un] 在 2008-9-16 14:29 的发言:[/bo]

精度是啥?有效数字位数嘛
只有浮点才有精度这一说

全都用整型的你还关心啥精度啊?

本来是浮点数,即float型,但程序中规定只能定义int,不能用float,但还不影响float型数据的计算。我是这个意思,怎么办啊?
2008-09-17 08:32
candle-ren
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2008-5-28
收藏
得分:0 
大家的说法都不太靠谱啊。比如6开方是2.4495.程序中不能定义浮点数,而又不丢失精度,强制转换能实现么?显然不能吧!
可能唯一的方法就是把浮点数变为定点数了!
2008-09-17 16:31
candle-ren
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2008-5-28
收藏
得分:0 
[bo][un]josen0205[/un] 在 2008-9-17 17:23 的发言:[/bo]

你的是什么程序啊?

某控制系统的程序,实际上安全性要求高的系统很多都有这个要求,对了,C编程有个misra规则,大家可以看看,达到这个规则,程序才算安全啊~,有很多变态的规定~
2008-09-18 08:15
candle-ren
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2008-5-28
收藏
得分:0 
我们的要求是既要满足misra规则,又不要浮点数~
2008-09-18 09:35
candle-ren
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2008-5-28
收藏
得分:0 
[bo][un]StarWing83[/un] 在 2008-9-18 09:45 的发言:[/bo]

很简单,比如算六位浮点:

#define E 1e6;

int a=(int)(2*E);
int b=(int)(sqrt(a/E)*E);

当然这种行为纯粹抽风。

如果不用浮点数的原因,是没有浮点库,不要怀疑了,你只有两条路走:

1、不要进行任 ...

有浮点库,就是规定不能用浮点数。国外某大公司的软件也是这么做的,我们也是学习人家。肯定有人家的道理~
不要进行复杂运算是什么意思啊?谢谢你啊
2008-09-18 12:32
candle-ren
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2008-5-28
收藏
得分:0 
[bo][un]StarWing83[/un] 在 2008-9-18 17:20 的发言:[/bo]

那个,我诚心请教,请您告诉我为什么不能用浮点数好么?给我一个原因,我才好找到针对问题的解决方法嘛……

为了回答你这个问题,我特意问了下同事,他说:1是浮点数计算费时;2是我们的程序要用到所有数据按位取反作比较,浮点很难处理;3我们是和国外合作,国外公司规定不能用浮点;具体怎么回事我也说不清楚啊~
2008-09-18 17:46
快速回复:程序中不能用浮点数,怎么实现啊?谢谢大家
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.012786 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved