Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Reszta z dzielenia, dlaczego ujemna?
bartisz
post
Post #1





Grupa: Zarejestrowani
Postów: 42
Pomógł: 1
Dołączył: 29.10.2007

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


witam
napisałem taki prosty algorytm:
  1. <?php
  2. $x=-7;
  3. for($i=-9;$i<=9;$i++){
  4. $wynik=$i%3;
  5. echo "Dla ".$i." reszta ".$wynik."<br>";
  6. }
  7. ?>


Przyjmuje się, że reszta powinna mieć znak taki jak dzielnik. Przy liczbach dodatnich wszystko się zgadza, jednak przy ujemnych pojawia się problem, ponieważ reszta jest ujemna. Dlaczego tak jest? Błąd interpretera?

proszę o pomoc
pozdrawiam
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
darko
post
Post #2





Grupa: Zarejestrowani
Postów: 2 885
Pomógł: 463
Dołączył: 3.10.2009
Skąd: Wrocław

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


Wynika to z działania operatora modulo

Cytat
Note: Remainder $a % $b is negative for negative $a.


Zawsze można przypisać wartość bezwzględną abs
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: 7.11.2025 - 04:35