啤酒和饮料
啤酒每罐2.3,饮料每罐1.9。小明买了若干啤酒和饮料共花了82.3元。
我们还知道买的啤酒比饮料少,他买了几罐啤酒
浮点数:足够接近,并不说它相等。浮点数不能使用==这种
改成以角为单位,使用整数而不使用浮点数。
int main()
{
int a,b;
for(a=1;a<100;a++)
{
for(b=1;b<100;b++)
{
if(a*23 + b*19 == 823)
printf("%d %d",a,b);
}
}
}
11 30
浮点数有着不能精确比较的特征
有一群海盗,在船上比拼酒量,所有在场的人平分喝下,再打开一瓶,又有倒下的,再次重复,直到打开第四瓶,坐着的已经所剩无几,海盗船长也在其中,第四瓶喝完后大家都倒下
等海盗船长醒来发现船已经搁浅了,他昨天刚好喝了一瓶
1/a + 1/b + 1/c + 1/d == 1
转化为
bcd + acd + abd + abc == abcd
//IEEE754
5个特殊值
0.0
infinity 正无穷大
NaN not a number