由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Programming版 - 请教关于float的精度和比较
相关主题
c++ 中如何把str转换为float?pointer to override function?
python读入文件疑问问个土问题:什么是satellite data?
c 语言中怎么用科学计数法有关objec access path的问题
请问c语言中double cast成float 会损失多少精度请教一个c++概率小程序
double to float的精度损失?问几个问题
python 问题有没有什么简单的方法从一个double precision的floating point 中读出一个特定的bit?
问一个C语言中整型和浮点运算的问题 (转载)一个小问题
Matlab 中怎样设置坐标轴刻度的精度Java read/write binary floating point data files?
相关话题的讨论汇总
话题: atof话题: float话题: 小数点话题: 比较话题: compare
进入Programming版参与讨论
1 (共1页)
g*****1
发帖数: 998
1
文件中原始数据都是小数点后只有2位的比如 123.88 96.65
然后我用了float price = floor(atof(csvCell.c_str())*100)/100;
我知道一般c++里float数不能直接比较,因为看上去一样,可能不一样,
可是我保留了小数点后只有2位之后也不能直接比较吗
t****t
发帖数: 6806
2
确定只有两位的话, 就乘100比较整数吧.

【在 g*****1 的大作中提到】
: 文件中原始数据都是小数点后只有2位的比如 123.88 96.65
: 然后我用了float price = floor(atof(csvCell.c_str())*100)/100;
: 我知道一般c++里float数不能直接比较,因为看上去一样,可能不一样,
: 可是我保留了小数点后只有2位之后也不能直接比较吗

U*****e
发帖数: 505
3
memory里floating point是按2的多少次方存的,十进制里小数点后两位在二进制里不
是整的。
如果你只关心小数点后两位,x100转换成整数再比较就好了。
或者fabs(x1-x2)<0.01更快点。

【在 g*****1 的大作中提到】
: 文件中原始数据都是小数点后只有2位的比如 123.88 96.65
: 然后我用了float price = floor(atof(csvCell.c_str())*100)/100;
: 我知道一般c++里float数不能直接比较,因为看上去一样,可能不一样,
: 可是我保留了小数点后只有2位之后也不能直接比较吗

a*****i
发帖数: 268
4
如果确定原始数据都是2位小数,还是可以atof后直接比较的。
虽然6.44+6.44==12.88不一定成立;atof("12.88") == atof("12.88")总是成立的。
f******y
发帖数: 2971
5
agree with this. However, I never use '==' to compare any floating type
variables.

【在 a*****i 的大作中提到】
: 如果确定原始数据都是2位小数,还是可以atof后直接比较的。
: 虽然6.44+6.44==12.88不一定成立;atof("12.88") == atof("12.88")总是成立的。

a******d
发帖数: 191
6
If you know exactly, the only steps involved are
1. Parsing string
2. Compare sesults in the previous step
Then you can still test
float(atof(stringA)) > float(atof(stringB))
Results guarenteed to be correct still.
1 (共1页)
进入Programming版参与讨论
相关主题
Java read/write binary floating point data files?double to float的精度损失?
another simple questionpython 问题
关于gdb的问题, 谢谢问一个C语言中整型和浮点运算的问题 (转载)
HOW TO round float numbers to integer? in CMatlab 中怎样设置坐标轴刻度的精度
c++ 中如何把str转换为float?pointer to override function?
python读入文件疑问问个土问题:什么是satellite data?
c 语言中怎么用科学计数法有关objec access path的问题
请问c语言中double cast成float 会损失多少精度请教一个c++概率小程序
相关话题的讨论汇总
话题: atof话题: float话题: 小数点话题: 比较话题: compare