Как в Perl округлить число до ближайшего целого в большую сторону

Задача. В Perl программе есть переменная в которой находится число. Необходимо округлить его до ближайшего целого в большую сторону.

Вот несколько примеров значений. Все эти числа должны превратиться в число 11:

  • 10.001
  • 10.4
  • 10.5
  • 10.99
  • 11

Решение — использовать функцию ceil

Самый лучший способ решить эту задачу — это использовать функцию ceil из библиотеки POSIX.

Библиотека POSIX идет вместе с Perl, так что если у вас есть Perl, то эта библиотека сразу доступна, дополнительно устанавливать ничего не нужно.

Вот пример программы:

▶ Run
#!/usr/bin/perl

use POSIX;

my $number = 10.3;

print ceil($number);

Программа выведет на экран число 11.

  • use POSIX; — подключили библиотеку POSIX. Как только мы подключили эту библиотеку нам сразу стало доступно несколько функций, которые определены в этой библиотеке.
  • my $number = 10.3; — создали переменную $number и поместили туда число 10.3.
  • print ceil($number); — Использовали функцию ceil и вывели на экран результат ее работы.

Функция ceil (с английского языка это слово переводится как "потолок") достаточно стандартна. Во многих языках программирования есть функция с таким же названием и которая работает точно так же.

Кроме функции ceil еще есть функция floor ("пол"), которая округляет число до ближайшего целого в меньшую сторону. Т.е. в случае неотрицательных чисел просто отрезает всю дробную часть.

Работа в случае отрицательных чисел

Функция ceil для отрицательных чисел работает точно так же как для положительных чисел — округляет число до ближайшего целого в большую сторону.

В случае отрицательных чисел это означает что функция просто отрежет всю дробную часть.

Все эти числа при использовании функции ceil превратятся в число -5:

  • -5
  • -5.1
  • -5.5
  • -5.9

Связанные темы

Другие статьи

Комментарии