Целочисленная арифметикадля Python программиста
типы данных
операции с целыми числами
сложности целочисленного деления отрицательных чисел
тип | значения | пример | |
Строковые | str | последовательность символов | ‘Луна16’ |
Дробные с плавающей точкой | float | десятичные дробные числа | 7.382 |
Целые | int | целые числа | 25 |
Тип данных — множество значений и операций над этими значениями
а так же способ размещения их в памяти
простые типы данных
Операции с данными типа целые числа
возвращают значения типа целые числа
возвращает целые числа,но если степень отрицательное, то дробные
A ** B — возведение в степень.
A + B — сложение;A - B — вычитание;A * B — умножение;
A / B — деление
возвращает дробное
A // B — целочисленное деление (отбрасывание дробной части)
возвращает целое
A % B — остаток от деления
возвращает целое
операции деления
Вещественное деление 17 / 3 5.6666
Целочисленное деление 17 // 3 5
Остаток от деления 17 % 3 2
>>> 20 // 3
6
>>> -20 // 3
-7
>>> 20 % 3
2
>>> -20 % 3
1
например:
ПОЧЕМУ?
сложности целочисленного деления отрицательных чисел -
13 3*4+1
13 // 3 4
13 % 3 1
в математике остаток всегда >= 0 (больше или равен нулю)
-13 3*(-5)+2
-13 // 3 -5
-13 % 3 2
при дробном результате округление идёт вниз и добавляется остаток
пробуем разобраться на координатной прямой
13 // 3 4
13 % 3 1
13 // 3 4
13 % 3 1
13 // 3 4
13 % 3 1
13 // 3 4
13 % 3 1
-13 // 3 4
13 % 3 1
-13 // 3 -5
13 % 3 1
-13 // 3 -5
-13 % 3 1
-13 // 3 -5
-13 % 3 2
13 3*4+1
-13 3*(-5)+2
в математике остаток всегда >= 0 (больше или равен нулю)
округление идёт вниз
пример для понимания
Предположим, трое ребят посетили квест теперь им надо отдать 10 тенге, т.е. -10 тенге.
Если каждый отдаст по три тенге, то они останутся должны ещё 1 тенге, что недопустимо
Поэтому -10 // 3 = -4, т. е. с каждого по 4 тенге и ещё два где-то остаётся
Список использованной литературы
Материалы на данной страницы взяты из открытых источников либо размещены пользователем в соответствии с договором-офертой сайта. Вы можете сообщить о нарушении.