Курс языка программирования Raku / Основы / Основы переменных и типов данных / Числа
Операции с числами
Безусловно вы уже знакомы с некоторыми операциями, которые можно совершать с числами в Raku. Отметим, что символ операции называется оператором. Объекты, над которыми совершается операция, называются операндами.
Арифметика
Оператор | Операция +
| Сложение - | Вычитание * | Умножение
/ | Деление
Так как Raku очень хорошо поддерживает Юникод, некоторые операторы имеют эквивалент в Юникоде:
× | Умножение ÷ | Деление
Используйте скобки, чтобы изменить порядок выполнения:
say 3 * 4 + 5; # 17
say 3 * (4 + 5); # 27Остаток от деления
Оператор остатка от деления — это %, как и во многих
других языках.
% | Остаток от деления
Он возвращает остаток от целочисленного деления двух чисел, например
10 % 3 равно 1. Отметим, что
-10 % 3 равно 2 так как результат операции
определен как разница между первым числом и округленным вниз частным,
умноженным на второе число. Другими словами, $a % $b
эквивалентно $a - $b * floor($a / $b).
Делимость
Raku добавляет полезный оператор, чтобы проверить, если число делится на другое число.
%% | Делимость
Это инфиксный оператор, которому требуется два операнда:
10 %% 3. Если первый операнд кратен второму операнду, то
результат будет булевым значением True. Иначе —
False.
Целочисленные операции
Есть несколько специальных операций, которые возвращают целые числа. Их операторы являются словами, а не символами.
div | Целочисленное деление mod |
Целочисленный остаток от деления
Оператор div округляет результат к низу, поэтому
10 div 3 равно 3 и -10 div 3
равно -4.
Степень
Есть два варианта возведения x в степень y. В
первом варианте используется оператор **:
say 3 ** 4; # 81Во втором используется верхний индекс, например:
say 3⁴; # 81В верхний регистр возможно поместить больше одной цифры, чтобы получить степень больше девяти. Например:
say 2¹⁵; # 32768Также не составляет проблем и отрицательная степень:
say 2 ** (-2); ## 0.25
say 2⁻²; # 0.25Отметим, что результат последний двух выражений является числом типа
Rat.
Операции с присвоением
Все операции поддерживают сокращенный синтаксис для обновления
переменной. Давайте продемонстрируем это на примере +.
Полная форма
$a = $a + $b;эквивалентна
$a += $b;Навигация по курсу
← Числа с плавающей точкой | Распределение яблок →
💪 Или перейдите сразу к упражнениям этого
раздела.