Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   AutoIt (http://forum.oszone.net/forumdisplay.php?f=103)
-   -   [решено] Проверка выполнения нескольких условий (http://forum.oszone.net/showthread.php?t=184644)

Smokie_id11243755 04-09-2010 21:52 1488658

Проверка выполнения нескольких условий
 
Ниже - фрагмент, где происходит проверка нескольких условий, и я подозреваю, что можно реализовать это как-то поумнее и понормальнее)) Так вот вопрос: Как?

Код:

If $dw=$dw0 then
        _dh()
Else
        _msgbox()
EndIf
Func _dh()
If $dh=@dh0 then
        _dd()
Else
        _msgbox()
EndIf
EndFunc
Func _dd()
If $dd=@dd0 then
        _dr()
Else
        _msgbox()
EndIf
EndFunc
Func _dr()
If $dr=@dr0 then
        Exit
Else
        _msgbox()
EndIf
EndFunc

Func _msgbox()
msgbox(1,"title","text",5)
EndFunc


Creat0R 04-09-2010 22:23 1488675

Цитата:

Цитата Smokie_id11243755
я подозреваю, что можно реализовать это как-то поумнее и понормальнее »

Можно, но одного лишь этого фрагмента не достаточно. Тем более что он нерабочий.

Smokie_id11243755 04-09-2010 22:59 1488692

Вот так допустим

Код:

$dw="dw0"
$dh="dh0"
$dd="dd0"
$dr="dr0__"

If $dw="dw0" then
        _dh()
Else
        _msgbox()
EndIf
Func _dh()
If $dh="dh0" then
        _dd()
Else
        _msgbox()
EndIf
EndFunc
Func _dd()
If $dd="dd0" then
        _dr()
Else
        _msgbox()
EndIf
EndFunc
Func _dr()
If $dr="dr0" then
        Exit
Else
        _msgbox()
EndIf
EndFunc

Func _msgbox()
msgbox(0,"Проверка нескольких условий","Хотя бы одно из условий не выполняется")
EndFunc


gregaz 04-09-2010 23:29 1488703

Так ?
$dw="dw0"
$dh="dh0"
$dd="dd0"
$dr="dr0__"

If $dw="dw0" Then
If $dh="dh0"Then
If $dd="dd0"Then
If $dr="dr0" then
Exit
Else
_msgbox()
EndIf
Else
_msgbox()
EndIf
Else
_msgbox()
EndIf
Else
_msgbox()
EndIf

Func _msgbox()
msgbox(0,"Проверка нескольких условий","Хотя бы одно из условий не выполняется")
EndFunc

FlatX007 04-09-2010 23:44 1488711

Цитата:

Цитата gregaz
gregaz »

Ему скорее всего нужно использование функций ...

Smokie_id11243755 05-09-2010 00:59 1488761

да не... мне без разницы. я просто только функциями смог это сделать - не сумел "if" оформить)

madmasles 05-09-2010 07:19 1488799

Так, вроде, покороче будет, если не важно, какое из условий не выполняется:
Код:

$dw = "dw0"
$dh = "dh0"
$dd = "dd0"
$dr = "dr0__"

If $dw <> "dw0" Or $dh <> "dh0" Or $dd <> "dd0" Or $dr <> "dr0__" Then
    MsgBox(0, "Проверка нескольких условий", "Хотя бы одно из условий не выполняется.")
Else
    MsgBox(0, "Проверка нескольких условий", "Все условия выполняются.")
EndIf



Время: 02:01.

Время: 02:01.
© OSzone.net 2001-