Escolar Documentos
Profissional Documentos
Cultura Documentos
Contenido
Estructuras de Control ........................................................................................................................ 2 Estructuras Selectivas o de Decisin. .................................................................................................. 2 Estructura Selectiva If.................................................................................................................. 2 Estructura Selectiva Select Case.................................................................................................. 3 Otras Formas del IF ..................................................................................................................... 4 Decisin simple en una lnea ....................................................................................................... 4 Decisin doble en una lnea ........................................................................................................ 5 Estructuras Repetitivas........................................................................................................................ 5 Otras Formas de la Estructura Cclica Do...Loop ................................................................................. 6 Condicin al principio .................................................................................................................. 7 Condicin al final ......................................................................................................................... 7 Particularidades del Lenguaje ............................................................................................................. 8 Divisin de una lnea de cdigo................................................................................................... 8 Escritura de varias sentencias en la misma lnea ........................................................................ 8 Referencias .......................................................................................................................................... 9
Selector Mltiple
Segn sea expresin Hacer Caso expresin constante Instruccin(es) Caso expresin constante Instruccin(es) Otros Instruccin(es) Fin_Segun
Select Case
VariableName
Estructura Selectiva If
La setencia If comprueba una condicin, si al evaluarla el resultado es true el programa ejecuta las instrucciones o sentencias que se encuentren a continuacin, en caso contrario se ejecutan las instrucciones o sentencias ubicadas en el else. El else puede omitirse en el caso de que no se desee se efecten acciones o instrucciones cuando al evaluar la condicin de cmo resultado false. Ejemplos:
If edad >= 18 then Console.writeline( Es ud. Mayor de Edad ) Else Console.writeline( Es ud. Menor de Edad ) End If
En el caso de que tras evaluar la expresin, haya ms de un Case cuya lista de expresiones se cumpla, se ejecutar el que est situado en primer lugar. En el ejemplo a continuacin, cuando la variable Valor contiene 5, se cumplen dos casos. Sin embargo slo se ejecuta el cdigo del primer Case, esto es imprimir o mostrar el mensaje "El valor es 5"
Ejemplo:
Select Case Valor Case 5 Console.WriteLine("El Case 120, 250 Console.WriteLine("El Case 3000 To 4000 Console.WriteLine("El Case Is < 10 Console.WriteLine("El Case Else Console.WriteLine("El End Select
valor es 5") valor es 120 250") valor est en el rango de 3000 a 4000") valor es menor de 10") valor es {0}, y no se cumple ningn caso", Valor)
Module Module1 Sub Main() Dim Valor As Integer Dim Resultado As String Console.WriteLine("Introducir un nmero") Valor = Console.ReadLine() If Valor <=10 Then Resultado = Aprobado Else Resultado = Reprobado Console.WriteLine("La variable resultado contiene {0}", Resultado) Console.ReadLine() End Sub
Decisin doble en una lnea Al igual que ocurre con la decisin simple, si para cada resultado de la expresin, slo necesitamos ejecutar una instruccin, podemos escribir todo el cdigo en una sola lnea.
If Expresin Then InstruccinVerdadero Else InstruccinFalso
Si bien la ejecucin de la estructura If en una lnea puede ser til en ocasiones, tiene como contrapartida el que nuestro cdigo sea ms difcil de leer. Por ello es ms recomendable el uso de esta estructura de control en su formato If...End If.
Estructuras Repetitivas
Estas estructuras, tambin denominadas bucles, ejecutan un bloque de cdigo de forma repetitiva mientras se cumpla una condicin asociada a la estructura. A cada una de las ocasiones en que se ejecuta el cdigo contenido en estas estructuras se le denomina iteracin. INSTRUCCIN Ciclo Repetitiva con condicin al inicio ALGOR Mientras condicin Hacer Instruccin(es) FinMientras Visual Basic 2008 While condicin Instruccin(es) End While
Repetir Instruccin(es) Hasta condicin incremento por omisin Sucesor (1) Para Variable <-Vi hasta Vf hacer Instruccin(es) FinPara incremento variable inc Para Variable <-Vi hasta Vf paso Inc hacer Instruccin(es) FinPara
Do Instruccin(es) Loop Until condicin incremento por omisin uno (1) For Variable <-Vi hasta Vf Instruccin(es) Next variable incremento variable inc For Variable <-Vi to Vf step Inc Instruccin(es) Next variable
En otros Lenguaje: INSTRUCCIN Ciclo Repetitiva con condicin al inicio Pascal While condicin Do Begin Instruccin(es); Visual Basic 2008 While condicin Instruccin(es) End While
Pascal End; Repeat Instruccin(es); Until condicin; incremento por omisin Sucesor (1) For Variable := Vi TO Vf Do Begin Instruccin(es); End; decremento por omisin Predecesor (-1) For Variable := Vi DOWNTO Vf Do Begin Instruccin(es); End; Do
Instruccin(es) Loop Until condicin incremento por omisin uno (1) For Variable = Vi To Vf Instruccin(es) Next variable
incremento variable inc For Variable = Vi to Vf step Inc Instruccin(es) Next variable
Ejemplo:
Sub Main() Dim Valor As Integer Dim Palabra As String Dim Contador As Integer Dim Pruebas As Integer Console.Writeline ("Probando el While End While") Valor = 100 While Valor <> 200 Console.WriteLine("Introducir un nmero") Valor = Console.ReadLine() End While Console.Writeline ("Probando el Repeat - Until") Repeat Console.WriteLine("Introducir un nmero") Valor = Console.ReadLine() Until Valor = 200 End Sub
Condicin al principio
Do While | Until Expresin ' Instrucciones ' ...... Loop
La diferencia entre usar While o Until reside en que empleando While, el cdigo del bucle se ejecutar mientras la expresin devuelva Verdadero. En el caso de Until, el cdigo se ejecutar mientras que la expresin devuelva Falso. Ejemplo
Sub Main() Dim Valor As Integer Dim Palabra As String Dim Contador As Integer Dim Pruebas As Integer Console.Writeline ("Probando el Do While") Valor = 100 Do While Valor <> 200 Console.WriteLine("Introducir un nmero") Valor = Console.ReadLine() Loop Console.Writeline ("Probando el Do Until") Do Until Valor = 200 Console.WriteLine("Introducir un nmero") Valor = Console.ReadLine() Loop End Sub
Condicin al final
Do ' instrucciones ' ...... Loop While | Until Expresin
La diferencia en este caso, consiste en que el contenido de la estructura se ejecuta al menos una vez.
Sub Main() Dim Valor As Integer Dim Palabra As String Dim Contador As Integer Dim Pruebas As Integer Console.Writeline ("Probando el Do Do Console.WriteLine("Introducir un Valor = Console.ReadLine() Loop While Valor <> 200 Console.Writeline ("Probando el Do Do Console.WriteLine("Introducir un Valor = Console.ReadLine() Loop Until Valor = 200 End Sub
' una sola lnea lgica y fsica Resultado = ((30 + 5) * 5 > 100) And (52 > 200 / (2 + 5)) ' varias lneas fsicas, aunque internamente ' el compilador reconoce una sola lnea lgica Resultado = ((30 + 5) * 5 > 100) And _ (52 > 200 / _ (2 + 5))
la lnea de cdigo en donde queremos continuar, teniendo en cuenta que siempre debe haber un espacio en blanco antes y despus de este carcter, para que la divisin de la lnea sea efectiva.
Sub Main() Dim Valor As Integer, Nombre As String, Resultado As Boolean ' en la siguiente lnea hay tres sentencias que ' habitualmente se escriben en lneas separadas Valor = 50 : Nombre = "Julio" : Resultado = 50 <> 275 Console.WriteLine("Contenido de variables: {0} - {1} - {2}", _ Valor, Nombre, Resultado) Console.ReadLine() End Sub
lnea fsica, varias sentencias separadas por el carcter de dos puntos ( : ), que en condiciones normales se escriben en lneas separadas.
Si bien en algunas situaciones puede ser til, esta caracterstica hace que nuestro cdigo sea ms complicado de leer, restndole claridad a nuestra aplicacin, por lo que recomendamos no utilizarla salvo en casos muy necesarios.
Referencias
Blanco, Luis Miguel (2002). Fundamentos de Programacin en Visual Basic . Net. Grupo Eidos. Petroutsos, Evangelos (2008). La Biblia de Visual Basic 2008. Anaya Multimedia Buyens, Jim (2003). Introduccin a la Programacin, Mc. Graw Hill.