jueves, 13 de noviembre de 2008






Se desea elaborar una aplicación que permita controlar el proceso de matrícula en un curso de computación. Para ello se deben recabar los siguientes datos: 1) Curso en que se matricula el alumno, 2) Fecha de matrícula, 3) Apellidos y nombres, 4) Sexo, 5) Dirección, y 6) Distrito de residencia. El diseño de la interfaz debe ser similar a la figura mostrada:









Para seleccionar un curso el usuario deberá hacer click en el botón punteado que se encuentra al lado de la caja de texto. En seguida se presentará un menú de selección por realce en el cual se presenta la relación de todos los cursos disponibles. El curso quedará seleccionado al hacer click en el botón Aceptar.






El mismo tipo de selección deberá realizarse al momento de ingresar el nombre del distrito.






Para el desarrollo de esta aplicación necesitamos tres formularios y un módulo. En primer lugar proceda a añadir un módulo de código al proyecto. Seleccione el Menú Proyecto y elija la opción Agregar módulo.






Del cuadro de diálogo Agregar módulo, en la ficha Nuevo, haga click en el botón Abrir. Luego ingrese el siguiente código en la sección de Declaraciones del módulo que acabamos de añadir:

Public Curso As String
Public Distrito As String
En seguida proceda a cambiar el nombre formulario principal por FrmFichaMatricula. Luego debe añadir los demás formularios necesarios para construir la aplicación. Para tal fin, seleccione el menú Proyecto y elija la opción Agregar formulario. Del cuadro de diálogo Agregar formulario, en la ficha Nuevo, elija la opción Formulario y haga click en el botón Abrir.






En ese instante se añadirá un nuevo formulario al proyecto. Cambie el nombre del nuevo formulario por FrmCurso. Repita el procedimiento anterior para añadir el formulario FrmDistrito.






A continuación copie los pasos del anterior formulario de ficha de matricula con los siguientes cambios:



Añadir sólo 2 marcos. No añadir ningún control de lista. En vez de 4 botones de comando, añadir 6 botones de comando. Luego, establecer las siguientes propiedades para los dos nuevos botones:






Command5

Nombre:CmdCurso

Caption: . . .

Command6

Nombre:CmdDistrito

Caption: . . .



Luego, reemplazar el código del evento Load del formulario por el siguiente:






Private Sub Form_Load()
CboSexo.AddItem "Masculino"
CboSexo.AddItem "Femenino"
End Sub






Luego, suprimir el código asociado al evento Click de los controles de lista LstCursos y LstDistrito. En su lugar añadir lo siguiente:

Private Sub CmdCurso_Click()
Load FrmCurso
FrmCurso.Show vbModal
TxtCurso = Curso
End Sub

Private Sub CmdDistrito_Click()
Load FrmDistrito
FrmDistrito.Show vbModal
TxtDistrito = Distrito
End Sub

A continuación active el formulario FrmCurso, para ello haga click sobre el mismo. En seguida proceda a ubicar los siguientes controles en el formulario:

1 control de lista
1 botones de comando
Luego proceda a establecer las propiedades según se indica:

Form2

Nombre
FrmCurso

BorderStyle
3-Fixed Dialog

Caption
Cursos

List1

Nombre
LstCursos

Text


Command1

Nombre
CmdAceptar

Caption
&Aceptar



Una vez establecidas las propiedades proceda a ingresar el código que se indica a continuación:

Private Sub CmdCancelar_Click()
If MsgBox("¿Desea modificar algún dato?", _
vbQuestion + vbYesNo, "Mensaje") = vbYes Then
LstCursos.Enabled = True
LstDistrito.Enabled = True
TxtCurso.Locked = False
TxtFechaMat.Locked = False
TxtAlumno.Locked = False
CboSexo.Locked = False
TxtDireccion.Locked = False
TxtDistrito.Locked = False
End If



End Sub









Private Sub CmdCurso_Click()
Load FrmCursos
FrmCursos.Show vbModal
TxtCurso = Curso

End Sub









