Имя пользователя:
Пароль:
 

Показать сообщение отдельно

Новый участник


Сообщения: 14
Благодарности: 0

Профиль | Отправить PM | Цитировать


Помогите пож еще раз...наверное замучил уже...Я считываю 4 раза изменение полоски состояния, получаю 4 значения $res. Допустим, $res1=207, $res2=208, $res3=355, $res4=355. Теперь мне надо что бы в программа сравнила их по критериям, которые я задал. Т.к. Критериев для обработки много, я путаюсь и не знаю что с ними делать . Пробовал через IF -Then, как показано ниже, но выдает ошибку

If $res1<>$res2, $res2=$res4 Then
If $res1<>$res2^ ERROR

В связке If-Then-ElseIf таже ошибка. Может параметры не правильно заданы и нельзя так их вводить, тоесть через запятую?
Просто сразу после того как первый IF не соответствует действительности вылетает ошибка. Как сделать что бы программа из предложеных условий выбирала нужное и действовала согласно результату? Упростить до двух считываний изменений и потом сравнения их нельзя, надо что бы именно 4 сравнивало. Что посоветуете?...

if $res1=$res4 Then
Send("1")
EndIf
If $res1<>$res2, $res2=$res4 Then
Send("1")
EndIf
If $res1<>$res2, $res2<>$res3, $res3=$res4 Then
Send("1")
EndIf
If $res1=$res2, $res2<>$res3, $res3=$res4 Then
Send("1")
EndIf
If $res1=$res3, $res3<>$res4 Then
Send("5")
EndIf
If $res1<>$res2, $res2<>$res3, $res3<>$res4 Then
Send("5")
EndIf
If $res1<>$res2, $res2=$res3, $res3<>$res4 Then
Send("5")
EndIf


Если пишу так:

ElseIf $res1=$res2<>$res3=$res4 Then
Send("5")

то с ошибкой не выкидывает, но нажимает всегда "1", даже если видно что полоско двигается вперед и назад...

Попробовал задать по-другому :

ElseIf $res1=$res2<$res3=$res4 Then
Send("5")

Теперь жмет что надо, но загвоздка в том, что может быть так $res2<$res3, а может быть так $res2 >$res3.... если ставлю <>, то не обрабатывает.... Как можно еще поставить неравенство? Неужели надо кучу IF добавлять?

Последний раз редактировалось Иск, 08-09-2008 в 21:55.


Отправлено: 21:15, 08-09-2008 | #862