Библиотека math
floor, ceil, random и другие функции.
«Библиотека math» — бесплатный урок Lua Academy на CoddyKit. Это урок 3 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Lua Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Lua Academy содержит 4 уроков всего.
Знакомство с библиотекой math
Lua поставляется со встроенной библиотекой math, полной полезных функций и констант для работы с числами.
Вызывайте её функции с префиксом math., например math.sqrt(9). Настройка или импорт не требуются.
print(math.sqrt(9))Абсолютное значение
math.abs() возвращает абсолютное значение числа, убирая знак минус.
Так, math.abs(-5) даёт 5, и math.abs(5) также даёт 5.
print(math.abs(-5))
print(math.abs(3))Округление вниз и вверх
Используйте math.floor(), чтобы округлить вниз до ближайшего целого числа, а math.ceil() — чтобы округлить вверх.
math.floor(3.7)— это3math.ceil(3.2)— это4
print(math.floor(3.7))
print(math.ceil(3.2))Максимум и минимум
math.max() возвращает наибольшее из своих аргументов, а math.min() — наименьшее.
Можно передать любое количество чисел.
print(math.max(3, 9, 1))
print(math.min(3, 9, 1))Квадратный корень
math.sqrt() вычисляет квадратный корень числа. Результат — число с плавающей запятой.
Для вычисления корней других степеней используйте оператор ^, например 27 ^ (1/3) для кубического корня.
print(math.sqrt(16))
print(math.sqrt(2))Степени
Возводить числа в степень можно с помощью оператора ^ — это обычный способ в современных версиях Lua.
Например, 2 ^ 10 даёт 1024.0. Результатом всегда будет число с плавающей запятой.
print(2 ^ 10)
print(5 ^ 2)Константа π
Библиотека предоставляет константу math.pi — значение числа π (примерно 3.14159).
Она полезна для вычислений, связанных с окружностями и тригонометрией, например для нахождения площади круга.
local r = 2
print(math.pi * r ^ 2)Бесконечность и huge
math.huge представляет положительную бесконечность — максимально возможное значение числа с плавающей запятой.
Его часто используют как начальное значение при поиске минимума, поскольку любое действительное число меньше него.
print(math.huge)
print(-math.huge)Случайные числа
math.random() возвращает случайное число. Без аргументов функция выдаёт число с плавающей запятой от 0 до 1.
С одним целочисленным аргументом n она возвращает целое число от 1 до n. С двумя аргументами она возвращает значение из указанного диапазона.
print(math.random(1, 6))Инициализация генератора случайных чисел
Используйте math.randomseed(), чтобы задать начальную точку для генератора случайных чисел. Инициализация с использованием текущего времени даёт разные последовательности при каждом запуске.
В Lua 5.4 генератор инициализируется автоматически, но явная инициализация позволяет получать воспроизводимые результаты, когда это необходимо.
math.randomseed(42)
print(math.random(1, 100))Тригонометрия
Библиотека включает тригонометрические функции, такие как math.sin(), math.cos() и math.tan(). Они принимают углы в радианах, а не в градусах.
Для преобразования умножьте количество градусов на math.pi / 180.
print(math.sin(math.pi / 2))
print(math.cos(0))Проверка знаний
Проверьте свои знания о математической библиотеке.
Итоги
Вы изучили библиотеку math: abs, floor, ceil, max, min, sqrt и тригонометрические функции.
Вы также познакомились с константами math.pi и math.huge, а также с math.random и math.randomseed для работы со случайными числами.
Далее вы узнаете, как форматировать числа для аккуратного вывода.
Часто задаваемые вопросы
Урок «Библиотека math» бесплатный?
Да — полный текст урока «Библиотека math» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Lua Academy, подпишись на CoddyKit PRO. Курс Lua Academy содержит 4 уроков всего.
Чему я научусь в уроке «Библиотека math»?
floor, ceil, random и другие функции. Ты практикуешь Lua Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать Lua Academy?
Предыдущий опыт не требуется. Lua Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 3 из 4.
Сколько времени занимает урок «Библиотека math»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке Lua Academy?
Да. Каждый урок Lua Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.