Está en la página 1de 10

UNIDAD VISUAL BASIC II INSTRUCCIONES DE CONTROL DE PROGRAMA 15.

- CICLO FOR VISUAL BASIC

Este ciclo es uno de los mas usados para repetir una secuencia de instrucciones, sobre todo cuando se conoce la cantidad exacta de veces que se quiere que se ejecute una instruccin simple o compuesta. Su formato general es:

FOR VARCICLO=VALORINICIAL TO VALORFINAL [STEP INCR O DECR] INSTRUCCION(ES) NETX VARCICLO

EJEMPLO

Como se observa, instrucciones de ciclo, si ocuparan que se declaren variables de control de ciclo, ya sea de tipo byte,integer o long. Casos Particulares; 1.- El ciclo comienza en uno y se incrementa de uno en uno, este es el caso mas general. 2.- Pero el valor inicial puede se diferente de uno, ejemplo; DIM X AS INTEGER FOR X=5 TO 28 LABEL4.CAPTION=X NEXT X 3.- Incluso el valor inicial puede ser negativo, ejemplo; DIM X AS INTEGER FOR X= -5 TO 18

LABEL4.CAPTION=X NEXT X 4.- Los incrementos tambin pueden ser diferentes al de uno en uno, ej.; DIM X AS INTEGER FOR X=1 TO 50 STEP 4 LABEL4.CAPTION=X NEXT X 5.- Incluso pueden ser decrementos, solo que en este caso, recordar; * el valor inicial de la variable debe ser mayor que el valor final. DIM X AS INTEGER FOR X=100 TO 20 STEP - 5 LABEL4.CAPTION = X NEXT X 6.- Un ejemplo para usarlo en los problemas sugeridos mas adelante; ejemplo; Desplegar los nmeros enteros, comprendidos entre el 1 y el 20. Se ocupa ahora un componente que pueda almacenar y desplegar un conjunto de los 10 resultados, el nico componente visto hasta ahora con esta capacidad es el componente ComboBox, sin embargo existe otro componente llamado ListBox muy similar a ComboBox, excepto que no tiene encabezado y todos sus elementos los mantiene a la vista del usuario, no ocultos como el ComboBox, dicho componente ListBox se analiza a fondo en la siguiente UNIDAD VISUAL BASIC , pero de momento permite resolver el problema del for (desplegar un conjunto de resultados a la vez). Tanto ComboBox como ListBox permiten cargar todos sus elementos o valores, dentro de un programa, usando un mtodo llamado AddItem(valor), como se ve en el siguiente programa ejemplo; Para este problema se ocupa poner en Form1, un componente Command1 OK que en su evento Click contiene el for y la carga del componente ListBox; Pantalla de diseo

B) Programa

la pantalla de salida es:

Este procedimiento y mtodo igualmente trabaja con un componente ComboBox. Practicar hasta conseguir tener esta pantalla de salida o de ejecucin, cuando se consiga entonces ya se esta listo para lo siguiente; TAREAS PROGRAMACION VISUAL BASIC 1.- CONSTRUIR UN PROGRAMA QUE DESPLIEGUE LOS NMEROS DEL 20 AL 30. 2.- DESPLEGAR LOS ENTEROS ENTRE 50 Y 30 ACOMPAADOS DE SU POTENCIA CUADRADA Y RAZ CUBICA RESPECTIVA ( OCUPA TRES ListBox). 3.- DESPLEGAR LOS MLTIPLOS DE 5, ENTRE 10 Y 50, ACOMPAADOS DE SU FACTORIAL Y LOGARITMO RESPECTIVO.

4.- DESPLEGAR LA TABLA DE MULTIPLICAR QUE EL USUARIO INDIQUE. 5.- EVALUAR LA FUNCION <m> Y=5X^2 + 3X + 8 </m> CUANDO X -310 (RANGO DE -3 HASTA 10)

Mejor respuesta - elegida por los votantes


Podra ayudarte pero no se si de plano ni siquiera sabes poner botoncitos y etiquetas o lo que te falla es nicamente la codificacin o si de plano no sabes siquiera iniciar un proyecto. El cdigo quedara ms o menos asi: Dim contador As Integer contador = 100 Private Sub boton_Click() If contador = 0 Then contador = 100 End If contador = contador -1 etiqueta.Caption = contador End Sub Es algo muy sencillo pero pues si tienes dudas habr qu ayudarte ms. No tengo el compilador de Visual Basic 6.0 porque de otro modo te lo hara para que nicamente lo estudiaras Ejercicio

Primer Paso: ingresar a Visual Basic 6.0 Dentro de Visual basic Crear un formulario que se llame " ficha " ( sin comillas ) ac les dejo el link de la imagen http://img53.xooimage.com/files/a/e/f/ficha-230fbd0.png lo que se ve en azul son las etiquetas o label y los recuadros en blanco se llaman textbox o cuadros de textos, estos tienen un nombre en particular cada uno ya que van a ser importantes a la hora de codificar, los nombres de los textboxs son los siguientes matricula_txt apellido_txt nombre_txt nota1_txt nota2_txt nota3_txt y el ultimo es una etiqueta que se llama promedio_lbl, la siguiente es una etiqueta porque de ser un textbox el contenido podria ser modificado, para que parezca un textbox tenemos que hacer unos cambios en las propiedades, *la propiedad appeareance = 1-3D *Border Style = Fixed Single *Back Color = seleccionamos el blanco en la paleta. Dentro del formulario se encuentran tres botones, los mismos se llaman *siguiente_btn *listado_btn *salir_btn. Luego agregamos otro formulario desde el administrador de proyectos que se llame " listado" el mismo se ve asi http://img52.xooimage.com/files/5/b/7/listado-230fc7b.png como antes lo que esta en azul son etiquetas, pero ahora lo que parecen textbox se llaman listbox, los mismos se llaman asi: matricula_lis apellido_lis nombre_lis nota1_lis nota2_lis nota3_lis promedio_lis ( como en el formulario anterior es importante los nombres de los controles, por su codificacin) !!AHORA LA CODIFICACION !! codigo del formulario " ficha " Private Sub apellido_txt_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then If apellido_txt.Text <> "" Then nombre_txt.SetFocus End If End If

