Целочисленное деление и остаток
В модуле "Арифметические выражения" мы говорили про целочисленные операции деления.
Вспомним их еще раз:
//
- целочисленное деление. Если в результате деления получается нецелое число, то оно округляется до ближайшего целого числа меньшего, чем результат (округление вниз до ближайшего целого числа).
%
- вычисление остатка от деления.
Операция вычисления остатка для отрицательных чисел в Python выполняется немного иначе, чем в других языках программирования, таких как С++ или Паскаль
В Python операция вычисления остатка выполняется по математическим правилам, то есть, как принято считать в Теории Чисел, остаток - это
неотрицательное число (очень полезная статья
здесь). Знак остатка совпадает со знаком делителя.
Пример
c = 10 // 3 # Ответ: с = 3
d = 10 % 3 # Ответ: d = 1
e = -7 // 4 # Ответ: e = -2
f = -7 % 4 # Ответ: f = 1
Значения переменных
e
и
f
получились такими, потому что
-7 = (-2*4)+1
Надо запомнить!
В языке Python операция вычисления остатка для отрицательных чисел выполняется по математическим правилам, то есть
\(-7\ \%\ 4 = 1 \)
В языке программирования Python знак остатка совпадает со знаком делителя.
Целочисленные операции очень важны в программировании. Их нужно понимать и правильно использовать. А для этого нужна практика!