Если есть знакомый 5-класник, лучше у него спроси, а то сейчас некоторые лоровцы начнут через логарифмы и мнимумую единицу доказывать что ты неправ и посоветуют пойти в школу.
Деление произвольных целых чисел несущественно отличается от деления натуральных чисел — достаточно поделить их модули и учесть правило знаков.
Однако деление целых чисел с остатком определяется неоднозначно. В одном случае, (так же как и без остатка) рассматривают сначала модули и в результате остаток приобретает тот же знак, что делитель или делимое (например, -7 / (-3) = 2 с остатком (-1)); в другом случае понятие остатка напрямую обобщается и ограничения заимствуются из натуральных чисел: -7 \equiv 2 \pmod 3.
На лекциях по математике в школе нам давали ограничение на величину остатка в пределах от нуля до q-1 включительно, где q — натуральный делитель. Хотя давно это уже было, может быть и ошибаюсь.
Зачем нужна эта функция, если она работает некорректно!?
всё корректно работает. Имеется бесконечное счётное множество отрицательных остатков. Тебе выдают один из них. Т.ч. всё верно. Так процессор работает, ибо проще и быстрее. Уже много лет. Всегда можно восстановить остаток, прибавив к нему делитель (конечно частное тоже надо скорректировать).
В этих учебниках пишут что положительное на отрицательное не делят
угу. Вам надо окончить начальную школу, классе так в пятом вас обучат таким вещам... Ну раньше обучали, как оно сейчас - не знаю, похоже никак. На самом деле восстановление остатка - дополнительная операция, которую по традиции НЕ делают, потому, что это нужно не всегда. Вот создатели пайтона и не стали ломать традиции.
т.е придерживатся мнения что остаток(для не кратного числа) должен быть в диапазоне (a-abs(a),a) для кратного 0 - в этом случае область значения может быть разрывна.