Private Sub CmdDistrito_Click()
Load FrmDistrito
FrmDistrito.Show vbModal
TxtDistrito = Distrito

End Sub









Private Sub CmdGuardar_Click()
LstCursos.Enabled = False
LstDistrito.Enabled = False
TxtCursos.Locked = True
TxtFechaMat.Locked = True
TxtAlumno.Locked = True
CboSexo.Locked = True
TxtDireccion.Locked = True
TxtDistrito.Locked = True
MsgBox "Alumno matriculado", vbInformation, "Mensaje"

End Sub









Private Sub CmdLimpiar_Click()
LstCursos.Enabled = True
LstDistritos.Enabled = True
TxtCurso.Locked = False
TxtFechaMat.Locked = False
TxtAlumno.Locked = False
CboSexo.Locked = False
TxtDireccion.Locked = False
TxtDistrito.Locked = False
TxtCurso = ""
TxtFechaMat = ""
TxtAlumno = ""
CboSexo = ""
TxtDireccion = ""
TxtDistrito = ""
TxtCurso.SetFocus

End Sub









Private Sub CmdSalir_Click()
Unload Me
End Sub






Private Sub Form_Load()
CboSexo.AddItem "Masculino"
CboSexo.AddItem "Femenino"

End Sub









Private Sub Form_Unload(Cancel As Integer)
If MsgBox("¿Desea terminar la aplicación?", _
vbQuestion + vbYesNo, "Pregunta") = vbYes Then
End
Else
Cancel = True
Call CmdLimpiar_Click
End If

End Sub










Private Sub LstCursos_Click()
TxtCursos = LstCursos
End Sub









Private Sub LstDistrito_Click()
TxtDistrito = LstDistrito



End Sub









FORMULARIO DE CURSOS



En este formulario agregamos 1listbox y 1 comando.

Introducimos los siguientes códigos:


Private Sub CmdAceptar_Click()
Curso = LstCursos.Text
FrmCursos.Hide

End Sub



Private Sub Form_Load()
LstCursos.AddItem "Borland C++ Nivel I"
LstCursos.AddItem "Borland C++ Nivel II"
LstCursos.AddItem "Microsoft Visual Basic Nivel I"
LstCursos.AddItem "Microsoft Visual Basic Nivel II"
LstCursos.AddItem "Microsoft Visual FoxPro Nivel I"
LstCursos.AddItem "Microsoft Visual FoxPro Nivel II"
LstCursos.AddItem "Microsoft Visual C++ Nivel I"
LstCursos.AddItem "Microsoft Visual C++ Nivel II"
LstCursos.AddItem "Microsoft SQL Server Nivel I"
LstCursos.AddItem "Microsoft SQL Server Nivel II"
LstCursos.AddItem "Microsoft Power Builder Nivel I"
LstCursos.AddItem "Microsoft Power Builder Nivel II"

End Sub
FORMULARIO DE DISTRITOS


En este formulario agregamos 1listbox y 1 comando.
Introducimos los siguientes códigos:
Private Sub CmdAceptar_Click()
Distrito = LstDistritos.Text
FrmDistrito.Hide
End Sub
Private Sub Form_Load()
LstDistritos.AddItem "Carabayllo"
LstDistritos.AddItem "Comas"
LstDistritos.AddItem "Chaclacayo"
LstDistritos.AddItem "Callao"
LstDistritos.AddItem "Lima"
LstDistritos.AddItem "Chorrillos"
LstDistritos.AddItem "La Molina"
LstDistritos.AddItem "La victoria"
LstDistritos.AddItem "Lince"
LstDistritos.AddItem "El Agustino"
LstDistritos.AddItem "Lurigancho"
End Sub




Se desea elaborar una aplicación que permita controlar el proceso de matrícula en un curso de computación. Para ello se deben recabar los siguientes datos: 1) Curso en que se matricula el alumno, 2) Fecha de matrícula, 3) Apellidos y nombres, 4) Sexo, 5) Dirección, y 6) Distrito de residencia. El diseño de la interfaz debe ser similar a la figura mostrada:

