Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Dzielenie zmiennych, Co jest nie tak z tym skryptem ???
rkolida
post
Post #1





Grupa: Zarejestrowani
Postów: 37
Pomógł: 0
Dołączył: 28.12.2004

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


Witam,
niech ktos mi powie dlaczego ten prosty skrypt nie wypisuje w wyniku dzialania: STARCZY PUNKTOW !

co tu jest nie tak (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) ?
  1. <?
  2. $punkty = 0.6;
  3. $ludzie = 3;
  4. $dzielenie = $punkty / $ludzie;
  5.  
  6. if ( $dzielenie >= 0.) {
  7.     echo &#092;"STARCZY PUNKTOW !\";
  8. }
  9.  
  10. ?>


Dodam jeszcze tylko, ze ponizszy dziala, wynik 0.3 jest widziany przez IFa, a 0.2 juz NIE! DLACZEGO (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)
  1. <?
  2. $punkty = 0.6;
  3. $ludzie = 2;
  4. $dzielenie = $punkty / $ludzie;
  5.  
  6. if ( $dzielenie >= 0.) {
  7.     echo &#092;"STARCZY PUNKTOW !\";
  8. }
  9.  
  10. ?>


Czy moze jest jakas funkcja do dzielenia, bo trace glowe jak widze takie sytuacje..

Ten post edytował rkolida 27.04.2005, 15:56:27
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
dr_bonzo
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 5 724
Pomógł: 259
Dołączył: 13.04.2004
Skąd: N/A

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


1. po co cytujesz taki kawal tekstu jesli TUZ POD NIM odpowiadasz.
2. to nie jest blad, tak po prostu musi byc -- nie da sie odwzorowac zbioru liczb rzeczywistych na 32 bitach (64 lub innej skonczonej ilosci) -- ieee754 tak dziala i sie sprawdza.

3. sprobuj tak:
$dzielenie >= 0.1999999999 (nie przesadz z iloscia dziewiatek, php w domyslnych ustawieniach uzywa tylko 14 cyfr znaczacych, daj ich 10 - 12 -- chyba bedzie ok)
----
0.19999999999999999
dla takiej ilosci jest okj, jedna dziewiatka wiecej i warunek nie jest spelniony

Ten post edytował dr_bonzo 27.04.2005, 17:45:10
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: 13.10.2025 - 08:39