Модуль:Math/doc

Материал из Тептар — свободной энциклопедии
Перейти к навигации Перейти к поиску

Это страница документации Модуль:Math.

Этот модуль содержит некоторые основные математические функции.

Вызываемые функции[править код]

random[править код]

{{#invoke:math|random}}
{{#invoke:math|random|A}}
{{#invoke:math|random|A|B}}

Интерфейс к функции math.random() стандартной библиотеки Lua. Выдаёт число из полуинтервала [0,1) или интервалов [0,A] или [A,B], смотря сколько параметров задано.

max[править код]

min[править код]

Максимальный и минимальный из нумерованных параметров #invoke, а при их отсутствии — вызывающего шаблона.

round[править код]

Округляет первый параметр или value до количества знаков второго или precision, 0.5 последнего разряда округляется до 1, меньшие числа — до 0.

order[править код]

{{#invoke:math|order|A}}

Порядок (округлённый вниз десятичный логарифм модуля или 0 для 0) числа, заданного аргументом 1 или x.

precision[править код]

Точность числа (младший значащий разряд). С параметром check_fraction, заданным и не равным пустой строке, 0, false или no, понимает простые дроби и возвращает десятичный логарифм делителя.

precision_format[править код]

Аргументы как в предыдущей. Форматирует число согласно текущему языку страницы (в русской Википедии это русский), использует типографский минус «−» и нотацию «·10x».

Roman[править код]

Римские цифры для целых чисел от 1 до 4999999.

Russian[править код]

Выводит заданное число прописью (словами) на русском языке. Не преобразовывает нецелые числа.

Примеры вызовов

{{#invoke:Math|Russian|1,5}} Ошибка Lua в Модуль:Math на строке 436: attempt to compare nil with number.

{{#invoke:Math|Russian|1.5}} Ошибка Lua в Модуль:Math на строке 469: attempt to concatenate field '?' (a nil value).

{{#invoke:Math|Russian|987654321}} девятьсот восемьдесят семь миллионов шестьсот пятьдесят четыре тысячи триста двадцать один

Экспортируемые функции[править код]

_cleanNumber(frame,x)[править код]

Первый параметр — требуемый фрейм, второй — число в строке. Возвращает два значения: первое — число, полученное применением функции tonumber(), а при её неуспехе — {{#expr}} к аргументу x; второй — подрезанная от пробелов исходная строка. Используется внутри модуля для всех принимаемых числовых параметров.

_order(n)[править код]

Порядок числа n.

_precision(x)[править код]

Точность числа, записанного в строке x (десятичная дробь, возможен экспоненциальный вид через [eE]).

_round(value, precision)[править код]

Округление по границе 0,5, аргументы — числа.