Оказывается что при выполнении этих операций есть разница результатов если делить целое положительное число и целое отрицательное число.
Вот к примеру:
39 // 10 --> 3
-39 // 10 --> -4
Почему так происходит? Это связано с особенностями округления в Python при выполнении этих операций. Разберем детально.
При делении на цело дробная часть отбрасывается и результат приводится к МЕНЬШЕМУ целому числу.
39 / 10 --> 3.9
-39 / 10 --> -3.9
Меньшее число от 3.9 это 3. А меньшее от -3,9 это -4.
Совсем весело с остатком от деления отрицательных целых чисел.
39 % 10 --> 9
-39 % 10 --> 1
Остаток отделения - это разность делимого и произведения делителя на частное целочисленного деления.
То есть для положительного примера выше это будет:
39 - 10 * 3= 39 - 30 = 9
Для отрицательного принцип тот же:
-39 - 10 * (-4) = -39 - (-40) = -39 + 40 = 1
На этом все, спасибо за внимание. До новых встреч.