(Python) Целочисленная арифметика


Целочисленное деление

Кроме обычной операции деления ("/"), результат которой в Python всегда является вещественным (имеет тип float), есть еще две операции деления, которые применяются над целыми числами и результат которых - целое число (тип int). 

Это операции:
  1. Целочисленное деление (//): Оператор целочисленного деления округляет результат до целого числа не большего результата (к ближайшему меньшему целому).
    Например,
    7 // 3 = 2, т.к. 7/3 = 2.333 - ближайшее целое число, не большее 2.3 - это число 2;
    -7 // 3 = -3, т.к. -7/3 = -2.333 - ближайшее целое число, не большее -2.3 - это число -3;

  2. Остаток от деления (%): Оператор остатка от деления возвращает остаток от деления одного числа на другое.
    Например,
    7 % 3 = 1 (7=3×2+1)
    -7 % 3 = 2 (−7=3×(−3)+2)

Операция вычисления остатка от деления в Python соответствует математическому определению остатка. Знак остатка всегда соответствует знаку делителя. 

Математически, остаток от деления двух целых чисел a и b определяется как число r, такое что a = b × q + r, где q - это целое число, а r - остаток, удовлетворяющий условию 0 ≤ r < |b|.

Эти операции могут быть полезны для различных задач, например, при проверке чисел на четность, распределении элементов по определенному количеству групп, или при работе со временем (вычисление времени в часах и минутах) и т. д..
 
Надо запомнить!
Операции целочисленного деления:
  1. // - деление нацело
  2. % - остаток от деления

Целочисленная арифметика

Операции целочисленного деления и вычисления остатка от деления имеют широкий спектр применения. Вот только несколько из них, которые могут вам пригодится в ближайшее время. 

1) Распределение элементов по определенному количеству групп.
Например, если у нас есть 10 кусочков шоколадки, и мы делим их на 3 друзей, то результат целочисленного деления будет 3. Это означает, что каждый друг получит по 3 целых кусочка шоколадки. А если вычислим 10 % 3 = 1, это будет означать, что 1 долька останется не разделенной.

2) Разбиение числа на цифры
Например, число 123 можно разбить на цифры следующим образом:
123 % 10 = 3 ( 3 - цифра единиц)
123 // 10 = 12
12 % 10 = 2 (2 - цифра десятков)
12 // 10 = 1 (1 - цифра сотен)

3) Модулярная арифметика
Это система арифметики, в которой числа "оборачиваются" по достижении определенного значения, называемого модулем. Она часто используется в различных областях, таких как криптография, компьютерные науки, теория чисел и даже в музыке.

Например, возьмем циферблат часов. 

На часах со стрелками циферблат разделён на 12 частей, которые мы обозначим числами 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11. В следующей таблице можно видеть, как время на аналоговом циферблате соответствует времени после полудня на экране цифровых часов.

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

Когда мы говорим, например, что сейчас 14:00, мы можем также сказать, что сейчас два часа дня (14 % 12 = 2). Тот же принцип применяется и в случае измерения углов. Угол в 370 градусов равен углу в 10 градусов, потому что от первого значения мы должны вычесть полный оборот в 360 градусов (или 370 % 360 = 10).

Другой пример, разбить 135 минут на часы и минуты. В одном часе 60 минут. Следовательно, если 135 поделить целочисленно на 60, то можно узнать сколько полных часов в 135 минутах (135 // 60 = 2 часа). Если вычислить остаток от деления, то можно узнать оставшиеся минуты в неполном часе (135 % 60 = 15 минут). То есть 135 минут - это 2 часа и 15 минут.

Пропустить Навигационные Ссылки.
Чтобы оставить комментарий нужна авторизация