Hmmm... itu PHP ya? $ = prefix untuk variable.
Tipe data float memang sering bermasalah dalam hal akurasi. Bisa jadi (x + y) + z != x + (y + z). Dan itu bukan di PHP saja kok, di bahasa lain seperti C juga banyak kasus seperti itu.
Untuk kasus zanbatos, masalahnya adalah hidden precision, salah satu work aroundnya bisa ditambahkan pembulatan sampai ke-n dibelakang koma dimana n adalah angka dibelakang koma yang terakhir.
Supaya $var1 == $var2, bisa ditambahkan:
Code:
$var1 = 0.6;
$var2 = 14.5 + 0.6 - 14.5;
if(round($var1, 1) == round($var2, 1)) {
print("Nilai sama\n");
print("Nilai var 1 = $var1, Nilai var2 = $var2\n");
} else {
print("Nilai berbeda\n");
print("Nilai var 1 = $var1, Nilai var2 = $var2\n");
}
Yang hasilnya adalah:
Nilai sama
Nilai var 1 = 0.6, Nilai var2 = 0.6
Share This Thread