典型的检查对float精度理解的代码
...
1 vx = 0.0000007f * (rand()%-rand()%);
vy = 0.0005f * (rand()%);
vz = 0.0000001f * (rand()%);
pList_particle[i].m_velocity = Vector3(vx,vy,vz);
...
1,3行代码的vx和vz的值域可以通过数学方法计算,而0.0000007f和0.0000001f在运算时是否存在精度丢失从而影响到运算结果?
分析这种问题只能从float存储格式入手,先把两个浮点数化为二进制形式.网上有很多文章,推荐看:http://www.cnblogs.com/yewsky/articles/1864934.html的举例:0.2356存储格式
最起码的也得知道:float是32bit,1bit是float变量的符号位,8bit是float变量的二进制科学计数法的指数位(-127~128),23bit是float变量的二进制科学计数法的尾数位.
典型的检查对float精度理解的代码的更多相关文章
- float精度丢失的问题
在做IPTV的时候,遇到以下这个问题: 现有一个float型数据,以下代码打印输出: float n = 40272.48f; System.out.println(new Double(n * 10 ...
- iOS项目double、float精度丢失解决办法
描述 在iOS项目中老是遇到double.float精度丢失的问题 PS: NSString * jsonStr = @"{\"9.70\":9.70,\"67 ...
- Beam Search快速理解及代码解析
目录 Beam Search快速理解及代码解析(上) Beam Search 贪心搜索 Beam Search Beam Search代码解析 准备初始输入 序列扩展 准备输出 总结 Beam Sea ...
- POJ 2109 Power of Cryptography 数学题 double和float精度和范围
Power of Cryptography Time Limit: 1000MS Memory Limit: 30000K Total Submissions: 21354 Accepted: 107 ...
- CSS3 float深入理解浮动资料整理
CSS浮动(float,clear)通俗讲解 CSS 浮动 CSS float浮动的深入研究.详解及拓展(一) CSS float浮动的深入研究.详解及拓展(二) 1.浮动实现图文环绕(理解难点) 浮 ...
- 编程范式 epesode2 negative values, float 精度
episode2 //it is very interesting,an excellect teacher, I love it 1,why negative is indicated the w ...
- 对float的理解
从IE6下的双边距引出 对一个div设置float:left;同时设置了margin-left:100px时在IE6下会出现双边距. 有两种解决办法: 1,推荐办法.加display:inline 2 ...
- java防止double和float精度丢失的方法
在浮点数当中做运算时经常会出现精度丢失的情况,如果做项目不作处理的话会对商家造成很大的影响的.项目尤其是金融相关的项目对这些运算的精度要求较高. 问题原因:首先计算机进行的是二进制运算,我们输入的十进 ...
- 关于css中float的理解
感觉css里的float是个非常神奇的东西,神奇之处在于,你知道它是什么意思,但是用的时候总是不知道怎么实现效果.又或者它会很容易地影响到别的元素和属性.所以今天打算尝试一下float的各种设置,看看 ...
随机推荐
- ArcGIS API for Silverlight 调用GP服务绘制等值面
原文:ArcGIS API for Silverlight 调用GP服务绘制等值面 GP服务模型如下图: 示例效果图片如下:
- [LeetCode]题解(python):100 Same Tree
题目来源 https://leetcode.com/problems/same-tree/ Given two binary trees, write a function to check if t ...
- HTML页引用CSS
方法1 使用import 方法引用CSS <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"&g ...
- Swift-06-闭包
看完记不住,只好继续抄课文. 如果某个存储型属性的默认值需要特别的定制或者准备,就可以使用闭包或者全局函数来为其属性提供定制的默认值.每当某个属性所属的新类型实例创建时,对应的闭包或者函数会被调用,而 ...
- Asp.net MVC 中超链接的三个方法及比较
在Asp.net WebForm开发中,我们通过a标签进行跳转时,通常的写法是:<a href="index.aspx">首页</a>, 在Asp.net ...
- SQl中Left Join 、Right Join 、Inner Join与Ful Join
1 left join 左外连接:查询结果以左表数据为准.假如左表有四条数据,右表有三条数据,则查询结果为四条,且都是左表中有的数据. 例如: EMP表: SAL表: 左连接 左连接,表EMP是主表, ...
- 针对应用程序池“xxxxxx”的模板永久性缓存初始化失败,解决方法
日志名称: Application 来源: Active Server Pages 日期: 2014-11-22 9:09:39 事件 I ...
- npy in c
https://jcastellssala.com/2014/02/01/npy-in-c/
- 在Visual Studio 2015中运行OPENGL
Starting an OpenGL project in VS 2015 is really easy, thanks to the NupenGL.Core nuget package. Here ...
- @propetry参数
// // Person.h // 01-手动内存管理基本概念 // // Created by apple on 14-3-17. // // #import <Foundation/F ...