Автокликер Clickermann :: Форум

Основной раздел => Ошибки => Архив => Topic started by: СлавьЯнИнъ on October 29, 2012, 05:38:36 PM

Title: Ошибка обработки условия OR ?
Post by: СлавьЯнИнъ on October 29, 2012, 05:38:36 PM
Простой сценарий:
Code: [Select]
if (1=1)
print(work1)
end_if

if ((1=1)&(2=2))
print(work2)
end_if

if ((1=1)OR(3=2))
print(work3)
end_if

if ((1=1)&(2=2)&(3=3))
print(work4)
end_if

if (((1=1)OR(3=2))&(3=3))
print(work5)
end_if

if (((1=1)OR(3=2))OR(3=3))
print(work6)
end_if

halt
После применения логического OR в выражении уже нельзя применить другие операторы, даже ещё один OR.
Это ошибка?
Title: Re: Ошибка обработки условия OR ?
Post by: Сергей on October 29, 2012, 06:28:36 PM
В справке написано же, что вложенные выражения(скобки) не поддерживаются. Используй
Code: [Select]
if( (1=1) OR (3=2) OR (3=3) )Вместо
Code: [Select]
if( ((1=1) OR (3=2)) OR (3=3) )
Ну или вложенные друг в друга if'ы делай.
Title: Re: Ошибка обработки условия OR ?
Post by: СлавьЯнИнъ on October 29, 2012, 07:48:49 PM
Берём этот вариант:
Code: [Select]
if ( (1=2) OR (3=2) OR (3=3) )
print(work7)
end_if

halt
таже самая ситуация
Quote
После применения логического OR в выражении уже нельзя применить другие операторы, даже ещё один OR.
Это ошибка?

Да вложенные IF можно использовать, НО если у меня 20 параметров "ИЛИ", то писать 19 вложенных IF - как-то корявенько.

Я хочу понять является ли эта ситуация с оператором OR ошибкой интепретатора/языка кликера.
Title: Re: Ошибка обработки условия OR ?
Post by: Oraven on October 29, 2012, 09:10:20 PM
Видимо да потому как такой скрипт работает

Code: [Select]
if ( (1=2) | (3=2) | (3=3) )
print(work7)
end_if
halt

Да и вообще зачем писать OR если проще | ?????
Title: Re: Ошибка обработки условия OR ?
Post by: СлавьЯнИнъ on November 01, 2012, 02:36:32 PM
OR - нагляднее. Возможно привычнее.
Title: Re: Ошибка обработки условия OR ?
Post by: Oraven on November 01, 2012, 04:43:42 PM
Каму привычнее? Я языков программирования не знаю, а запомнить (! | &) проще да и писать это легче и короче. Так что я против этих AND OR XOR