You are on page 1of 6

UNIVERSIDAD AUTNOMA SAN FRANCISCO

Facultad de Ingenieras
Departamento Acadmico de Ingenieras
Escuela Profesional de Ingeniera Industrial

Separata

Asignatura: Computo III

Tema: Condiciones anidadas

Presentado por: Crisbianeth Karol Garca Escobedo

Arequipa Per
2017
Hemos visto lo que es la estructura de un programa, los datos, que esos datos en
realidad se convierten en variables de distinto tipo dentro de un programa, y que
esas variables generan o creamos con ellas expresiones.

Ahora, una vez que tenemos expresiones, hay que utilizarlas para algo, las
expresiones pueden ir de forma aislada o formar parte de las instrucciones de un
programa.

ESTRUCTURAS DE REPETICIN (BUCLES) CON VISUAL BASIC

FUNDAMENTOS DE VISUAL BASIC, C. Castillo P. Libro1_Cap6

UASF P gin 2
INTRODUCCIN
Un programa se construye a base de escribir una serie de instrucciones propias del
lenguaje que utilizamos y con el fin de poder llegar a que ese programa realice la
labor para la cual se ha diseado.
EJEMPLOS MS COMPLEJOS
Dim Num As Integer
Dim Res As Integer
Private Sub ButtonHallar_Click()
Num = Val(TextNentero)
Res = Num Mod 2
LabelResultado.FontSize = 10
LabelResultado.FontBold = True
If Res = 0 Then
LabelResultado = "El nmero es par"
Else
LabelResultado = "El nmero es impar"
End If
End Sub

Dim Nda%, Nmes%, DDA As Integer


Private Sub ButtonCalcular_Click()
Nda = Val(Text1)
Nmes = Val(Text2)
LabelResultado.FontSize = 10
LabelResultado.FontBold = True
If Nda >= 1 And Nda <= 31 And Nmes >= 1 And Nmes <= 12 Then
Select Case Nmes
Case 1
DDA = Nda '[DDA es da del ao]
Case 2
DDA = Nda + 31
Case 3
DDA = Nda + 59
Case 4
DDA = Nda + 90
Case 5
DDA = Nda + 120
Case 6
DDA = Nda + 151
Case 7
DDA = Nda + 181
Case 8
DDA = Nda + 212
Case 9
DDA = Nda + 243
Case 10
DDA = Nda + 273

UASF P gin 3
Case 11
DDA = Nda + 304
Case 12
DDA = Nda + 334
End Select
LabelResultado = "El " & Nda & " del " & Nmes & " es el da " & DDA & " del ao"
Else
LabelResultado = "Datos proporcionados no vlidos"
End If
End Sub
ESTRUCTURAS DE REPETICIN (BUCLES) CON VISUAL BASIC
Vamos a ver cmo materializar con Visual Basic estructuras de repeticin que permitirn que en
nuestros programas se realice un proceso n veces. En concreto veremos las instrucciones Desde
Siguiente (For Next) con su clusula Paso (Step), la instruccin Mientras Hacer (Do While
Loop) y la instruccin Hacer Repetir Mientras (Do Loop While).

Muchas veces podremos optar indistintamente por usar una instruccin u otra. En otros casos, es
recomendable decantarse por una de ellas por hacer el programa ms legible o sencillo que usando
otras opciones.

INSTRUCCIN DESDE ... SIGUIENTE (FOR ... NEXT) Y CLUSULA PASO (STEP)
La sintaxis a emplear con Visual Basic es la siguiente:

For VAR = Vi To Vf
Instruccin 1
Instruccin 2



Instruccin n
Next VAR

El incremento que sufre el contador es, por defecto, unitario. Es decir, el primer valor que toma VAR en
el bucle ser Vi, el segundo Vi + 1, el tercero (Vi + 1) + 1, etc. La modificacin de dicho valor de
incremento la realizaremos a travs de la clusula Step despus del valor Vf. Step 2 implicar que en
cada repeticin del bucle el contador se incremente en dos unidades, Step 5 implicar que en cada
repeticin del bucle el contador se incremente en cinco unidades. Un paso negativo del tipo Step -1
supone que el contador decrece en vez de incrementarse. Si el paso es negativo, Vi necesariamente
habr de ser mayor que Vf, ya que en caso contrario no se producir la entrada en el bucle.

UASF P gin 4
Ejemplo 1
Con este cdigo se nos muestra en pantalla 3 veces hola (se ha invertido el sentido del bucle):
Option Explicit

Dim VAR As Integer


Dim Vi As Integer
Dim Vf As Integer

Private Sub Form_Load()


Vi = 1
Vf = 3
For VAR = Vf To Vi Step 1
'[Tambin supondra tres repeticiones For VAR =
Vi to Vf]
MsgBox ("hola")
Next VAR
End Sub
Ejemplo 2
Transformar en cdigo el siguiente planteamiento: queremos generar un programa que pida un nmero
del 1 al 10 y nos muestre la tabla de multiplicar correspondiente.
SOLUCIN
Hemos realizado la pregunta relativa al nmero cuya tabla se desea conocer utilizando un InputBox.
Igualmente vlido hubiera sido hacerlo con un Label contenedor de la pregunta y un TextBox donde el
usuario introduce la informacin. La tabla la mostramos sobre un Label denominado LabelTabla.
Rem Curso Visual Basic aprenderaprogramar.com
Option Explicit

UASF P gin 5
Dim T As Integer
Dim i As Integer

Private Sub Form_Load()


Form1.Caption = "Tabla"
T = Val(InputBox("Qu tabla quiere conocer?" & vbCrLf & _
"(Introduzca un nmero de 1 a 10)", "Nmero?"))
LabelTabla.FontBold = True
LabelTabla.Alignment = 2
LabelTabla = "TABLA DEL " & T & vbCrLf & vbCrLf

For i = 1 To 10
LabelTabla = LabelTabla & T & " * " & i & " = " & T * i & vbCrLf
Next i
End Sub

Ejemplo 3
Transformar en cdigo el siguiente
planteamiento: queremos generar un programa
que muestre todos los enteros comprendidos
entre un nmero definido por el usuario y 100.

Rem Curso Visual Basic


aprenderaprogramar.com
Option Explicit
Dim Num As Integer
Dim i As Integer
Private Sub Form_Load()
Form1.Caption = "Enteros"
Num = Val(InputBox("Introduzca un nmero entero
comprendido entre 1 y 99", "Nmero?"))
LabelTabla.Alignment = 2
LabelTabla.FontBold = True
LabelTabla = "ENTEROS ENTRE " & Num & " y
100" & vbCrLf & vbCrLf
For i = Num To 100
LabelTabla = LabelTabla & i & " "
Next i
End Sub

UASF P gin 6

You might also like