CADENA INVERTIDA



Escriba una función que reciba como argumento una cadena de caracteres y la devuelva en forma inversa, por ejemplo si se ingresa la cadena CORAZON deberá retornar NOZAROC.



Para el desarrollo de esta aplicación, proceda a ubicar los siguientes controles en el formulario:

2 etiquetas
2 cajas de texto
3 botones de comando

En seguida proceda a establecer las propiedades según se indica:

Form1

Nombre
FrmCadInvertida

Caption
Cadena invertida

BorderStyle
3-Fixed Dialog

Label1

Nombre
LblCadena

Autosize
True

Caption
Ingresa una cadena:

Label2

Nombre
LblInvertida

Autosize
True

Caption
Cadena invertida:

Text1

Nombre
TxtCadena

Text


Text2

Nombre
TxtInvertida

Locked
True

Text


Command1

Nombre
CmdAceptar

Caption
&Aceptar

Command2

Nombre
CmdLimpiar

Caption
&Limpiar

Command3

Nombre
CmdSalir

Caption
&Salir

Una vez establecidas las propiedades de la interfaz, proceda a ingresar el siguiente código:

Function CadInvertida(Cadena As String) As String
Dim Invertida() As String * 1
Dim I As Integer
Dim J As Integer
N = Len(Cadena)
ReDim Invertida(N)
For I = 1 To N
Invertida(I - 1) = Mid(Cadena, I, 1)
Next I
For J = (N - 1) To 0 Step -1
CadInvertida = CadInvertida & Invertida(J)
Next J
End Function

Private Sub CmdInvertir_Click()
TxtInvertida = CadInvertida(TxtCadena)
End Sub

Private Sub CmdLimpiar_Click()
TxtCadena = “”
TxtInvertida = “”
TxtCadena.SetFocus
End Sub

Private Sub CmdSalir_Click()
End
End Sub

FICHA DE MATRICULA



Se desea elaborar una aplicación que permita controlar el proceso de matrícula en un curso de computación. Para ello se deben recabar los siguientes datos: 1) Curso en que se matricula el alumno, 2) Fecha de matrícula, 3) Apellidos y nombres, 4) Sexo, 5) Dirección, y 6) Distrito de residencia.
Para el desarrollo de esta aplicación proceda a ubicar los siguientes controles en el formulario:

4 marcos
6 etiquetas
5 cajas de texto
1 cuadro combinado
2 controles de lista
4 botones de comando

En seguida proceda a establecer las propiedades según se indica:
Form1

Nombre
FrmFichaMatricula

BorderStyle
3-Fixed Dialog

Caption
Ficha de matrícula

Frame1

Nombre
FraIngreso

Caption
Ingreso de datos:

Frame2

Nombre
FraOpciones

Caption
Opciones:

Frame3

Nombre
FraCursos

Caption
Cursos:

Frame4

Nombre
FraDistritos

Caption
Distritos:

Label1

Nombre
LblCurso

Caption
Curso:

Label2

Nombre
LblFechaMat

Caption
Fecha de matrícula:

Label3

Nombre
LblAlumno

Caption
Alumno:

Label4

Nombre
LblSexo

Caption
Sexo:

Label5

Nombre
LblDirección

Caption
Dirección:

Label6

Nombre
LblDistrito

Caption
Distrito:

Combo1

Nombre
CboSexo

Text


List1

Nombre
LstCursos

Text


List2

Nombre
LstDistrito

Text


Text1

Nombre
TxtCurso

Text


Text2

Nombre
TxtFechaMat

Text


Text3

Nombre
TxtAlumno

Text


Text4

Nombre
TxtDireccion

Text


Text5

Nombre
TxtDistrito

Text


Command1

Nombre
CmdGuardar

Caption
&Guardar

Command2

Nombre
CmdCancelar

Caption
&Cancelar

Command3

Nombre
CmdLimpiar

Caption
&Limpiar

Command4

Nombre
CmdSalir

