
Шаг 4. Работа с числами
Баллов за прохождение: 1
Стандартные арифметические операции
К стандартным арифметическим операциям относятся:
Операция | Оператор |
---|---|
Сложение | + |
Вычитание | - |
Умножение | * |
Возведение в степень | ** |
Деление | / |
Деление без остатка | // |
Деление по остатку | % |
Все операции до боли знакомы, кроме два последних вида деления.
Деление без остатка
Очень простая операция. Если при обычном делении мы получаем целое число и остаток, то при делении без остатка мы просто в любом случае получаем целое число:
print(23 // 7)
# Ответ: 3
Деление по остатку
Здесь немного сложнее для понимания. Стоит вспомнить деление столбиком, как учили в начальной школе. При делении числа, например 23 на 7, остаётся остаток 2. То есть 21 поделилось, и между 21 и 23 остаток 2:
print(23 % 7)
# Вывод: 2
print(19 % 4)
# Вывод: 3
print(8 % 2)
# Вывод: 0 (остатка нет)
print(9 % 2)
# Вывод: 1
Как мы можем заметить, при делении по остатку на 2 мы можем определять чётность числа. Если число чётное - остаток 0, в ином случае 1. Если мы добавим оператор сравнения (==) то сможем получить ответ True или False:
print(12 % 2 == 0)
# Вывод: True
print(13 % 2 == 0)
# Вывод: False
Однако, не всегда математические операции могут быть в рамках только этих операторов.
Модуль math
Тогда на помощь приходит встроенный в Python модуль math. Он включает в себя все самые необходимые и почти все возможные математические константы, формулы и функции.
Для того, чтобы им воспользоваться, нужно его импортировать. Я советую импортировать сразу нужную функцию:
from math import sqrt
print(sqrt(9))
Функция sqrt() - квадратный корень. Передав в функцию 9, получим результат 3, т.к 9 из под квадратного корня = 3.
Ещё один пример с логарифмом:
import math
print(math.log(10, 10))
Здесь была импортирована не сама функция, а весь модуль. Далее при обращении к модулю мы воспользовались его методом (функцией) log передав туда логарифм 10 с основанием 10. Получим результат 1.
Список основных методов:
Метод | Пояснение |
---|---|
math.ceil(x) | округление до ближайшего большего числа |
math.floor(x) | округление до ближайшего меньшего числа |
math.factorial(n) | факториал числа n |
math.log(x, [, base]) | логарифм х по основанию base |
math.log10(x) | ln или логарифм по основанию 10 |
math.sqrt(x) | квадратный корень из x |
math.cos(x) (sin, tan) | косинус/синус/тангенс x, в радианах! |
math.acos(x) (asin, atan) | арккосинус/арксинус/арктангенс x, в радианах! |
math.pi | константа pi=3,14... |
math.e | константа e=2.71... |
С другими методами вы можете ознакомиться в официальной документации:
https://docs.python.org/3/library/math.html