Песочница

Числовые процедуры

Числовые процедуры охватывают точную арифметику, смешанные операции с конечными вещественными числами, сравнение, целочисленное деление, округление, gcd/lcm, целую степень и целый квадратный корень.

Проверьте запуском

LISPEX
(call-with-values (lambda () (exact-integer-sqrt 20)) list)

Наблюдаемый результат

OUTPUT
(4 4)

Как рассуждать

  • + - * / вариативны по контракту; сравнения требуют минимум два аргумента; целочисленные операции отвергают нецелые.
  • floor/ и truncate/ возвращают частное и остаток двумя значениями.
  • expt принимает точный целый показатель; exact-integer-sqrt возвращает корень и остаток.

Числовые сигнатуры

СигнатураРезультатГраница ошибки
(+ number ...) / (* number ...)число; точное без неточных операндовE312 тип; E314 не конечное
(/ number number ...)точное рациональное или конечное вещественноеE313 нулевой делитель; E314 не конечное
(floor/ integer integer)два значения: частное, остатокE312 нецелое; E313 нулевой делитель
(expt number exact-integer)число с точностью основанияE313 точный ноль в отрицательной степени; E314 непредставимо
(exact-integer-sqrt точное неотрицательное целое)два точных значения: корень, остатокE312 домен

Частая ошибка

Общие трансцендентные функции и не конечные значения отсутствуют.

Куда дальше

Держите эту страницу рядом при написании кода. За последовательным объяснением вернитесь к карте синтаксиса или соответствующей главе.

Синтаксис одним взглядом · Путь обучения