Estructura IF

  • Por
Vemos todos los distintos usos de IF, con enunciados ELSE y ELSEIF.

La estrutura de control IF permite decidr entre dos opciones resultantes de la evaluación de una sentencia. Si la evaluación es positiva hace una cosa, también podemos especificar accioens para realizar en caso de que la evaluación sea negativa. Veamos cómo funciona en VBscript.

IF (expresion) then
      Sentencias
      ....
END IF
Vemos que en primer lugar tenemos la sentencia IF, luego una expresión, que puede o no ir entre paréntesis, y más tarde la parabra THEN. Vemos que luego hay un salto de línea antes de colocar las sentencias asociadas a la evaluación positiva de la sentencia. En VBScript las líneas si que importan.
Después de poner las sentencias del asociadas a la evaluación positiva colocamos un END IF, para acabar la estructura del IF.

Enunciado ELSE

Opcionalmente se puede colocar una serie de sentencias asociadas a la evaluación negativa de la expresión. Estas sentencias se deben colocar después de la orden ELSE y antes del END IF.

IF (expresion) then
      Sentencias
      ....
ELSE
      Sentencias
      ....
END IF


Enunciado ELSEIF

En Visual Basic Script existe la posibilidad de utilizar un enunciado especial en el lugar donde utilizaríamos un ELSE. Sirve para encadenar sentencias IF de modo que en un resultado negativo de un IF se pueda evaluar otra expresión, que tendría a su vez otros enunciados THEN y probablemente ELSE u otro ELSEIF. Se vería en un ejemplo com más facilidad:
IF (expresion1) then
      Sentencias1
      ....
ELSEIF (expresion2) then
      Sentencias2
      ....
ELSEIF (expresion3) then
      Sentencias3
      ....
ELSE
      Sentencias4
      ....
END IF


Se evalúa la primera expresión, en caso positivo se ejecutan las sentencias1, en caso negativo se evalua la expresion 2. Si la expresión 2 es positiva se ejecutan las sentencias 2 en caso negativo evaluamos la expresión 3 con el siguiente ELSEIF. Todo acaba en un ELSE en este ejemplo, pero el ELSE final no es obligatorio.

Autor

Miguel Angel Alvarez

Miguel es fundador de DesarrolloWeb.com y la plataforma de formación online EscuelaIT. Comenzó en el mundo del desarrollo web en el año 1997, transformando su hobby en su trabajo.

Compartir

Comentarios

patricia castellano morales

16/1/2007
que no se vale que digan estopor conputadora porq luego es mentira no sierto solo estoy cotorriando no se vallan a molestar solo tengo 15 años y vivo de mis travasuras yo y mis amigas a qui prexsentes entienden vueno ok bay sedespide p2kk

patricia rosasperez

16/1/2007
miren lesvoy acontar mi historia tengo una maestra que es muy ablada sobre los valores diganme dondeestan y se las mando vale ella dsave mucho sobre los articulos

luis ventura

26/3/2007
sera que pueden dar dos ejemplos de como emplear en un ejercicio el if de alternativa de visual fox, y ojala tomen mi opinion util y me ayuden bye

RAUL

15/4/2007
POR QUE SI YO PONGO ESTA CONDICION:
If Image7.Visible = True Then
If Image2.Visible = True Then MsgBox "LE ATINASTE"
Else
Image2.Visible = False
End If
Else
Image7.Visible = False
End If

DICIENDO QUE ELSE NO TIENE IF

Heggens

05/5/2009
Buen tema!!!!!!!!!
Y si eh.........

programador

21/9/2009
preguntilla
Una duda por si alguien lo sabe. Yo tengo uno de esos casos que tan bien explicados están, por ejemplo:
If expresion then
-sentencia
end if
Donde expresión es: Array1(i) > Array1(j). Esto es de una función de ordenar ascedentemente un array. La duda es: podría de alguna forma tener la expresión asignada a una variable, o almenos el símbolo ">" de tal manera que al llamar a la función según un parámetro tipo, mi expresión quedara:
-If cadena then , donde cadena = "Array1(i) > Array1(j)"
-If Array1(i) & cadena & Array1(j), donde cadena = ">"
y no tuviera que hacer el cósdigo de ordenar dos veces, una por tipo de ordenación.

isabella cabuthoO

13/11/2009
ortografia
osea neta se pasan "decidir" lleva una "i" entre la d y la r


se pasan de guasa.....

carlos

09/6/2011
ayuda
necesito ejercicios resueltos en visual basic 2010
con las sentencias.........................

cjosue

16/1/2013
me cagan las pendejadas
nononono el mundo es una cagtada ..... :poop: