Базовые арифметические операции с целыми числами
В Idyllium сложение, вычитание и умножение целых чисел работают предсказуемо и возвращают целый результат, который можно сразу сохранить в переменную типа int:
Если бы мы захотели вывести эти значения, результат выглядел бы так:
Все три операции — +, -, * — безопасны для целых чисел: они никогда не создают дробную часть, поэтому их результат всегда совместим с типом int.
Деление — особый случай
В Idyllium оператор / всегда возвращает float, даже если делятся два целых числа:
Важное правило: если в результате математической операции теоретически может получиться дробное число — результат будет иметь тип float.
Это означает, что даже в случае 10 / 5 (где результат — целое число 2) Idyllium всё равно вернёт 2.0 типа float. Так сделано ради единообразия: программа не пытается угадать, будет ли результат целым — она всегда возвращает дробное число при делении.
Операции между целыми и дробными числами
Если в арифметической операции участвует хотя бы одно дробное число, результат всегда будет float:
Обратите внимание: даже в последнем случае (10 / 2.5 = 4) результат — целое число, но его тип всё равно float (выводится как 4, но хранится как 4.0). Это позволяет избежать неожиданных ошибок при последующих вычислениях.
Целочисленное деление: функция div
Если вам нужно именно целое частное от деления, используйте функцию div(a, b):
Функция div отбрасывает дробную часть результата и возвращает только целую часть частного. Поскольку результат всегда целый, его можно безопасно сохранить в переменную типа int.
Остаток от деления: функция mod
Чтобы получить остаток от деления, используйте функцию mod(a, b):
Функция mod возвращает то, что «осталось» после деления. Это особенно полезно для задач вроде определения чётности (mod(x, 2) == 0) или циклических вычислений.
Обе функции — div и mod — работают только с целыми числами и возвращают int, что делает их идеальными для задач, где дробные результаты не нужны.