![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 2 Pomógł: 0 Dołączył: 16.12.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
ostatnio spotkałem się z dość dziwną sytuacją. Zrobiłem programik w PHP który zlicza mi pewne dane typu float z bazy mySQL. Operacje obliczeniowe wykonało samo zapytanie SQL-a. Problem pojawia mi się dopiero wtedy gdy zaczynam mnożyć przez siebie liczby które mają np jedno miejsce po przecinku, np. gdy pomnoże: 2*5,3 to wynik jest 10,6 ale gdy pomnoże 3*5,3 to wynik jest 15,8999999999999998 zauważyłem że jeśli pomnożył bym 5,3 razy wielokrotność liczby 3 to również będzie zwracalo jakieś głupoty. Przeciesz oczywiste jest że wynik powinien wyjść 15,9 a nie 15,899999998 Skąd te błędy? Zauważyłem również, że w javascript gdy mnoże dwie wartości z pól edit przez siebie to sytuacja jest identyczna. Dla przykładu podam jeszcze, że np 3*5,4 = 16.200000000000003 - a nie jak powinno być 16,2. Skąd się biorą te błędy i jak je wyeliminować? z góry dzięki za odpowiedzi. |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 14.08.2025 - 07:28 |