Regarding the operation of division with remainder (%) - it differs from the one accepted in mathematics, since it is looking for "refusal" and not "remainder" - a feature of the idiv implementation in 8086
Okulda öğrendiğiniz temel aritmetiği hatırlıyor musunuz? Bu işleçler tam da öyle çalışır.
Örnek | İsim | Sonuç |
---|---|---|
+$a | Özdeşlik | $a'nın int veya float'a dönüşümü. |
-$a |
Olumsuzlama | $a'nın eksi işaretlisi. |
$a + $b |
Toplama | $a ile $b'nin toplamı. |
$a - $b |
Çıkarma | $a'nın $b'den farkı. |
$a * $b |
Çarpma | $a ile $b'nin çarpımı. |
$a / $b |
Bölme | $a'nın $b'ye bölümü. |
$a % $b |
Kalan | $a'nın $b'ye bölümünden kalan. |
$a ** $b | Üs | $a üssü $b. |
Bölme işlecinin tamsayı bölüm vermesi için iki teriminin de tamsayı (veya dönüşüm sonucu tamsayı olan dizge) olması ve birbirlerine tam olarak bölünmesi gerekir, aksi takdirde bölüm gerçek sayı olacaktır. Tamsayı bölme için intdiv() işlevine bakınız.
Kalan işlecinin (%
) terimleri gerçek sayılarsa
tamsayıya (int türüne) dönüştürülürler. Gerçek sayı bölmeden
kalan için fmod() işlevine bakınız.
%
kalan işlecinin sonucu bölünenin işaretini alır. Yani
$a % $b
işlemini sonucu $a ile aynı
işaretli olacaktır. Örnek:
<?php
echo (5 % 3)."\n"; // 2 basar
echo (5 % -3)."\n"; // 2 basar
echo (-5 % 3)."\n"; // -2 basar
echo (-5 % -3)."\n"; // -2 basar
?>
Regarding the operation of division with remainder (%) - it differs from the one accepted in mathematics, since it is looking for "refusal" and not "remainder" - a feature of the idiv implementation in 8086