Язык программирования Perl | страница 29
Как известно, условные предложения определяют выполнение тех или иных действий в программе в зависимости от проверки заданного условия. В Perl условная конструкция (или оператор if), проверяющая истинность одного условия, в самом простом виде записывается так:
>
if (условие) { # проверка истинности условия
# действия, выполняемые,
# если условие истинно
}
# продолжение программы
Обратите внимание, что после условного выражения, обязательно заключенного в круглые скобки, непременно должен стоять блок. Например, так можно вывести на печать значение переменной при условии, что оно - нечетное:
>
if ($count % 2 == 1) { # остаток от деления на 2 равен 1
print $count;
}
Другая общеизвестная форма условного предложения содержит блок, выполняемый при ложном условии, а именно:
>
if (условие) { # проверка истинности условия
# действия, выполняемые,
# если условие истинно
} else {
# действия, выполняемые в противном случае
# (если условие ложно)
}
# продолжение программы
В Perl имеется еще одна форма условного предложения, которая задает последовательную проверку нескольких условий, указанных в фразе if или elsif. Она выглядит следующим образом:
>
if (условие 1) { # проверка истинности 1-го условия
# действия, выполняемые,
# если условие 1 истинно}
elsif (условие 2) { # проверка истинности 2-го условия
# действия, выполняемые,
# если условие 2 истинно
# ... здесь могут быть еще фразы elsif ...
elsif (условие N) { # проверка истинности N-го условия
# действия, выполняемые,
# если условие N истинно
} else {
# действия, выполняемые,
# если все условия ложны
}
# продолжение программы
При этом выполнится один из блоков действий: соответствующий первому истинному условию или указанный за фразой else. Фраза else может отсутствовать, тогда при всех ложных условиях не делается ничего. Форма условного предложения с elsif заменяет отсутствующий в Perl оператор выбора (такой как do-case или switch).
Иногда требуется подчеркнуть, что, наоборот, ложность условия становится причиной выполнения каких-либо действий. Для этого в Perl есть еще одна разновидность условного предложения, которая записывается с помощью ключевого слова unless:
>
unless (условие) { # проверка ложности условия
# действия, выполняемые,
# если условие ложно
} else {
# действия, выполняемые
# в противном случае
}
# продолжение программы
Здесь фраза else также может отсутствовать, если при истинности условия не требуется выполнять никаких действий.