Отрицание

Наряду с конъюнкцией (И) и дизъюнкцией (ИЛИ), часто используется операция «отрицание». Отрицание меняет логическое значение на противоположное.

В программировании ему соответствует унарный оператор !.

Если есть функция, проверяющая чётность числа, то с помощью отрицания можно выполнить проверку нечётности:

<?php

function isEven($number)
{
    return $number % 2 === 0;
}

isEven(10);  // => true
!isEven(10); // => false

То есть мы просто добавили ! слева от вызова функции и получили обратное действие.

Отрицание — мощный инструмент, который позволяет лаконично выражать задуманные правила в коде без необходимости писать новые функции.

А что если написать так !!isEven(10)? Внезапно, но код сработает. В логике двойное отрицание подобно отсутствию отрицания вообще.

isEven(10);  // => true
!isEven(10); // => false
!!isEven(10); // => true

Задание

Реализуйте функцию isNotLannisterSoldier, которая проверяет, что солдат — не Ланнистер. Функция принимает на вход такие же аргументы, как и функция isLannisterSoldier:

  1. Цвет доспехов (строка). Если доспехи красные, то строка red.
  2. null если щита нет. Строка lion если щит есть, и на нём изображен лев.

Вам доступна уже готовая к использованию функция isLannisterSoldier. Можете воспользоваться ей чтобы не писать все логические условия заново.


Советы

Упражнение доступно только авторизованным пользователям.

Пожалуйста, авторизуйтесь с помощью учётной записи GitHub, это необходимо для отслеживания прогресса выполнения уроков. Если у вас ещё нет учётной записи, то сейчас самое время создать аккаунт на GitHub.