Главная | Комментарии | О проекте
Чтение RSS
Суперсайт
Главная Контакты Карта сайта Добавить в избранное
  • Кто OnLine

    Всего на сайте: 3
    Гостей: 1
    Пользователи: RelaxJobert
    Роботы: crawl Bot

    Опрос пользователей

    Для какого мода Вы пишите плагины?

    • Популярное

    Рекомендуем

    • AMX Mod X
    • up.org.ua

    Наши друзья


  • Автор: Admin Дата: 3-12-2011, 00:37 Просмотров: 15010

    Урок 3. Условные выражения в скриптинге ( что такое if, else,|| , & ,==,!=)

    Что такое условное выражение?

    Условные выражения - это грубо говоря сравнение двух чисел и задача условий, для выбора какого из блоков кода следует выполнить далее.

    Пример сравнения чисел:
    x = 5
    x > 4


    Для задачи условия существует выражение if(), которое от условий внутри круглых скобок, выберет какую часть кода следует выполнить.
    Пример:
    if(x > 4){
       //code
    }

    Читается это выражение так:
    Если ( икс больше 4) {
       то выполняется этот код
    }

    То есть если икс был бы меньше или равен четырем, то условие было бы не выполнено и код не выполнился.

    Так же есть выражение else ( используется только совместно с if())
    if(x > 4){
       //code1
    }else{
       //code2
    }


    Читается этот код так:
    Если ( икс больше 4) {
       то выполняется этот код №1
    }Если не выполнено условие{
       то выполняется этот код №2
    }


    Еще есть выражение else if:
    if(x > 4){
       //code1
    }else if(x > 2){
       //code2
    }else{
       //code3
    }


    Этот код будет чиаться так:
    Если ( икс больше 4) {
       то выполняется этот код №1
    }если не выполнено условие и если( икс больше 2)Х
       то выполняется этот код №2
    }Если не выполнено условие{
       то выполняется этот код №3
    }


    Обратите внимание, что из всего блока if, будет работать только Один кусок кода, где условие было выполнено.
    А теперь вернемся к условным выражениям.

    Какие бывают условные выражения

    Для начала перечислю их всех (которые знаю сам):
    • <
      - Одно число меньше другого
    • >
      - Одно число больше другого
    • ==
      - Числа равны ( обратите внимания на то что ставится 2 знака ==, дальше думаю поймете почему)
    • !=
      - Не равно
    • &&
      - Когда вам необходимо в одном if выражении совместить 2 и более условия, по русски это так:
      Если( x > 2 И y < 3)

      в скриптинге так:
      if( x > 2 && y < 3)

    • ||
      - Когда в одном выражении if может сработать одно из условий ИЛИ
      По русски:
      Если( x > 2 ИЛИ y < 3)

      В скриптинге
      if( x > 2 || y < 3)

    • !
      - отрицание, например когда проверяется живой ли игрок, а нам нужен мертвый
      if(!is_user_alive(id))

      То есть условие будет выполнено если игрок мертв, а не живой, как если бы не было восклицательного знака.
    • >=
      - Больше ли равно
    • <=
      - Меньше или равно ли равно


    Надеюсь после прочтения этого материала, у вас не останется вопросов что такое || или &&, а так же вы теперь должны понимать конструкцию
    if(){
    }else{
    }
    Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
    Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.
    Алексей

    --
    ICQ: --
    Публикаций: 0
    Комментариев: 0
    Репутация: -  0  +

    Хороший урок, спасибо. Побольше бы их.
    sOynd

    --
    ICQ: --
    Публикаций: 0
    Комментариев: 0
    Репутация: -  0  +

    Отличные уроки ! Для меня самое то...
    Ждем еще! smile
    exzon

    --
    ICQ: --
    Публикаций: 0
    Комментариев: 0
    Репутация: -  0  +

    Ошибочка

    if(!iz_user_alive(id))

    =>
    if(!is_user_alive(id))
    Admin

    30.07.2011
    ICQ: 980500
    Публикаций: 507
    Комментариев: 333
    Репутация: -  58  +

    Спасибо, исправил.
    --------------------
    Maf1a

    --
    ICQ: --
    Публикаций: 0
    Комментариев: 0
    Репутация: -  0  +

    Еще бы добавить знак |
    Что он означает?
    Например
    if(get_user_flags(id) & ADMIN_BAN | get_user_flags(id) & ADMIN_KICK)
    Admin

    30.07.2011
    ICQ: 980500
    Публикаций: 507
    Комментариев: 333
    Репутация: -  58  +

    Это для работы с битами.
    --------------------
    FellomoN

    --
    ICQ: --
    Публикаций: 0
    Комментариев: 0
    Репутация: -  0  +

    Спасибо за урок))
    maine

    --
    ICQ: --
    Публикаций: 0
    Комментариев: 0
    Репутация: -  0  +

    А я встретил необычную проверку:
    Speed[id] = showspeed > 0 ? true : false

    Speed[id] - булевая переменная
    showspeed - квар

    У меня возник вопрос что это за такая проверка и как ей пользоваться?

    я так понимаю "?" и ":" тоже относятся к условным выражениям, хотелось бы узнать о них побольше.
    Admin

    30.07.2011
    ICQ: 980500
    Публикаций: 507
    Комментариев: 333
    Репутация: -  58  +

    Смотри:
    Урок 5. Тернарная условная операция ( аналог if-else )
    --------------------
    sivabur

    --
    ICQ: --
    Публикаций: 0
    Комментариев: 0
    Репутация: -  0  +

    Еще есть выражение else if:

    if(x > 4){
       //code1
    }else if(x > 2){
       //code2
    }else{
       //code3
    }


    Уроки хорошии читаю учусь)


    Не когда не попадем во второе условия
    else if(x > 2)

    Так как первое задает X>4

    Надо подставить x<10 или что то на подобии этого.

    Информация

    Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.
Наверх

Реклама