End Sub

Private Sub Form_Load() contador = 0 End Sub

Private Sub listado_btn_Click() Unload ficha listado.Show 1 End Sub

Private Sub matricula_txt_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then If IsNumeric(matricula_txt.Text) = True Then If Val(matricula_txt.Text) >= 1 And Val(matricula_txt.Text) <= 1000 Then apellido_txt.SetFocus End If End If End If

End Sub

Private Sub nombre_txt_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then If apellido_txt.Text <> "" Then nota1_txt.SetFocus End If End If End Sub

Private Sub nota1_txt_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then If IsNumeric(nota1_txt.Text) = True Then If Val(nota1_txt.Text) >= 1 And Val(nota1_txt.Text) <= 10 Then nota2_txt.SetFocus End If End If End If End Sub

Private Sub nota2_txt_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then If IsNumeric(nota2_txt.Text) = True Then If Val(nota2_txt.Text) >= 1 And Val(nota2_txt.Text) <= 10 Then nota3_txt.SetFocus End If End If End If End Sub Private Sub nota3_txt_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then If IsNumeric(nota3_txt.Text) = True Then If Val(nota3_txt.Text) >= 1 And Val(nota3_txt.Text) <= 10 Then prom = (Val(nota1_txt.Text) + Val(nota2_txt.Text) + Val(nota3_txt.Text)) / 3 promedio_lbl.Caption = prom siguiente_btn.SetFocus End If End If End If End Sub Private Sub salir_btn_Click() Unload Me End Sub

Private Sub siguiente_btn_Click() matricula(contador) = matricula_txt.Text apellido(contador) = apellido_txt.Text nombre(contador) = nombre_txt.Text nota1(contador) = nota1_txt.Text nota2(contador) = nota2_txt.Text nota3(contador) = nota3_txt.Text promedio(contador) = promedio_lbl.Caption contador = contador + 1 If contador = 100 Then Call Desactivar listado_btn.SetFocus Else Call Limpiar matricula_txt.SetFocus End If End Sub

Private Sub Desactivar() matricula_txt.Enabled = False apellido_txt.Enabled = False nombre_txt.Enabled = False nota1_txt.Enabled = False nota2_txt.Enabled = False nota3_txt.Enabled = False promedio_lbl.Enabled = False siguiente_btn.Enabled = False End Sub Private Sub Limpiar() matricula_txt.Text = "" apellido_txt.Text = "" nombre_txt.Text = "" nota1_txt.Text = "" nota2_txt.Text = "" nota3_txt.Text = "" promedio_lbl.Caption = "" End Sub -------------------------------------------------------------------------Codigo de "listado" Private Sub Form_Load() For x = 0 To contador matricula_lis.AddItem matricula(x) apellido_lis.AddItem apellido(x) nombre_lis.AddItem nombre(x) nota1_lis.AddItem nota1(x) nota2_lis.AddItem nota2(x) nota3_lis.AddItem nota3(x) promedio_lis.AddItem promedio(x) Next x End Sub Private Sub salir_btn_Click() Unload Me End Sub -----------------------------------------------------Ahora lo ltimo que tendriamos que hacer es agregar un Mdulo, el mismo se agrega desde administrador de proyectos. y la codificacin es la siguiente: Public matricula(100) Public apellido(100) Public nombre(100) Public nota1(100) Public nota2(100) Public nota3(100) Public promedio(100) Public contador As Integer Public x As Integer -----------------------------------------------------------------------

( en el modulo lo que declaramos fueron las variables de tipo Public, que sern utilizadas en los dos formularios) con esto finalizamos nuestro programita

Hacer un Programa en visual basic que calcule el mcm


Bueno mira como no tengo visual basic ahora te dare el algoritmo para resolver este problema... Primero el minimo comun multipo o MCM. En visual basic vas al evento del boton calcular cuando das clic sobre el y dentro de este escribes lo siguiente: //Supongamos que los textbox son: textbox1, textbox2, textbox3 y textbox4 Dim a[3] as integer Dim cont = 1 Dim var = 0 Dim ope[100] Dim res[3] private sub Command1_Click() a[1] = int.parse(textbox1.text) a[2] = int.parse(textbox2.text) a[3] = int.parse(textbox3.text) for i = 1 to 3 for j = 1 to (a-1) step -1 if ((a mod j)=0) then b = a/j ope[cont] = b cont = cont +1 end if next h = ope[1] for z = 2 to cont-1 if (h==ope[z]) then var = var + 1 aux = ope[z] end if if (cont=2) then if (ope[1] > ope[2]) then aux = ope[1] else aux = ope[2] end if

next res = aux^var next textbox4.text = res[1] + res[2] + res[3]

Lo acabo de hacer de rapidez, por lo tanto no he probado. Se te puede dar el caso en que tal vez con cietos numeros no los calcule... Eso es ensayo y error y como no tengo el visual instalado no lo puedo hacer... espero que sea de ayuda.... cualquier duda comenta..