![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 7.01.2013 Ostrzeżenie: (0%) ![]() ![]() |
mam taką pętlę jak poniżej, spodziewałem się, że będzie zwracać same wartości z dokładnością do jednego miejsca po przecinku a tu zamiast zera mam 2.7755575615629E-17 co nie jest jednoznaczne z zerem. Z czego to wynika?
zwraca mi to następujące dane t przed ifami : 0.2 cooldown_1: 0 t: 0.3 cooldown_1: 0.4 t przed ifami : 0.3 cooldown_1: 0.4 t: 0.4 cooldown_1: 0.3 t przed ifami : 0.4 cooldown_1: 0.3 t: 0.5 cooldown_1: 0.2 t przed ifami : 0.5 cooldown_1: 0.2 t: 0.6 cooldown_1: 0.1 t przed ifami : 0.6 cooldown_1: 0.1 t: 0.7 cooldown_1: 2.7755575615629E-17 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 239 Pomógł: 20 Dołączył: 19.02.2010 Ostrzeżenie: (0%) ![]() ![]() |
spróbuj wszystkie dodawane wartości zaokrąglić funkcją round() np. round(cooldown_1 + $fast_cooldown_1,2)
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 7.01.2013 Ostrzeżenie: (0%) ![]() ![]() |
pomogło, ale czy to tak się powinno zawsze odbywać? liczyłem, że w przypadku takich operacji nie ma co myśleć o błędach związanych z dokładnością...
|
|
|
![]()
Post
#4
|
|
Grupa: Moderatorzy Postów: 2 921 Pomógł: 269 Dołączył: 11.08.2005 Skąd: 127.0.0.1 ![]() |
Tutaj masz to ładnie wyjaśnione - https://secure.php.net/manual/en/language.types.float.php
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 04:42 |