Быстрая функция / оператор для получения величины | x |переменной - PullRequest
1 голос
/ 28 февраля 2012

Есть ли в Perl оператор или даже функция в каком-то модуле, который получит величину числа, аналогичную той, что обозначается математической записью | x |.

, например

x = 42, y = -42
|x| = |y| = 42

Если его нет, какой самый простой способ извлечь такую ​​величину? Я могу вспомнить два, которые я использовал раньше:

$x = -42;

# quick regex for whole integers, can be extended to take decimals into account
$y = $x =~ /(\d+)/; 

# Using if statements
$y = $x*-1 if $x < 0;

Мне бы пришлось создать новую функцию для использования любого из этих примеров, если бы я хотел получить величину, не добавляя дополнительные строки в мой код (мне нужно получать эти величины довольно часто). Я обеспокоен тем, что мог упустить что-то еще проще.

1 Ответ

3 голосов
/ 28 февраля 2012

Для этого есть функция abs.

 $ perl -e 'print abs(-42), "\n";'
42
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...