Слайд 1
🔢 Работа с целыми числами (дополнительные операции)
Аннотация: Урок посвящён дополнительным операциям при работе с целыми числами. Мы изучим возведение в степень, деление с остатком и целочисленное деление, а также разберём порядок приоритетов и обработку цифр числа.
➕ Дополнительные операции
Ранее мы изучили 4 базовые операции: +, -, * и /.
Добавим к ним ещё три, и этого набора будет достаточно для решения 99% задач на практике.
| Оператор | Описание |
|---|---|
** | Возведение в степень |
% | Остаток от деления |
// | Целочисленное деление |
💥 Возведение в степень (**)
print(2 ** 0)
print(2 ** 1)
print(2 ** 2)
print(2 ** 3)
print(2 ** (-1))
Вывод:
1
2
4
8
0.5
Оператор ** может возводить числа не только в положительные, но и в отрицательные степени.
Основание степени также может быть отрицательным:
print(2 ** (-2))
print((-3) ** 3)
Вывод:
0.25
-27
**, а не ^ (в отличие от других языков).
Оператор ** является правоассоциативным, т.е. выражение x ** y ** z вычисляется как x ** (y ** z).
print(2 ** 2 ** 3) # 2 ** (2 ** 3) = 2 ** 8
Вывод:
256
➗ Целочисленное деление (//)
Для положительных чисел оператор // ведёт себя как обычное деление,
но отбрасывает дробную часть результата.
print(10 // 3)
print(10 // 4)
print(10 // 5)
print(10 // 6)
print(10 // 12)
Вывод:
3
2
2
1
0
При делении отрицательных чисел результат округляется всегда в меньшую сторону (в сторону минус бесконечности):
print(10 // 3)
print(-10 // 3)
Вывод:
3
-4
// всегда округляет вниз, даже если частное отрицательное.
🔹 Деление с остатком (%)
Оператор % возвращает остаток от деления двух чисел.
print(10 % 3)
print(10 % 4)
print(10 % 5)
print(10 % 6)
print(10 % 12)
print(10 % 20)
Вывод:
1
2
0
4
10
10
n может быть только от 0 до n-1.
Например:
- при делении на 2 возможны остатки
0или1 - при делении на 3 —
0,1,2
📘 Примечания
- 1. Число делится на
nнацело тогда и только тогда, когдачисло % n == 0. - 2. Приоритет арифметических операторов в Python (от высокого к низкому):
- 3. Все операторы
*,/,//и%имеют одинаковый приоритет. - 4. Если
0 < n < m, то:n % m == n n // m == 0Пример:
print(5 % 9) print(3 % 13) print(5 // 9) print(3 // 13)Вывод:
5 3 0 0 - 5. Подробнее об этих операциях можно почитать в теме модулярной арифметики.
| Оператор | Описание |
|---|---|
() | Скобки |
** | Возведение в степень |
- (унарный) | Отрицание числа |
*, /, //, % | Умножение, деление, целочисленное деление, остаток |
+, - | Сложение и вычитание |