Caption
&Salir

Picture
C:\FundVB\Bitmaps\Exit.bmp

Style
1-Graphical

Una vez establecidas las propiedades de la interfaz, proceda a ingresar el código que se indica a continuación:

Private Sub Form_Load()
LstCursos.AddItem “Borland C++ Nivel I”
LstCursos.AddItem “Borland C++ Nivel II”
LstCursos.AddItem “Microsoft Visual Basic Nivel I”
LstCursos.AddItem “Microsoft Visual Basic Nivel II”
LstCursos.AddItem “Microsoft Visual FoxPro Nivel I”
LstCursos.AddItem “Microsoft Visual FoxPro Nivel II”
LstCursos.AddItem “Microsoft Visual C++ Nivel I”
LstCursos.AddItem “Microsoft Visual C++ Nivel II”
LstCursos.AddItem “Microsoft Visual J++ Nivel I”
LstCursos.AddItem “Microsoft Visual J++ Nivel II”
LstCursos.AddItem “Microsoft SQL Server Nivel I”
LstCursos.AddItem “Microsoft SQL Server Nivel II”
LstCursos.AddItem “Microsoft Power Builder Nivel I”
LstCursos.AddItem “Microsoft Power Builder Nivel II”
LstDistrito.AddItem “Callao”
LstDistrito.AddItem “Bellavista”
LstDistrito.AddItem “Carmen de la Legua”
LstDistrito.AddItem “La Perla”
LstDistrito.AddItem “La Punta”
LstDistrito.AddItem “Ventanilla”
LstDistrito.AddItem “Cercado de Lima”
LstDistrito.AddItem “Ancón”
LstDistrito.AddItem “Ate”
LstDistrito.AddItem “Barranco”
LstDistrito.AddItem “Breña”
LstDistrito.AddItem “Carabayllo”
LstDistrito.AddItem “Comas”
LstDistrito.AddItem “Chaclacayo”
LstDistrito.AddItem “Chorrillos”
LstDistrito.AddItem “El Agustino”
LstDistrito.AddItem “Jesús María”
LstDistrito.AddItem “La Molina”
LstDistrito.AddItem “La Victoria”
LstDistrito.AddItem “Lince”
LstDistrito.AddItem “Lurigancho”
LstDistrito.AddItem “Lurín”
LstDistrito.AddItem “Magdalena del Mar”
LstDistrito.AddItem “Miraflores”
LstDistrito.AddItem “Pachacamac”
LstDistrito.AddItem “Pucusana”
LstDistrito.AddItem “Pueblo Libre”
LstDistrito.AddItem “Puente Piedra”
LstDistrito.AddItem “Punta Negra”
LstDistrito.AddItem “Rimac”
LstDistrito.AddItem “San Bartolo”
LstDistrito.AddItem “San Isidro”
LstDistrito.AddItem “Independencia”
LstDistrito.AddItem “San Juan de Miraflores”
LstDistrito.AddItem “San Luis”
LstDistrito.AddItem “San Martín de Porres”
LstDistrito.AddItem “San Miguel”
LstDistrito.AddItem “Santiago de Surco”
LstDistrito.AddItem “Villa María del Triunfo”
LstDistrito.AddItem “San Juan de Lurigancho”
LstDistrito.AddItem “Santa María del Mar”
LstDistrito.AddItem “Santa Rosa”
LstDistrito.AddItem “Los Olivos”
LstDistrito.AddItem “Cieneguilla”
LstDistrito.AddItem “San Borja”
LstDistrito.AddItem “Villa el Salvador”
LstDistrito.AddItem “Santa Anita”
CboSexo.AddItem “Masculino” : CboSexo.AddItem “Femenino”
End Sub
Private Sub Form_Unload(Cancel As Integer)
If MsgBox(“¿Desea terminar la aplicación?”, _
vbQuestion + vbYesNo, “Pregunta”) = vbYes Then
End
Else
Cancel = True
Call CmdLimpiar_Click
End If
End Sub

