You are on page 1of 11

Microsoft Visual Basic

GUA DE LABORATORIO N 4
Objetivos
Luego de completar este laboratorio, el estudiante ser capaz
de:
Manipular y realizar operaciones con arreglos.
Crear una estructura y realizar operaciones con los campos de la
misma.
Implementar arreglos de estructuras.
Trabajar con listas desplegables y cuadros combinados.
Aplicacin N 1
Elabore una aplicacin ue permita leer ! n"meros de tipo
entero, y a continuacin los #isualice ordenados en $orma
ascendente o descendente.
%ara el desarrollo de esta aplicacin, proceda a ubicar los
siguientes controles en el $ormulario:
& 'roup(o)
* caja de te)to
* control lista
+ botones de opcin
& botones de comando
Adela Valenciano Surez Pag. 1 de 11
En seguida proceda a establecer las propiedades seg"n se
indica:
o!"1
!ame ,rm(urbuja
(order-tyle ,i)ed .ialog
Te)t /rdenacin por burbuja
G!o#pBo$1
!ame 'rp!umero
Te)t Ingrese un nue#o n"mero:
G!o#pBo$%
!ame 'rpLista
Te)t Lista de n"meros:
G!o#pBo$&
!ame 'rp/rden
Te)t /rden:
Te$t1
!ame T)t!umero
Te)t
ListBo$1
!ame Lst!umero
List
Option1
!ame /pt0scendente
Te)t 0scendente
C1ec2ed True
Option%
!ame /pt.escendente
Te)t .escendente
C1ec2ed ,alse
'o""an(1
!ame (tn0nnadir
Te)t
&03adir
'o""an(%
!ame (tn/rdenar
Te)t
&/rdenar
Adela Valenciano Surez Pag. 2 de 11
'o""an(&
!ame (tn-alir
Te)t
&-alir
Image 44
5na #ez establecidas las propiedades proceda a ingresar el
cdigo ue se indica a continuacin:
Private Sub BtnAnadir_Click(ByVal sender As System.Object, ByVal e As System.EventArgs
!andles Btn_Anadir.Click
"# "s$umeric(%&t$umer'.%e&t %(en
)st$umer'."tems.Add(%&t$umer'.%e&t
%&t$umer'.%e&t * ++
%&t$umer'.,'cus(
%&t$umer'.SelectAll(
Else
-essageB'&.S('.(+"ntr'du/ca un n0mer' enter' 1'r #av'r+
%&t$umer'.,'cus(
%&t$umer'.SelectAll(
End "#
End Sub
Private Sub Ordenar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs
!andles BtnOrdenar.Click
2im i As "nteger, j As "nteger, $ As "nteger
$ * )st$umer'."tems.C'unt 32evuelve numer' de element's en el listb'&
2im )ista($ 4 5 As "nteger 3)'s element's de una matri/ se em1ie/an a re#erenciar
en 6
"# $ * 6 %(en
-essageB'&.S('.(+$' (ay n0mer's en la lista+
Else
3Pasar dat's del listb'& a la matri/ )ista
,'r i * 6 %' $ 4 5
)ista(i * )st$umer'."tems."tem(i
$e&t
End "#
3444444444444444444444444444444444444444444444444444444444444444444444444444444
3Ordenar de men'r a may'r
"# O1tAscendente.C(ecked %(en
2im au& As "nteger * 6
,'r i * 6 %' $ 4 7
,'r j * i 8 5 %' $ 4 5
3C'm1ara cada i c'n t'd' el array
"# )ista(i 9 )ista(j %(en
3"ntercambia si 1rimer' may'r
au& * )ista(i
)ista(i * )ista(j
)ista(j * au&
End "#
$e&t j
$e&t i
End "#
Adela Valenciano Surez Pag. 3 de 11
344444444444444444444444444444444444444444444444444444444444444444444444444444444444
3Ordenar de may'r a men'r
"# O1t2escendente.C(ecked %(en
2im au& As "nteger * 6
,'r i * 6 %' $ 4 7
,'r j * i 8 5 %' $ 4 5
3C'm1ara cada i c'n t'd' el array
"# )ista(i : )ista(j %(en
3"ntercambia si 1rimer' may'r
au& * )ista(i
)ista(i * )ista(j
)ista(j * au&
End "#
$e&t j
$e&t i

End "#
344444444444444444444444444444444444444444444444444444444444444444444444444444444444
3Escribir l's numer's 'rdenad's en el listb'&
)st$umer'."tems.Clear( 3Vac;a el listb'&
,'r i * 6 %' $ 4 5
)st$umer'."tems.Add()ista(i
$e&t i
End Sub
Aplicacin N %
Elaborar una aplicacin ue permita seleccionar un art6culo de
un cuadro combinado 7Combo8. 0penas el usuario seleccione un
art6culo se debe mostrar el precio del mismo, el inter9s es $ijo
para esta ocasin.
El dise3o de la inter$az debe ser similar a la siguiente
$igura:
Adela Valenciano Surez Pag. 4 de 11
La #enta 1a realizarse es a plazos, ello condiciona la cuota
mensual a pagarse. Cuando se 1aga clic2 sobre el botn Cuota
mensual debe mostrarse un cuadro de dilogo con los datos
propuestos:
.e manera similar al 1acer clic2 sobre el botn Total nos debe
mostrar la cantidad total a pagar.
%ara el desarrollo de esta aplicacin, proceda a ubicar los
siguientes controles en el $ormulario:
* 'roup(o)
& etiuetas
* cuadro combinado
+ cajas de te)to
& botones de opcin
+ botones de comando
En seguida proceda a establecer las propiedades seg"n se
indica:
o!"1
!ame ,rm%edido%ago0plazado
(order-tyle ,i)ed .ialog
Te)t %edido pago aplazado
Adela Valenciano Surez Pag. 5 de 11
G!o#pBo$1
!ame 'rp%lazo
Te)t %lazo:
Label1
!ame Lbl0rticulo
Te)t 0rt6culo:
Label%
!ame Lbl%recio
Te)t %recio :
Label&
!ame LblInteres
Te)t Inter9s:
'o"boBo$1
!ame Cbo0rticulo
Te)t
Te$t1
!ame T)t%recio
;ead/nly True
Te)t
Te$t%
!ame T)tInteres
;ead/nly True
Te)t
Option1
!ame /pt<meses
Te)t < meses
C1ec2ed True
Option%
!ame /pt*+meses
Te)t *+ meses
C1ec2ed ,alse
Option&
!ame /pt+=meses
Te)t += meses
C1ec2ed ,alse
Adela Valenciano Surez Pag. 6 de 11
'o""an(1
!ame (tnCuotaMensual
Te)t
&Cuota mensual
'o""an(%
!ame (tnTotal
Te)t
&Total
5na #ez establecidas las propiedades de la inter$az, 1aga
doble clic2 sobre el $ormulario e ingrese las siguientes
declaraciones en la seccin 'eneral del mdulo de $ormulario:
Private Structure Articul'
2im $'mbre As String
2im Preci' As 2'uble
End Structure
2im A(< As Articul', Pla/' As "nteger
C'nst "nteres * 6.57
;ecuerde ue un dato declarado en la seccin 'eneral de un
mdulo o clase puede ser accedido por todos los procedimientos de
dic1o mdulo. Luego, contin"e ingresando el cdigo ue se muestra
a continuacin:
Private Sub ,rmPedid'Pag'A1la/ad'_)'ad(ByVal sender As System.Object, ByVal e As
System.EventArgs !andles -yBase.)'ad
A(6.$'mbre * +-'nit'r SA-S=$> Syncmaster ?+
A(5.$'mbre * +"m1res'ra !e.let Packard 2eskjet @?6C+
A(7.$'mbre * +"m1res'ra E1s'n Stylus C'l'r A<6+
A(?.$'mbre * +-icr'1r'cesad'r Pentium " 7?? -!/+
A(6.Preci' * 5B6 C A(5.Preci' * 7AB C A(7.Preci' * 5<B C A(?.Preci' * D6
3Cargar l's dat's del array en el c'mb'b'&
2im i As "nteger
,'r i * 5 %' <
Cb'Articul'."tems.Add(A(i 4 5.$'mbre
$e&t
3"niciali/am's "ntere y 1la/'
%&t"nteres.%e&t * CStr("nteres C Pla/' * E
End Sub
Private Sub Cb'Articul'_Selected"nde&C(anged(ByVal sender As System.Object, ByVal e As
System.EventArgs !andles Cb'Articul'.Selected"nde&C(anged
2im i As "nteger
i * Cb'Articul'.Selected"nde& 3"ndice del element' selecci'nad'
%&tPreci'.%e&t * CStr(A(i.Preci' 3Escribe el 1reci' del element' selecci'nad'
End Sub
Adela Valenciano Surez Pag. 7 de 11
Private Sub BtnCu'ta_Click(ByVal sender As System.Object, ByVal e As System.EventArgs
!andles BtnCu'ta.Click
2im %'tal As 2'uble, Cu'ta-ensual As 2'uble, i As "nteger
i * Cb'Articul'.Selected"nde& 3"ndice del element' selecci'nad'
%'tal * A(i.Preci' F (5 8 "nteres
"# O1tEmeses.C(ecked %(en
Pla/' * E
Else"# O1t57meses.C(ecked %(en
Pla/' * 57
Else"# O1t7<meses.C(ecked %(en
Pla/' * 7<
End "#
Cu'ta-ensual * %'tal G Pla/'
-essageB'&.S('.(+Cu'ta mensualC + H Cu'ta-ensual.%'String(+I,II6.66 J+
End Sub
Private Sub Btn%'tal_Click(ByVal sender As System.Object, ByVal e As System.EventArgs
!andles Btn%'tal.Click
2im %'tal As 2'uble, i As "nteger
i * Cb'Articul'.Selected"nde& 3"ndice del element' selecci'nad'
%'tal * A(i.Preci' F (5 8 "nteres
-essageB'&.S('.(+%'talC + H %'tal.%'String(+I,II6.66 J+
End Sub
Adela Valenciano Surez Pag. 8 de 11
)o(i*icacin (e la aplicacin 1 pa!a #sa! p!oce(i"ientos
Escribir el siguiente procedimiento en el cdigo de la aplicacin
*, justo antes de End Class.
Sub Ordenar_Ascendente(ByVal vect'r( As "nteger
2im au& As "nteger * 6
2im $ As "nteger * vect'r.)engt(
,'r i * 6 %' $ 4 7
,'r j * i 8 5 %' $ 4 5
3C'm1ara cada i c'n t'd' el array
"# vect'r(i 9 vect'r(j %(en
3"ntercambia si 1rimer' may'r
au& * vect'r(i
vect'r(i * vect'r(j
vect'r(j * au&
End "#
$e&t j
$e&t i
End Sub
-ustituir en el cdigo de la aplicacin *, este cdigo:
3Ordenar de men'r a may'r
"# O1tAscendente.C(ecked %(en
2im au& As "nteger * 6
,'r i * 6 %' $ 4 7
,'r j * i 8 5 %' $ 4 5
3C'm1ara cada i c'n t'd' el array
"# )ista(i 9 )ista(j %(en
3"ntercambia si 1rimer' may'r
au& * )ista(i
)ista(i * )ista(j
)ista(j * au&
End "#
$e&t j
$e&t i
End "#
%or este otro:
3Ordenar de men'r a may'r
"# O1tAscendente.C(ecked %(en
Ordenar_Ascendente()ista
End "#
Comprobar ue la aplicacin $unciona correctamente.
.e la misma $orma, crear un procedimiento ue ordene de $orma
descendente un #ector de n"meros.
Adela Valenciano Surez Pag. 9 de 11
Aplicacin N 4
.esarrollar una aplicacin ue permita realizar consultas
acerca de un determinado curso, los cuales se mostraran en una
lista. El usuario debe seleccionar un curso y en seguida se debe
presentar el !ame del pro$esor encargado del curso 7teor6a8, el
!ame del je$e de prctica 7laboratorio8, as6 como los 1orarios de
teor6a y de laboratorio. El dise3o de la inter$az deber ser
similar al siguiente:
Adela Valenciano Surez Pag. 10 de 11
Aplicaciones p!op#estas+
Implementar una aplicaciones ue realice conersiones de unidades.
%or ejemplo de mm a pulgadas, 2ilos a onzas, etc.
%ara ello utilizar una $ic1a donde se realicen las con#ersiones de
longitud otra para las de #olumen y otra para las de rea.
La inter$az podr6a ser la siguiente.
I!leen"ar una a!licaci#n $ue dada% la% "e!era"ura% de un e% &alcule la edia ' no% la ue%"re (un"o con una
iagen de %ol o nu)e% %eg*n la edia %ea u' al"a o dea%iado )a(a.
Adela Valenciano Surez Pag. 11 de 11

You might also like