Сам по себе остаток от деления определяется очень просто: если
p = a div b
то
a mod b = a - b * p
А вот дальше начинается самое интересное: в вычислительной математике есть ДВА основных варианта целочисленного деления:
1. Округление к 0:
4 div 3 = 1 => 4 mod 3 = 4 - 3 * 1 = 4 - 3 = 1
-4 div 3 = -1 => -3 mod 3 = -4 - 3 * -1 = 3 - 4 = -1
4 div -3 = -1 => 4 mod -3 = 4 - -3 * -1 = 4 - 3 = 1
-4 div -3 = 1 => -4 mod -3 = -4 - -3 * 1 = 3 - 4 = -1
Этот вариант реализуется простым отбрасыванием дробной части частного и обеспечивает независимость абсолютного значения результатов от знаков операндов. Он удобен тем, что симметричен относительно 0, но при этом не обеспечивает равномерность деления: если для p <> 0 существует ровно b чисел, дающих a div b = p, то для a div b = 0 кол-во таких чисел равно 2 * b - 1.
2. Округление к минус бесконечности (результат всегда округляется вниз):
4 div 3 = 1 => 4 mod 3 = 4 - 3 * 1 = 4 - 3 = 1
-4 div 3 = -2 => -4 mod 3 = -4 - 3 * -2 = 6 - 4 = 2
4 div -3 = -2 => 4 mod -3 = 4 - -3 * -2 = 4 - 6 = -2
-4 div -3 = 1 => -4 mod -3 = -4 - -3 * 1 = 3 - 4 = -1
Этот вариант обеспечивает равномерность деления по всей числовой оси, но абсолютное значение результатов зависит от знаков операндов.
В разных языках используются разные правила целочисленного деления и, соответственно, получаются разные остатки. Например, стандарт Forth-79 требует округление к 0, а стандарт Forth-83 - к минус бесконечности.
P.S. Pascal появился лет за 30 лет до Google, так что кто с кем спорит - большой вопрос.
Абзал Абдрахманов
деление с остатком это операция remainder (хз как она в паскале)
а это вроде как операция modulo (я так думаю. Все же mod гораздо ближе к modulo, чем к remainder)
делимое, делитель, частное и остаток. mod в паскале это остаток от деления. abs() возвращает модуль числа. Не путаем. Теперь что конкретно по данным числам: вот я разделил в столбик числа и получил 4 в остатке.
Modus
MODULO
теперь без опечаток
https://en.m.wikipedia.org/wiki/Modulo_operation
это не деление с остатком
это деление по модулю (хотя походу у Паскаля это просто деление с остатком и в результат пихает знак исходного числа)