Private Sub LstCursos_Click()
TxtCursos = LstCursos
End Sub

Private Sub LstDistrito_Click()
TxtDistrito = LstDistrito
End Sub

Private Sub CmdGuardar_Click()
LstCursos.Enabled = False
LstDistrito.Enabled = False
TxtCursos.Locked = True
TxtFechaMat.Locked = True
TxtAlumno.Locked = True
CboSexo.Locked = True
TxtDireccion.Locked = True
TxtDistrito.Locked = True
MsgBox “Alumno matriculado”, vbInformation, “Mensaje”
End Sub

Private Sub CmdLimpiar_Click()
LstCursos.Enabled = True
LstDistrito.Enabled = True
TxtCursos.Locked = False
TxtFechaMat.Locked = False
TxtAlumno.Locked = False
CboSexo.Locked = False
TxtDireccion.Locked = False
TxtDistrito.Locked = False
TxtCursos = “”
TxtFechaMat = “”
TxtAlumno = “”
CboSexo = “”
TxtDireccion = “”
TxtDistrito = “”
TxtCursos.SetFocus
End Sub

Private Sub CmdCancelar_Click()
If MsgBox(“¿Desea modificar algún dato?”, _
vbQuestion + vbYesNo, “Mensaje”) = vbYes Then
LstCursos.Enabled = True
LstDistrito.Enabled = True
TxtCursos.Locked = False
TxtFechaMat.Locked = False
TxtAlumno.Locked = False
CboSexo.Locked = False
TxtDireccion.Locked = False
TxtDistrito.Locked = False
End If
End Sub

Private Sub CmdSalir_Click()
Unload Me
End Sub

PEDIDO DE COTIZACIONES



Elaborar una aplicación que permita seleccionar un artículo de un cuadro combinado (Combo). Apenas el usuario seleccione un artículo se debe mostrar el precio del mismo, el interés es fijo para esta ocasión.
El diseño de la interfaz debe ser similar a la siguiente figura:



Para el desarrollo de esta aplicación, proceda a ubicar los siguientes controles en el formulario:

1 marco
3 etiquetas
1 cuadro combinado
2 cajas de texto
3 botones de opción
2 botones de comando

En seguida proceda a establecer las propiedades según se indica:

Form1

Nombre
FrmCotizacion

BorderStyle
3-Fixed Dialog

Caption
Pedido de cotizaciones

Frame1

Nombre
FraPlazo

Caption
Plazo:

Label1

Nombre
LblArticulo

Caption
Artículo:

Label2

Nombre
LblPrecio

Caption
Precio US$

Label3

Nombre
LblInteres

Caption
Interés:

Combo1

Nombre
CboArticulo

Text


Text1

Nombre
TxtPrecio

Locked
True

Text


Text2

Nombre
TxtInteres

Locked
True

Text


Option1

Nombre
OptPlazo

Caption
6 meses

Value
True

Option2

Nombre
OptPlazo

Caption
12 meses

Value
False

Option3

Nombre
OptPlazo

Caption
24 meses

Value
False

Command1

Nombre
CmdCuotaMensual

Caption
&Cuota mensual

Command2

Nombre
CmdTotal

Caption
&Total

Una vez establecidas las propiedades de la interfaz, haga doble click sobre el formulario e ingrese las siguientes declaraciones en la sección General del módulo de formulario:

Private Type Articulo
Nombre As String * 30
Precio As Double
End Type
Dim A(4) As Articulo, Plazo As Integer
Const Interes = 0.12

Recuerde que un dato declarado en la sección General de un módulo puede ser accedido por todos los procedimientos de dicho módulo. Luego, continúe ingresando el código que se muestra a continuación:

