啤酒和饮料之浮点数的大小比较不能用==号
2015-04-09 21:36
405 查看
二进制存储的原因,浮点数的大小比较不能用==号。
简化的处理是用fabs(a-b)<1e-6之类的方式
标题:啤酒和饮料
啤酒每罐2.3元,饮料每罐1.9元。小明买了若干啤酒和饮料,一共花了82.3元。
我们还知道他买的啤酒比饮料的数量少,请你计算他买了几罐啤酒。
简化的处理是用fabs(a-b)<1e-6之类的方式
标题:啤酒和饮料
啤酒每罐2.3元,饮料每罐1.9元。小明买了若干啤酒和饮料,一共花了82.3元。
我们还知道他买的啤酒比饮料的数量少,请你计算他买了几罐啤酒。
#include<stdio.h> #include<math.h> int main() { int x,y;//x代表瓶酒数,y代表饮料数 for(x=1;x<40;x++) { for(y=1;y<50;y++) { // if((2.3*x+1.9*y==82.3)&&(x<y))//错误的 浮点数的大小比较不能用==号。 if((fabs(2.3*x+1.9*y-82.3)<0.000006)&&x<y) { printf("%d\n",x); } } } return 0; }
相关文章推荐
- 浮点数的大小比较为什么不能用等号?
- 浮点数的大小比较为什么不能用等号?
- 请定义一个宏,比较两个数a、b的大小,不能使用大于、小于、if语句。
- 浮点数比较大小
- 比较两个数的大小,要求不能用if,<,>,?
- (蓝桥杯问题)C语言中的浮点数比较大小问题
- 浮点数的大小比较问题
- 比较两个浮点数的大小关系
- bccomp比较二个高精确度数字-两个浮点数比较大小等
- 浮点数的大小比较问题
- 两个浮点数的大小比较
- 浮点数的大小比较
- 请定义一个宏,比较两个数的a、b的大小,不能使用大于、小于、if语句
- 请定义一个宏,比较两个数a、b的大小,不能使用大于、小于、if语句
- C编译器剖析_1.5 结合C语言来学汇编_浮点数运算(比较大小)
- 浮点数的大小比较问题
- PHP浮点比较大小的方法
- 为什么虚数不能比较大小呢?
- 定义一个宏,比较两个数a、b的大小,不能使用大于、小于、if语句
- 关于为什么整型不能和float,double型直接比较大小的原因