Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: zagadka
Forum PHP.pl > Forum > Przedszkole
gnom
Chciałbym żeby ktoś mi podpowiedział czemu przy podstawieniu za zmienną $wynik liczby 19 lub 14 zmienna $suma nie zwraca mi liczby całkowitej tylko cos takiego "-1.1102230246252E-016 " Może mam jakis bład w tym przykładzie.
Ale biorąc na logikę :
jesli zmienna $wynik=19 to (1.9 - 0.9) - 1 = 0

  1. <?php
  2. $suma=($wynik/10 - ($wynik%10)/10)-1;
  3. echo $suma;
  4. ?>


Bardzo prosze o pomoc w rozwiązaniu tego problemu.

---
Prosze uzywac [php] do umieszczania doku php
hwao

ph34r.gif
Misiek
Nie mam pojęcia o co tu chodzi, ale w manualu jest wspomniana funkcja gmp i biblioteka BCMath.

Pozdrawiam
rogrog
php jest niedokładne przy operacjach na ułamkach i dlatego w tym działaniu zostaje mu jakiś mały ułamek, chociaż powinno wyjść zero

tak jak wspomniał Misiek, w celu dokładnych operacji można używać zbioru funkcji gmp lub biblioteki bcmath

możesz też zaokrąglać, ale jeśli to mają być nieskomplikowane obliczenia typu stronicowanie, to na pewno da się napisać działania tak, żeby wyniki były odpowiednie
gnom
Bardzo dziękuję że odpowiedzieliście na moje pytanie. Do zbioru funkcji gmp i bibliotek bcmath jeszcze nie doszedłem, ale pomalutku nie odrazu Kraków....
Przynajmniej teraz wiem że php nie jest doskonały pod każdym względem, że czasami trzeba skorzystać z jakiejś alternatywy i w ten sposób poradzić sobie z problemem. Jednak najważniejsze jest to że w sytuacji kiedy nie mam pojecia o innym zastępczym rozwiązaniu z pomocą przychodzą tycy ludzie jak Wy którzy w takich momentach chetnie podzielą się swoim doświadczeniem.

Pozdrawiam
gnom
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.