Private Sub Form_Load()
A(0).Nombre = “Monitor SAMSUNG SyncMaster 3”
A(1).Nombre = “Impresora Hewlett Packard DeskJet 930C”
A(2).Nombre = “Impresora Epson Stylus Color 740”
A(3).Nombre = “Microprocesador Pentium I 233 MHZ”
A(0).Precio = 150 : A(1).Precio = 275
A(2).Precio = 145 : A(3).Precio = 80
Dim I As Integer
For I = 1 To 4
CboArticulo.AddItem A(I - 1).Nombre
Next I
TxtInteres = Interes : Plazo = 6
End Sub
Private Sub CboArticulo_Click()
Dim I As Integer
I = CboArticulo.ListIndex
TxtPrecio = A(I).Precio
End Sub

Private Sub OptPlazo_Click(Index As Integer)
Select Case Index
Case 0: Plazo = 6
Case 1: Plazo = 12
Case 2: Plazo = 24
End Select
End Sub

Private Sub CmdCuotaMensual_Click()
Dim Total As Double, CuotaMensual As Double, I As Integer
I = CboArticulo.ListIndex
Total = A(I).Precio * (1 + Interes)
CuotaMensual = Total / Plazo
MsgBox “Cuota Mensual US$” & Str(CuotaMensual)
End Sub

Private Sub CmdTotal_Click()
Dim Total As Double, I As Integer
I = CboArticulo.ListIndex
Total = A(I).Precio * (1 + Interes)
MsgBox “Total US$” & Str(Total)
End Sub

ORDENACION POR BURBUJA



Elabore una aplicación que permita leer N números de tipo entero, y a continuación los visualice ordenados en forma ascendente o descendente.


Para el desarrollo de esta aplicación, proceda a ubicar los siguientes controles en el formulario:

3 marcos
1 caja de texto
1 control lista
2 botones de opción
3 botones de comando

En seguida proceda a establecer las propiedades según se indica:

Form1

Nombre
FrmBurbuja

BorderStyle
3-Fixed Dialog

Caption
Ordenación por burbuja

Moveable
False

Frame1

Nombre
FraNumero

Caption
Ingrese un nuevo número:

Frame2

Nombre
FraLista

Caption
Lista de números:

Frame3

Nombre
FraOrden

Caption
Orden:

Text1

Nombre
TxtNumero

Text


List1

Nombre
LstNumero

List


Option1

Nombre
OptAscendente

Caption
Ascendente

Value
True

Option2

Nombre
OptDescendente

Caption
Descendente

Value
False

Command1

Nombre
CmdAnnadir

Caption
&Añadir

Default
True

Command2

Nombre
CmdOrdenar

Caption
&Ordenar

Command3

Nombre
CmdSalir

Caption
&Salir

Picture
C:\Archivos de programa\Microsoft Visual
Studio\Common\Graphics\Icons\Arrows\
Point04.ico

Style
1-Graphical

Una vez establecidas las propiedades proceda a ingresar el código que se indica a continuación:
Private Sub CmdAceptar_Click()
If IsNumeric(TxtNumero.Text) Then
LstNumero.AddItem TxtNumero.Text
TxtNumero.Text = “”
TxtNumero.SetFocus
Else
MsgBox “Ingrese un número”, vbCritical, “Mensaje”
TxtNumero.SelStart = 0
TxtNumero.SelLength = Len(TxtNumero.Text)
TxtNumero.SetFocus
End If
End Sub

Private Sub CmdOrdenar_Click()
Dim I As Integer, J As Integer, T As Integer, N As Integer
Dim A() As Integer
N = LstNumero.ListCount
ReDim A(N)
For I = 0 To N - 1
A(I) = LstNumero.List(I)
Next I
If OptAscendente.Value Then
For I = 0 To N - 2
For J = I + 1 To N - 1
If A(I) > A(J) Then
T = A(I)
A(I) = A(J)
A(J) = T
End If
Next J
Next I
End If

If OptDescendente.Value Then
For I = 0 To N - 2
For J = I + 1 To N - 1
If A(I) < t =" A(I)" i =" 0" cancel =" True">

CIFRAS Y DIVISORES DE UN NUMERO



Construya una aplicación que permita el ingreso de un número entero y muestre en pantalla la siguiente información: 1) Cantidad de cifras, 2) Suma de cifras impares, 3) Suma de cifras pares, 4) Suma total de cifras, 5) Cifra mayor, 6) Cifra menor y 7) Divisores de dicho número.

