Шаг 4 - Условия

.

Оператор условия If и else

В каждой нормальной программе приходится проверять какие-нибудь условия, для этого как раз и служит оператор if

Синтаксис:

  if expression        # Здесь expression - это условие
   {:..}
  else
   {:..}
Нужно также сказать о блоке (операторных скобках), в перле блоком считается список выражений заключенный в фигурные скобки "{::..}".
  if $var < 10 
    { print "Ваша цифра меньше 10."; } 
  else
    { print "Ваша цифра больше или равна 10."; }
Поскольку мы еще не рассматривали операции ввода/вывода, то примеры получатся весьма глупыми, так как значение переменных уже известно. Но все-таки рассмотрим этот пример, здесь if проверяет условие, и если оно выполняется, то тогда выполняются выражения в блоке после if, а выражение в блоке после else игнорируются. Если же условие не верное, тогда выполняются выражения после else.

Если вы используете только один оператор, то не имеет смысла писать его в фигурных скобках, его можно записать таким образом.

   print "Hello" if $var = 10;
Здесь оператор print пишется перед проверкой условия и точка с запятой между ними не ставится.

Ниже приведена таблица операторов отношений.

<	меньше
>	больше
<=	меньше или равно
>=	больше или равно
==	равно
!=	не равно
В перле проверять можно не только число, но и строки. Принцип, следующий и он прост, сравнивается каждый символ обоих строк по таблице кодировки.
  "abc" ==  "abc"
  "abc" <   "acb"
  "z"   >   "abc"
  "Z"   <   "z"
Но чтобы отличить отношение чисел от отношения строк используют другие операторы, они приведены ниже.
  lt 	меньше
  gt	больше
  le	меньше или равно
  ge	больше или равно
  eq	равно
  ne	не равно
Бывают ситуации, когда условие нужно несколько раз подряд, например:
  if $var > 4
  {
     print "Это число  меньше 8 и  больше 4"  if $var < 8;
  }
Приведенный выше пример можно записать короче с помощью логических операторов, в данный момент используется оператор И.
  print "Это число  меньше 8 и  больше 4"  if $var > 4 && $var < 8;
В перле два логических оператора И - &&(AND), и ИЛИ - ||(OR);


Предыдущий Шаг | Следующий Шаг | Оглавление

By Vasya Vazhesov.