Математические функции округления числа до двух ближайших целых чисел
В математике и информатике , то функция пола является функцией , которая принимает в качестве входного вещественного числа х , и дает в качестве вывода наибольшего целого числа меньше или равно х , обозначат этаж ( х ) или ⌊ х ⌋ . Точно так же функция потолка отображает x в наименьшее целое число, большее или равное x , обозначаемое ceil ( x ) или ⌈ x ⌉ .
Например, 2.4⌋ = 2 , ⌊ − 2.4⌋ = −3 , ⌈2.4⌉ = 3 и ⌈ − 2.4⌉ = −2 .
Неотъемлемая часть или целая часть от х , часто обозначается [ х ] , как правило , определяются как ⌊ х ⌋ , если х является неотрицательным, а ⌈ х ⌉ иначе. Например, [2,4] = 2 и [−2,4] = −2 . Операция усечения обобщает это до указанного числа цифр: усечение до нуля значащих цифр такое же, как и целая часть.
Некоторые авторы определяют целую часть как пол независимо от знака x , используя для этого различные обозначения.
Если n является целым числом, ⌊ n ⌋ = ⌈ n ⌉ = [ n ] = n .
Обозначение
Неотъемлемая часть или целая часть числа ( партии Специального entière в оригинале) была впервые определена в 1798 годом Лежандра в своем доказательстве формулы Лежандра .
Карл Фридрих Гаусс ввел обозначение квадратных скобок в своем третьем доказательстве квадратичной взаимности (1808). Это оставалось стандартом в математике до тех пор, пока Кеннет И. Айверсон в своей книге «Язык программирования» 1962 года не ввел названия «пол» и «потолок» и соответствующие обозначения и . Оба обозначения теперь используются в математике, хотя в этой статье мы будем следовать обозначениям Айверсона.
В некоторых источниках полужирный шрифт или двойные скобки используются для обозначения пола, а перевернутые скобки или] x [для потолка. Иногда используется для обозначения функции округления до нуля.
Дробная часть является функцией пилообразной , обозначается для реального х и определяется по формуле
Для всех х ,
Примеры
Икс
|
Пол
|
Потолок
|
Дробная часть
|
2
|
2
|
2
|
0
|
2,4
|
2
|
3
|
0,4
|
2,9
|
2
|
3
|
0,9
|
−2,7
|
−3
|
−2
|
0,3
|
−2
|
−2
|
−2
|
0
|
Верстка
Функции пола и потолка обычно набираются с помощью левой и правой квадратных скобок, где отсутствуют верхние (для функции пола) или нижние (для функции потолка) горизонтальные полосы ( для пола и потолка). Эти символы представлены в Юникоде:
-
U + 2308 ⌈ ЛЕВЫЙ ПОТОЛОК (HTML
⌈
· ⌈, ⌈
)
-
U + 2309 ⌉ ПОТОЛОК ПРАВЫЙ (HTML
⌉
· ⌉, ⌉
)
-
U + 230A ⌊ ЛЕВЫЙ ЭТАЖ (HTML
⌊
· ⌊, ⌊
)
-
U + 230B ⌋ ПРАВЫЙ ЭТАЖ (HTML
⌋
· ⌋, ⌋
)
В Латекс системе наборной, эти символы могут быть определены с \lfloor, \rfloor, \lceil
и \rceil
команд в математическом режиме, и расширены по размеру с использованием \left\lfloor, \right\rfloor, \left\lceil
и по \right\rceil
мере необходимости.
Определение и свойства
Учитывая действительные числа x и y , целые числа k , m , n и набор целых чисел , пол и потолок могут быть определены уравнениями
Поскольку в полуоткрытом интервале длины один находится ровно одно целое число , для любого действительного числа x существуют уникальные целые числа m и n, удовлетворяющие уравнению
где и может также использоваться как определение пола и потолка.
Эквивалентности
Эти формулы можно использовать для упрощения выражений, связанных с полом и потолком.
На языке теории порядка нижняя функция - это остаточное отображение , то есть часть связности Галуа : это верхнее сопряжение функции, которая вкладывает целые числа в действительные числа.
Эти формулы показывают, как добавление целых чисел к аргументам влияет на функции:
Вышеупомянутое никогда не бывает верным, если n не является целым числом; однако для любых x и y выполняются следующие неравенства:
Отношения между функциями
Из определений ясно, что
-
с равенством тогда и только тогда, когда x является целым числом, т. е.
Фактически, для целых n функции пола и потолка идентичны :
Отрицание аргумента меняет пол и потолок и меняет знак:
а также:
Отрицание аргумента дополняет дробную часть:
Функции пола, потолка и дробной части идемпотентны :
Результатом вложенных функций пола или потолка является самая внутренняя функция:
из-за свойства идентичности для целых чисел.
Коэффициенты
Если m и n - целые числа и n 0,
Если n - целое положительное число
Если m положительно
При m = 2 из этого следует
В более общем смысле, для положительного m (см . Личность Эрмита )
Следующее можно использовать для преобразования полов в потолки и наоборот ( m положительное)
Для всех m и n строго положительных целых чисел:
которая при положительных и взаимно простых m и n сводится к
Поскольку правая часть общего случая симметрична по m и n , отсюда следует, что
В более общем смысле, если m и n положительны,
Иногда это называют законом взаимности .
Вложенные подразделения
Для положительного целого числа n и произвольных действительных чисел m , x :
Продолжение и расширение серий
Ни одна из функций , описанных в этой статье , не являются непрерывными , но все они кусочно - линейными : функции , и имеют разрывы в целых числах.
является полунепрерывно сверху и и ниже полунепрерывными.
Поскольку ни одна из функций, обсуждаемых в этой статье, не является непрерывной, ни одна из них не имеет разложения в степенной ряд . Поскольку пол и потолок не периодичны, они не имеют равномерно сходящихся разложений в ряд Фурье . Функция дробной части имеет разложение в ряд Фурье
для x не целое число.
В точках разрыва ряд Фурье сходится к значению, которое является средним его пределов слева и справа, в отличие от функций пола, потолка и дробной части: для фиксированного y и кратного x y данный ряд Фурье сходится к y / 2, а не к x mod y = 0. В точках непрерывности ряд сходится к истинному значению.
Используя формулу floor (x) = x - {x}, получаем
для x не целое число.
Приложения
Оператор мода
Для целого х и положительного целого числа у , в операции по модулю , обозначенном х мод у , дает значение остатка , когда х делится на у . Это определение может быть расширено до вещественных x и y , y 0, по формуле
Тогда из определения функции пола следует, что эта расширенная операция удовлетворяет многим естественным свойствам. Примечательно, что x mod y всегда находится между 0 и y , т. Е.
если y положительно,
и если y отрицательно,
Квадратичная взаимность
Третье доказательство квадратичной взаимности Гаусса , модифицированное Эйзенштейном, состоит из двух основных шагов.
Пусть p и q - различные положительные нечетные простые числа, и пусть
-
Во-первых, лемма Гаусса используется, чтобы показать, что символы Лежандра задаются формулами
а также
Второй шаг - использовать геометрический аргумент, чтобы показать, что
Объединение этих формул дает квадратичную взаимность в виде
Существуют формулы, которые используют floor для выражения квадратичного характера малых чисел по модулю нечетных простых чисел p :
Округление
Для произвольного действительного числа , округление до ближайшего целого числа с галстуком преломлением к положительной бесконечности задаются ; округление в сторону отрицательной бесконечности дается как .
Если разрыв связи отличается от 0, тогда функция округления равна , и округление в сторону четности может быть выражено с помощью более громоздкого выражения, которое является приведенным выше выражением для округления в сторону положительной бесконечности за вычетом показателя целостности для .
Количество цифр
Количество цифр в базе b положительного целого числа k равно
Факторы факториалов
Пусть n - натуральное число, а p - положительное простое число. Показатель наибольшей степени числа p , делящего n ! дается версией формулы Лежандра
где это способ записи n в базе p . Это конечная сумма, поскольку этажи равны нулю при p k > n .
Битти последовательность
Последовательность Битти показывает, как каждое положительное иррациональное число приводит к разделению натуральных чисел на две последовательности с помощью функции пола.
Постоянная Эйлера (γ)
Существуют формулы для постоянной Эйлера γ = 0,57721 56649 ..., которые включают пол и потолок, например
а также
Дзета-функция Римана (ζ)
Функция дробной части также появляется в интегральных представлениях дзета-функции Римана . Несложно доказать (используя интегрирование по частям), что если - любая функция с непрерывной производной на отрезке [ a , b ],
Сдача в реальной части в ы больше 1 и позволяя и Ь целые числа, и позволяя б к бесконечности дает
Эта формула действительна для всех s с действительной частью больше -1 (кроме s = 1, где есть полюс) и в сочетании с разложением Фурье для { x } может использоваться для расширения дзета-функции на всю комплексную плоскость. и доказать его функциональное уравнение.
При s = σ + it в критической полосе 0 < σ <1,
В 1947 году ван дер Поль использовал это представление для создания аналогового компьютера для поиска корней дзета-функции.
Формулы для простых чисел
Функция пола появляется в нескольких формулах, характеризующих простые числа. Например, поскольку равно 1, если m делит n , и 0 в противном случае, следует, что положительное целое число n является простым тогда и только тогда, когда
Можно также дать формулы для получения простых чисел. Например, пусть p n будет n -м простым числом, и для любого целого числа r > 1 определите действительное число α суммой
потом
Аналогичный результат состоит в том, что существует число θ = 1,3064 ... ( постоянная Миллса ) со свойством, что
все простые.
Также существует число ω = 1,9287800 ... со свойством, что
все простые.
Пусть π ( x ) будет количеством простых чисел, меньших или равных x . Это прямой вывод из теоремы Вильсона, что
Также, если n ≥ 2,
Ни одна из формул в этом разделе не имеет практического применения.
Решенные проблемы
Рамануджан представил эти задачи в Журнал Индийского математического общества .
Если n - натуральное число, докажите, что
-
-
-
Нерешенная проблема
Изучение проблемы Варинга привело к нерешенной проблеме:
Существуют ли такие натуральные числа k ≥ 6, что
-
?
Малер доказал, что таких k может быть только конечное число ; никто не известен.
Компьютерные реализации
Функция Int из преобразования с плавающей запятой в
C
В большинстве языков программирования простейший метод преобразования числа с плавающей запятой в целое - это не пол или потолок, а усечение . Причина этого историческая, поскольку первые машины использовали дополнение до единиц, а усечение было проще реализовать (пол проще в дополнении до двух ). FORTRAN был определен так, чтобы требовать такого поведения, и поэтому почти все процессоры реализуют преобразование таким образом. Некоторые считают это неудачным историческим дизайнерским решением, которое привело к ошибкам при обработке отрицательных смещений и графики на отрицательной стороне источника.
Побитового сдвига вправо на целое число со стороны такой же , как . Деление на степень 2 часто записывается как сдвиг вправо, но не для оптимизации, как можно было бы предположить, а потому, что требуется минимум отрицательных результатов. Если предположить, что такие сдвиги являются «преждевременной оптимизацией», и замена их разделением может привести к поломке программного обеспечения.
Многие языки программирования (включая C , C ++ , C # , Java , PHP , R и Python ) предоставляют стандартные функции для пола и потолка, обычно называемые floor
и ceil
, или реже ceiling
. Язык, который APL использует ⌊x
для обозначения пола. Язык программирования J , продолжение APL, предназначенный для использования стандартных символов клавиатуры, используется <.
для пола и >.
потолка.
АЛГОЛ использует entier
для пола.
Программное обеспечение для работы с электронными таблицами
Большинство программ для работы с электронными таблицами поддерживают те или иные ceiling
функции. Хотя детали в разных программах различаются, большинство реализаций поддерживают второй параметр - кратное, до которого необходимо округлить данное число. Например, ceiling(2, 3)
округление 2 до ближайшего кратного 3 дает 3. Однако определение того, что означает «округление», различается от программы к программе.
В Microsoft Excel использовалась почти полная противоположность стандартной нотации: INT
для пола, что FLOOR
означает «округление к нулю» и « CEILING
округление от нуля». Это продолжилось до формата файла Office Open XML . Excel 2010 теперь следует стандартному определению.
Формат файла OpenDocument , используемый OpenOffice.org , Libreoffice и другими, следует математическому определению потолка для своей ceiling
функции с дополнительным параметром для совместимости с Excel. Например, CEILING(-4.5)
возвращает −4.
Смотрите также
Заметки
Рекомендации
-
JWS Cassels (1957), Введение в диофантово приближение , Cambridge Tracts in Mathematics and Mathematical Physics, 45 , Cambridge University Press
-
Крэндалл, Ричард; Померанс, Карл (2001), Простые числа: вычислительная перспектива , Нью-Йорк: Springer , ISBN 0-387-94777-9
-
Грэм, Рональд Л .; Knuth, Donald E .; Паташник, Орен (1994), Concrete Mathematics , Reading Ma .: Addison-Wesley, ISBN 0-201-55802-5
-
Харди, GH; Райт, EM (1980), Введение в теорию чисел (пятое издание) , Oxford: Oxford University Press , ISBN 978-0-19-853171-5
- Николас Дж. Хайэм, Справочник по математическим наукам , SIAM. ISBN 0-89871-420-6 , стр. 25
-
ИСО / МЭК . ISO / IEC 9899 :: 1999 (E): Языки программирования - C (2-е изд.), 1999; Раздел 6.3.1.4, с. 43.
-
Айверсон, Кеннет Э. (1962), язык программирования , Wiley
-
Леммермейер, Франц (2000), Законы взаимности: от Эйлера до Эйзенштейна , Берлин: Springer , ISBN 3-540-66957-4
-
Рамануджан, Шриниваса (2000), Сборник статей , Providence RI: AMS / Chelsea, ISBN 978-0-8218-2076-6
-
Рибенбойм, Пауло (1996), Новая книга рекордов простых чисел , Нью-Йорк: Springer, ISBN 0-387-94457-5
- Майкл Салливан. Precalculus , 8-е издание, стр. 86
-
Титчмарш, Эдвард Чарльз; Хит-Браун, Дэвид Родни («Роджер») (1986), Теория дзета-функции Римана (2-е изд.), Оксфорд: Oxford UP, ISBN 0-19-853369-1
Внешние ссылки
-
«Этажная функция» , Математическая энциклопедия , EMS Press , 2001 [1994]
- Штефан Порубски, «Целочисленные функции округления» , Интерактивный информационный портал по алгоритмической математике , Институт компьютерных наук Чешской академии наук, Прага, Чешская Республика, дата обращения 24 октября 2008 г.
- Вайсштейн, Эрик В. «Функция пола» . MathWorld .
- Вайсштейн, Эрик В. "Функция потолка" . MathWorld .