El diseño de la interfaz debe ser similar a la figura siguiente:

Para el desarrollo de esta aplicación, proceda a ubicar los siguientes controles en el formulario:

4 marcos
7 etiquetas
8 cajas de texto
1 botón de comando

En seguida proceda a establecer las propiedades según se indica:

Form1

Nombre
FrmNumeroPerfecto

BorderStyle
3-Fixed Dialog

Caption
Los 3 primeros números perfectos

Moveable
False

StartUpPosition
2-CenterScreen


Frame1

Nombre
FraEntrada

Caption


Frame2

Nombre
FraSalida

Caption


Frame3

Nombre
FraDivisores

Caption
Divisores

Frame4

Nombre
FraSalir

Caption


Label1

Nombre
LblNumero

AutoSize
True

Caption
Ingrese un número:

Label2

Nombre
LblCantCifras

AutoSize
True

Caption
Cantidad de cifras:

Label3

Nombre
LblSumImpares

AutoSize
True

Caption
Suma de cifras impares:

Label4

Nombre
LblSumPares

AutoSize
True

Caption
Suma de cifras pares:

Label5

Nombre
LblSumTotal

AutoSize
True

Caption
Suma total de cifras:

Label6

Nombre
LblCifraMayor

AutoSize
True

Caption
Cifra mayor:

Label7

Nombre
LblCifraMenor

AutoSize
True

Caption
Cifra menor:

Text1

Nombre
TxtNumero

Text


Text2

Nombre
TxtCantCifras

Locked
True

Text


Text3

Nombre
TxtSumImpares

Locked
True

Text

Text4

Nombre
TxtSumPares

Locked
True

Text


Text5

Nombre
TxtSumTotal

Locked
True

Text


Text6

Nombre
TxtCifraMayor

Locked
True

Text


Text7

Nombre
TxtCifraMenor

Locked
True

Text


Text8

Nombre
TxtDivisores

MultiLine
True

Locked
True

ScrollBars
2-Vertical

Text


Command3

Nombre
CmdSalir

Caption
&Salir

Picture
C:\FundVB\Bitmaps\Exit.bmp

Style
1-Graphical

Una vez establecidas las propiedades proceda ha ingresar el código que se indica a continuación:

Private Sub CmdAceptar_Click()
If IsNumeric(TxtNumero) Then
Dim S As Integer, SI As Integer, SP As Integer
Dim May As Integer, Min As Integer
Dim Cad As String
Dim I As Integer, J As Integer
N = CLng(TxtNumero)
M = CLng(TxtNumero)
Cad = “”
I = 0
J = 1
S = SP = SI = 0
For J = 1 To N
If (N Mod J = 0) Then
Cad = Cad & J & vbCrLf
End If
Next J
While (N > 0)
If ((N Mod 10) Mod 2) = 0 Then
SP = SP + (N Mod 10)
Else
SI = SI + (N Mod 10)
End If
S = S + (N Mod 10)
N = N \ 10
I = I + 1
Wend
May = Mid(TxtNumero, 1, 1)
Men = May
While (M > 0)
If May < (M Mod 10) Then
May = M Mod 10
End If
If Men > (M Mod 10) Then
Men = M Mod 10
End If
M = M \ 10
Wend
TxtCantCifras = Str(I)
TxtSumImpares = Str(SI)
TxtSumPares = Str(SP)
TxtSumTotal = Str(S)
TxtCifraMayor = Str(May)
TxtCifraMenor = Str(Men)
TxtDivisores = Cad
Else
MsgBox “Debe ingresar un número”, vbCritical, “Mensaje”
TxtNumero.SetFocus
End If
End Sub

Private Sub CmdSalir_Click()
If MsgBox(“¿Desea terminar la aplicación?”, _
vbQuestion + vbYesNo, "Pregunta") = vbYes Then
End
Else
Cancel = True
TxtNumero.SetFocus
End If
End Sub