Dlaczego tak
Od standardu C++11 dzielenie całkowite obcina wynik w stronę zera, więc −7 / 2 = −3, a reszta ma znak dzielnej i spełnia równość (a / b) · b + a % b = a: −3 · 2 + (−1) = −7, więc −7 % 2 = −1. Wynik −4 1 dałby Python, w którym operator // zaokrągla w dół, a reszta ma znak dzielnika. Odpowiedzi mieszane łamią podaną równość.