(a+b)-b答案為什么不是12.3 而是12.29999999997 是小數(shù)點(diǎn)問(wèn)題嗎?
public class HelloWorld{
? ? public static void main(String[] args) {
double a=12.3;
int b=24;
double sum=(a+b)-b;
System.out.println("兩數(shù)之和為:"+sum);
}
}
public class HelloWorld{
? ? public static void main(String[] args) {
double a=12.3;
int b=24;
double sum=(a+b)-b;
System.out.println("兩數(shù)之和為:"+sum);
}
}
舉報(bào)
2021-06-15
我們對(duì)浮點(diǎn)數(shù)進(jìn)行乘除運(yùn)算的時(shí)候計(jì)算機(jī)會(huì)把十進(jìn)制轉(zhuǎn)化為二進(jìn)制進(jìn)行計(jì)算,然后再把結(jié)果轉(zhuǎn)為十進(jìn)制,在轉(zhuǎn)為十進(jìn)制的時(shí)候出現(xiàn)誤差??梢赃@樣改
public?class?HelloWorld?{
????public?static?void?main(String[]?args)?{
????????double?a?=?12.3;
????????int?b?=?24;
????????double?sum?=?(a?+?b)?-?b;
????????System.out.printf("兩數(shù)之和為:%.3f",?sum);
????}
}