Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> floor źle działa, niemożliwe? A jednak!
php programmer
post
Post #1





Grupa: Zarejestrowani
Postów: 1 045
Pomógł: 5
Dołączył: 8.11.2004
Skąd: trójmiasto

Ostrzeżenie: (0%)
-----


Oto kod
  1. <?php
  2. echo $liczba = 7/0.14;
  3. echo '<br />';
  4. echo floor($liczba);
  5. ?>


Który wyświetla mi
50
49

Jakoby zaokrągleniem w dół liczby 50 było 49!
Czy ktoś wie dlaczego mi tak robi i jak to ominąć.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
cicik
post
Post #2





Grupa: Zarejestrowani
Postów: 219
Pomógł: 5
Dołączył: 18.07.2006
Skąd: Piekary Śląskie

Ostrzeżenie: (0%)
-----


W sumie dziwne bo jak za $liczba podstawi się 50 to jest OK.
Podejrzewam, że na naszych niedoskonałych procesorach 7/0.14 = 49.999999999999999999 (to tylko przykład). Zwykłe wyświetlanie wyniku pewnie zaokrągla na którymś miejscu po przecinku i wychodzi 50. Natomiast floor pewnie bierze całą liczbę i zaokrągla w dół. Aczkolwiek sprawa ciekawa. W wolnej chwili zobaczę jak to wygląda w innych językach i kompilatorach.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 11.10.2025 - 22:54