Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Документация, учебники по Perl.doc
Скачиваний:
3
Добавлен:
29.10.2018
Размер:
1.83 Mб
Скачать

Унарные арифметические операторы.

Унарные арифметические операторы оказывают действие на один операнд. Они используются изменения знака переменной, а также для инкремента значения переменной или же его декремента. Под инкрементом подразумевается увеличение значения на единицу. В свою очередь, декремент - это уменьшение значения на единицу. Изменение знака операнда +op1 позитивный операнд -op1 негативный операнд Изменение значения операнда перед использованием ++op1 преинкремент операнда на единицу --op1 предекремент операнда на единицу Изменение значения операнда после его использования op1++ пост инкремент операнда на единицу op1-постдекремент операнда на единицу

Арифметические операторы начинают казаться сложными, когда вы переходите к изучению унарных операторов. Представьте себе задачку: "К пяти частям шоколадки прибавить две отрицательные части…". Прибавление отрицательных чисел, возможно, вам покажется несколько странным. Но поверьте, - это не так. Я почти уверен, что вы не станете использовать в математике нечто наподобие: "34+-2". Но в то же время вы могли бы написать "34+$var", где переменная $var является отрицательным числом.

Использование унарного оператора "+" является по сути бесполезным, и Perl его проигнорирует. С другой стороны, унарный оператор "-" всегда изменяет знак числа на "плюс" или на "минус". Например, если у вас есть переменная $var, значение которой равно 34, и вы применяете к ней унарный оператор "-" (например, "print -$var;"), то ее значение будет равно -34.

Операторы "++" и "--" в Perl работают точно также, как и в Си. Оператор "++" увеличивает значение операнда на единицу, в свою очередь оператор "--" уменьшает. Существует два способа использования данных операторов: префиксный (++$var) и постфиксный ($var++). В первом случае значение переменной изменяется до ее использования, во втором - после. Пример: #!/usr/bin/perl $var=5; print ++$var; #выведет на экран 6 print $var++; #выведет на экран 5, а за тем увеличит значение $var

Логические операторы

Логические операторы обычно используются для управления ходом выполнения программы. Чаще всего вы обнаружите их в качестве части операторов "if", "while" или других операторов управления. Операторы управления мы обсудим позднее в главе 7 "Операторы управления".

Логические операторы в Perl очень похожи на своих собратьев из Си: op1 && op2 Логическое "И" op1 || op2 Логическое "ИЛИ" !op1 Логическое "НЕ" (отрицание)

Роль логических операторов достаточно проста. Они позволяют программе принимать решение, основываясь на нескольких условиях. Каждый операнд рассматривается, как условие, которое может выполняться, а может и нет, - то есть быть "истинным" или "ложным".

Пример оператора логического "и" - (&&)

Данный оператор предназначен для выяснения, оба ли операнда являются истинными.

Op1 0 1 0 1

Op2 0 0 1 1

Op1&&Op2 0 0 0 1

 

Вот участок программы, в котором проверяется, равна ли переменная $firstVar 10, а переменная secondVar 9. И только в том случае, когда оба этих условия соблюдаются, на экран выводится сообщение "Error!". if ($firstVar == 10 && $secondVar == 9) { print("Error!"); }; Если же хотя бы одно из этих условий не соблюдается, то ничего не происходит.