domingo, 1 de septiembre de 2013

ESTRUCTURAS DE DECISIÓN CON VISUAL BASIC

INSTRUCCIÓN SI … ENTONCES (IF … THEN) Y SI … ENTONCES – SINO (IF … THEN – ELSE)

La sintaxis a emplear con Visual Basic es muy similar a la que se estudia en los cursos de algoritmia y pseudocódigo, con la sustitución del Si por If, del Entonces por Then, del SiNo por Else y del Finsi por End If. La única salvedad a tener en cuenta es que Visual Basicpermite además de la escritura en bloques la escritura en una sola línea.

 
Sintaxis en bloque:

If [condición] Then
Instrucción 1
Instrucción 2
·
·
·
Instrucción n
Else
Instrucción A
Instrucción B
·
·
·
Instrucción Z
End If
 

Sintaxis en una sola línea:

If [condición] Then Instrucción 1 Else Instrucción A
 
También es posible encadenar varias acciones derivadas de un Then o de un Else en una sola línea. Sin embargo, recomendamos usar la opción de sintaxis en una sola línea exclusivamente para desarrollos sencillos como puede ser una instrucción en caso de que se cumpla la condición y otra en caso de que no se cumpla. Si intervienen varias instrucciones, siempre resultará más legible usar el formato de bloque.

La instrucción If ... Then es anidable dentro de sí misma, siendo siempre preferible el formato de bloque cuando se vayan a generar anidamientos.


Ejemplo:

If A > 7 And B < 5 Then
    Print "A es mayor que 7 y B menor que 5"
End If



También válido es:

If A > 7 And B < 5 Then Print "A es mayor que 7 y B menor que 5"


Si introducimos una cláusula Else el modelo es:

If A > 7 And B < 5 Then
    Print "A es mayor que 7 y B menor que 5"
Else
    Print "A no es mayor que 7 ó B no es menor que 5"
End If



También válido:

If A > 7 And B < 5 Then Print "A es mayor que 7 y B menor que 5" _
Else Print "A no es mayor que 7 ó B no es menor que 5"


EJERCICIO EJEMPLO CON IF THEN ELSE EN VISUAL BASIC

Crear un programa que pida un número entero distinto de cero y nos muestre en pantalla un mensaje indicándonos si el número es par o impar.

Nota: El procedimiento a emplear será basado en el uso del operador Mod.


 

SOLUCIÓN

Crearemos un Label de solicitud del número, un Textbox de entrada, un Command Button y un Label para el cálculo y el resultado. Le ponemos los nombres y organizamos los controles en pantalla como nos parezca correcto (no tiene por qué coincidir con lo que ponemos aquí). Los nombres que hemos empleado nosotros son: LabelPideNumTextNentero, CommandHallar yLabelResultado.

Option Explicit
Dim Num As Integer
Dim Res As Integer

Private Sub Form_Load()
Form1.Caption = "Determina naturaleza par o impar"
CommandHallar.Caption = "Determinar"
LabelPideNum = "Introduzca un nº entero"
End Sub

Private Sub CommandHallar_Click()
Num = Val(TextNentero)
Res = Num Mod 2
LabelResultado.FontSize = 10
LabelResultado.FontBold = True
If Res = 0 Then
    LabelResultado = "El número es par"
Else
    LabelResultado = "El número es impar"
End If
End Sub
 

Gráficamente:



Hemos escrito el If ... Then – Else como un bloque en vez de como una única línea. El motivo para ello es que aporta mayor claridad y facilidad de interpretación.

No hay comentarios:

Publicar un comentario