Ich habe diese PHP-Funktion, die nicht für negative Zahlen funktioniert:
%Vor%aber es funktioniert für positive Zahl.
Ich habe diese Perl-Routine, die genau dasselbe macht und auch für negative Zahlen funktioniert
%Vor%Habe ich einen Fehler bei der Übersetzung der Funktion gemacht? oder ist es PHP Bug?
In PHP ist das Vorzeichen des Ergebnisses von x % y
das Vorzeichen von Dividend , das ist x
, aber
In Perl ist dies das Zeichen des Divisors , der y
ist.
In PHP kann das Ergebnis von $num % 2
entweder 1
, -1
oder 0
sein.
So reparieren Sie Ihre Funktion vergleichen Sie das Ergebnis mit 0
: