Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Ceil i dziwne zaokrąglanie
deha21
post
Post #1





Grupa: Zarejestrowani
Postów: 544
Pomógł: 5
Dołączył: 18.08.2009

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


Mam coś takiego.
  1. $one=-3;
  2. $two=2;
  3. echo ceil(($one+$two)/2);

Wynik wskazuje na 0 ale zamiast 0 pokazuje -0. Jak zrobić żeby ceil zachował swoją funkcję ale ten minus został usunięty. Czy jest jakaś inna metoda niż sprawdzanie na IF'ie?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 6)
bzeebzee
post
Post #2





Grupa: Zarejestrowani
Postów: 38
Pomógł: 3
Dołączył: 25.12.2011

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


Spróbuj tak:
  1. $one=3;
  2. $two=2;
  3. echo (ceil(($one+$two)/2))*(-1);

UWAGA: Nie sprawdzałem ale nie powinno sypać błędami
Go to the top of the page
+Quote Post
deha21
post
Post #3





Grupa: Zarejestrowani
Postów: 544
Pomógł: 5
Dołączył: 18.08.2009

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


No prawie... Zamieniając liczby np. na -4 i -2, średnia powinna wyjść -3 a tym sposobem wychodzi 3. Potrzebuje czegoś uniwersalnego co zachowa się poprawnie w dwóch przypadkach.
Go to the top of the page
+Quote Post
vokiel
post
Post #4





Grupa: Zarejestrowani
Postów: 2 592
Pomógł: 445
Dołączył: 12.03.2007

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


abs() - nie mylić z Absolutny Brak Szyi, czyli tzw. "Szyitami"
Go to the top of the page
+Quote Post
deha21
post
Post #5





Grupa: Zarejestrowani
Postów: 544
Pomógł: 5
Dołączył: 18.08.2009

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


Chodzi o coś innego. Abs() z "-2" zrobi "2" a chodzi mi tylko o to, żeby nie robiło "-0" a "0" ... bo przecież "-0" jest nielogiczne.
Go to the top of the page
+Quote Post
r4xz
post
Post #6





Grupa: Zarejestrowani
Postów: 673
Pomógł: 106
Dołączył: 31.12.2008

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


Cytat
oktam 10-May-2011 03:12
Actual behaviour:
echo ceil(-0.1); //result "-0" but i expect "0"

Workaround:
echo ceil(-0.1)+0; //result "0"


http://www.php.net/manual/en/function.ceil.php

nie sprawdzałem, ale mam nadzieję iż autor nie kłamie (IMG:style_emoticons/default/smile.gif)

PS czasem warto poczytać komentarze - nawet z pozoru banalne funkcje kryją w sobie ciekawostki
Go to the top of the page
+Quote Post
deha21
post
Post #7





Grupa: Zarejestrowani
Postów: 544
Pomógł: 5
Dołączył: 18.08.2009

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


Dzięki. Pomogło (IMG:style_emoticons/default/biggrin.gif)
Go to the top of the page
+Quote Post

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: 22.08.2025 - 23:16