Sunteți pe pagina 1din 45

Asignatura: Programación I

Unidad V:

Sentencias básicas del Lenguaje de Programación Visual Basic

Unidad Didáctica

Tutora: Ing. Mery Pérez de Colombo

Barquisimeto, 2018
Unidad Didáctica V- Sentencias Visual Basic

Asignatura: Programación I

Unidad V: Sentencias básicas del Lenguaje de Programación Visual Basic

Unidad Didáctica

Objetivo Terminal

Aplicar las sentencias básicas del lenguaje Visual Basic en la resolución de


problemas.

Objetivos específicos

Al finalizar la Unidad V, el estudiante estará en capacidad de:

Aplicar los tipos de estructuras selectivas en la resolución de


problemas, usando lenguaje de programación Visual Basic.
Aplicar los tipos de estructuras repetitivas en la resolución de
problemas, usando lenguaje de programación Visual Basic.
Manejar el entorno de trabajo del lenguaje Visual Basic.
Aplicar el enfoque de programación conducida por eventos y
orientada a objetos en la resolución de problemas.

Tutora: Ing. Mery Luz Pérez -2018 2


2
Unidad Didáctica V- Sentencias Visual Basic

Asignatura: Programación I

Unidad V: Sentencias básicas del Lenguaje de Programación Visual Basic

Unidad Didáctica
Contenido

Contenido
Pag.
Introducción……………………………………………………………………... 3

1. Instrucciones básicas del lenguaje Visual Basic: …………………... 5


1.1. Entrada de datos …………………………………………………… 5
1.2. Salida de datos……………………………………………………… 7
1.3. Asignación ……………………………………………………….… 9
1.4. Selectivas o alternativas…………………………………………… 14
 Simple …………………………………………………..…...… 14
 Doble ……………………………………………………..…… 16
 Anidada …………………………………………………..…… 19
 Múltiple ………………………………………………….…… 22
1.5. Repetitivas o iterativas ……………………………………….…… 24
 Haga Desde ………………………………………………...… 25
 Haga Mientras ……………………………………………..… 29
 Repita Hasta ……………………………………………….… 32
1.6. Entorno Visual Basic ………………………………………….…… 35
1.7. Uso de botones y controles……………………………………….. 36
Ejercicios propuestos…………………………………………………… 56
Bibliografía…………………………………………………………….…. 58

Tutora: Ing. Mery Luz Pérez -2018 3


3
Unidad Didáctica V- Sentencias Visual Basic

Introducción

La presente unidad didáctica está enfocada en la Unidad V del contenido programático de


la asignatura Programación I, referida a las sentencias básicas del Lenguaje de Programación
Visual Basic.

Como se indicó en la Unidad IV, Visual Basic es uno de los lenguajes de programación
más populares a nivel mundial ya que está orientado al desarrollo de aplicaciones bajo Windows.
El lenguaje base es el BASIC asistido por la programación orientada a eventos, pero basada en el
uso de objetos, con lo cual es posible diseñar aplicaciones con interfaz gráfica del usuario de
forma fácil, sencilla, rápida, agradable e intuitiva.

En esta unidad didáctica se estudiaran las instrucciones básicas del lenguaje


Visual Basic para la lectura y e impresión de datos, las estructuras selectivas que
permiten elegir una secuencia de instrucciones dependiendo del resultado de una
condición, y las estructuras repetitivas, que ejecutan un conjunto de sentencias un
número determinado de veces. Para cada caso, se indica la sintaxis del lenguaje con
ejemplos de aplicación.

Puesto que Visual Basic es un lenguaje de desarrollo para Windows, también se


proporcionan los elementos del entorno de programación para el proceso de diseño de
aplicaciones con el uso de formularios y controles, así como las propiedades, métodos y
eventos que tienen asociados estos controles. Entre los cuales están, los objetos label,
cajas de textos, botones de comandos, listas, combos, botones de opciones y cajas de
verificación.

Este material servirá de base para el estudio del contenido programático de la


asignatura Programación II, ubicada en el III semestre de la carrera de Ingeniería Civil.

Tutora: Ing. Mery Luz Pérez -2018 4


4
Unidad Didáctica V- Sentencias Visual Basic

Asignatura: Programación I

Unidad V: Sentencias básicas del Lenguaje de Programación Visual Basic

1. Instrucciones básicas del lenguaje Visual Basic

Las instrucciones de un lenguaje programación como el Visual Basic son las que
permiten crear la estructura de un programa. Una instrucción es una línea de texto que
indica una o más operaciones a realizar. Así un programa está conformado por
sentencias de declaraciones de variables, declaraciones de constantes, procedimientos y
funciones definidas por el usuario.

Una característica común presente en la mayoría de los programas es que en ellos


se encuentran tres secciones, las cuales son, entrada de datos, procesamientos de estos
datos y la obtención de resultados. A continuación se detallan la entrada y salida de
datos en Visual Basic.

Entrada de Datos.

En Visual Basic existen varias formas de proporcionar datos de entrada a una


aplicación. Para ello, se pueden usar las cajas de diálogo predefinidas o los controles de
la caja de herramientas (cajas de textos, etiquetas, botones de pulsaciones, etc.)

Caja de diálogo predefinida: visualiza una ventana con un mensaje de


solicitud de dato de entrada, y espera a que el usuario escriba un valor por teclado, o
presione clip en algún botón, devolviendo un dato tipo String con el contenido del cuadro texto.

Sintaxis:

NomVar = InputBox (“ Mensaje”, [Título], [Valor], [ Xpos],[ Ypos ])

Donde:
NomVar: es un nombre válido de variable de cualquier tipo de dato.
Mensaje: es una constante de caracteres definida entre doble comillas, que indica
un mensaje de petición o solicitud de dato al usuario.
Título: es la constante de caracteres que se visualiza en la barra de título de la
caja de diálogo, si se omite, se visualiza el nombre de la aplicación
Valor: específica el texto que aparecerá en la caja de texto, si se omite dicho
valor, la caja de texto aparecerá vacía.

Tutora: Ing. Mery Luz Pérez -2018 5


5
Unidad Didáctica V- Sentencias Visual Basic

Xpos, Ypos: son valores opcionales y representan las coordenadas X e Y


respectivamente, donde aparecerá la caja de diálogo. Si se omiten, el cuadro de diálogo
se centrará horizontalmente.

Nota:
La función InputBox devuelve lo escrito en el cuadro de dialogo, cuando el usuario
pulsa clic en el botón Aceptar o presiona <ENTER>.
La función devuelve una cadena de caracteres de longitud cero (""), sí el usuario
presiona clic en el botón Cancelar
Si desea omitir algunos argumentos de posición en el formato de Inputbox, debe incluir
el delimitador de coma correspondiente.

Ejemplo:

Dadas las siguientes sentencias en Visual Basic, se visualiza la ejecución de cada


una de ellas.

Private Sub Form_Load()


Dim Calif1 As Single, Calif2 As Single, CalifEC As Single, CalifTP As Single
Calif1 = InputBox("Ingrese Calific. Parcial 1:")
Calif2 = InputBox("Ingrese Calific. Parcial 2:")
CalifEC = InputBox("Ingrese Nota Evaluación Continua :")
End Sub

Al ejecutar la aplicación, se observan las siguientes ventanas en Visual Basic:

Calif1 = InputBox("Ingrese Calific. Parcial 1:")

Calif2 = InputBox("Ingrese Calific. Parcial 2:")

CalifEC = InputBox("Ingrese Nota Evaluación Continua :")

Tutora: Ing. Mery Luz Pérez -2018 6


6
Unidad Didáctica V- Sentencias Visual Basic

Salida de datos.

Método Print

Una de las formas de salida de datos en Visual Basic, es por medio del uso del
método Print, el cual permite escribir textos en un objeto, o en una impresora.

Sintaxis:
Objeto.Print Lista expresiones [ ; | ,]
Donde:

Objeto: Es el tipo de objeto, que puede ser en la ventana de un formulario,


objeto picturebox, o en una impresora. Al omitir, la impresión se visualiza en el
formulario actual.

Lista de expresiones: puede ser cualquier expresión numérica o alfanumérica


encerrada entre comillas, o combinaciones de las anteriores, con separadores de comas o puntos
y comas para los elementos de la lista.

Notas:
Hay dos tipos de separadores para los elementos de la lista de expresiones.
El carácter punto y coma (;) hace que se imprima inmediatamente a
continuación de la expresión anterior. La coma (,) hace que se vaya a la
siguiente área de salida, siendo éstas de 14 caracteres, esto es, en las
columnas 1, 15, 29, etc.
Las constantes numéricas positivas van precedidas por un espacio en blanco y
separadas entre sí por otro espacio en blanco. Si son negativas el segundo
espacio es ocupado por el signo (-)
Al utilizar el método Print debe incorporarse la sentencia show.

Ejemplo:

Las siguientes instrucciones son líneas de impresión con la sentencia Print.


Show
Print "La Nota sobre 100 % es ="; NotaF100
Print "La Nota equivalente sobre 20 pts.es= "; NotaF20

La siguiente ventana de Formulario muestra la salida


impresa de estas líneas en Visual Basic.

Tutora: Ing. Mery Luz Pérez -2018 7


7
Unidad Didáctica V- Sentencias Visual Basic

Salida de datos con Cuadro de diálogo MsgBox

Permite mostrar información al usuario en un cuadro de dialogo, y devuelve


el valor del botón seleccionado por el usuario. Se utilizan básicamente para alertar al
usuario sobre un evento ocurrido en la aplicación.

Sintaxis:

MsgBox Mensaje [,Valor][,Título]

Donde:

Mensaje: es una expresión de cadena que representa el mensaje a mostrar en


el cuadro de dialogo. La longitud máxima del mensaje es hasta 1024 caracteres.

Valor: es opcional e indica un valor numérico equivalente a la suma de los


valores que especifican el número y el tipo de los botones que se desean mostrar, así
como el estilo de ícono que se va a utilizar.

Título: es una expresión de cadena que se muestra en la barra de título del


cuadro de diálogo. Al omitir se muestra el nombre de la aplicación en la barra de título.

Algunos de los valores del argumento Valor se muestran en la siguiente tabla:


.
Constante Valor Descripción
vbOKOnl 0 Muestra solamente el botón Aceptar.
vbOKCancel 1 Muestra botones Aceptar y Cancelar.
vbYesNo 4 Muestra botones Sí y No
vbRetryCancel 5 Muestra botones Reintentar y Cancelar.
vbCritical 16 Muestra icono de mensaje crítico
vbExclamation 48 Muestra icono de mensaje de advertencia.
vbInformation 64 Muestra icono de mensaje de información
Nota: Los cuadros de diálogo MsgBox actúan como cuadros de diálogo
modales, ya que requieren una acción o respuesta del usuario, por lo cual, se debe
cerrar para continuar ejecutando la aplicación.
Ejemplo:
Al ejecutar el siguiente código de aplicación:

Private Sub Form_Load()


MsgBox "Es una demostración de caja de mensaje", vbOKOnly
End Sub

Se muestra la siguiente ventana de MsgBox

Tutora: Ing. Mery Luz Pérez -2018 8


8
Unidad Didáctica V- Sentencias Visual Basic

Instrucción de Asignación en Visual Basic.

Permite asignar un dato a una variable, y posteriormente almacenar dicho valor


en una posición de memoria.
Sintaxis:

NomVar = Expresión

Donde:
NomVar: es el nombre que tendrá la variable que almacenará el dato.
Expresión: Puede ser una constante, una variable o una expresión valida.

Ejemplos:
NotaF100 = Calif1 + Calif2 + Calif3 + CalifEC + CalifTP
NotaF20 = NotaF100 * 20 / 100
Notas:

El signo = se considera en Visual Basic un operador relacional y permite la


asignación y no la igualdad como en álgebra.
Al asignar un valor real a una variable entera se almacenará como entero,
redondeando cuando el primer dígito de la parte decimal sea mayor a 5.
No se permiten asignar datos de cadena a una variable numérica y viceversa.

Ejemplo de aplicación con lectura, impresión y asignación en Visual Basic:

La evaluación de la materia Programación I, se planifica de la siguiente


forma: dos exámenes parciales de 25 % cada uno, Nota de evaluación continua de 35 % y
Trabajo práctico de 15 %. Diseñe un Algoritmo que permita obtener e imprimir:
1. La nota final sobre 100%
2. La nota equivalente en escala de 20 puntos.
Solución
a) Análisis del Problema
Datos de Entrada Proceso Datos de Salida
Calific. Parcial 1
 Calif1 - La nota final
Calific. Parcial 2 NotaF100 = Calif1+ Calif2+ CalifEC +CalifTP  NotaF100
 Calif2
Evaluac. Continua - La nota sobre 20
NotaF20 = NotaF100 * 20 / 100
 CalifEC Pts.
Trabajos Prácticos  NotaF20
 CalifTP

b) La aplicación en lenguaje de programación Visual Basic, es como sigue.

Tutora: Ing. Mery Luz Pérez -2018 9


9
Unidad Didáctica V- Sentencias Visual Basic

Private Sub Form_Load()


Dim Calif1 As Single, Calif2 As Single, CalifEC As Single
Dim CalifTP As Single, NotaF100 As Single, NotaF20 As Single
Calif1 = InputBox("Ingrese Calific. Parcial 1:")
Calif2 = InputBox("Ingrese Calific. Parcial 2:")
CalifEC = InputBox("Ingrese Nota Evaluación Continua :")
CalifTP = InputBox("Ingrese Nota Trabajos Prácticos:")
NotaF100 = Calif1 + Calif2 + Calif3 + CalifEC + CalifTP
NotaF20 = NotaF100 * 20 / 100
Show
Print "La Nota sobre 100 % es ="; NotaF100
Print "La Nota equivalente sobre 20 pts.es= "; NotaF20
End Sub

c) La ejecución de esta aplicación se visualiza en las siguientes ventanas:


Datos de entrada:

Datos de salida:

Inserción de comentarios en una aplicación Visual Basic.

Es una instrucción precedida de una comilla simple, con la cual Visual Basic
no ejecuta ninguna acción sobre ella, por lo cual dicha orden no es ejecutable. Esta
sentencia se utiliza para documentar o indicar cierta explicación con respecto a la parte
lógica correspondiente a un segmento de código.
Ejemplos:
‘ Declaración de Variables locales
‘ Inicio del Ciclo repetitivo

Tutora: Ing. Mery Luz Pérez -2018 1


0
Unidad Didáctica V- Sentencias Visual Basic

Separadores de sentencias
Se pueden escribir varias sentencias en una sola línea, colocando dos puntos
entre ellas, como separador de sentencias.
Ejemplo:
Cont1 = 0: MayorNota= 0 : Acumnotas = 0

1.4. Estructuras Selectivas o decisivas en Visual Basic


De acuerdo al número de alternativas posibles a seleccionar, las estructuras
selectivas en Visual Basic pueden ser:
 Simple
 Doble
 Anidada
 Múltiple.

Estructura Selectiva Simple.


Este tipo de estructura permite ejecutar una o más acciones, si una
condición determinada resulta ser verdadera. Para ello, se evalúa una condición o
expresión lógica, lo que produce un valor verdadero o falso, y sí la condición es
verdadera, se ejecuta la sentencia X; de lo contrario, sí la condición es falsa no se
ejecuta ninguna acción y se sigue el flujo secuencial de la aplicación.

La estructura selectiva simple puede presentarse en dos formatos:

Formato1: La estructura If ejecuta una sola sentencia X

If Condición Then Sent. X

Formato2: La estructura ejecuta un bloque de sentencias.

If Condición Then
Sent. X1
Sent. X2
:
Sent. Xn
End If
Donde:

Condición: es una expresión numérica, relacional, lógica o de cadena, que al ser


evaluada producirá un resultado verdadero o falso.

Notas:

Tutora: Ing. Mery Luz Pérez -2018 1


1
Unidad Didáctica V- Sentencias Visual Basic

Pueden existir una o más condiciones separadas por operadores lógicos.


Al evaluar la condición Visual Basic interpreta con un resultado de valor
numérico cero (0) si es falsa, y diferente de cero (<>0) si es verdadera.

Ejemplo de Aplicación con estructura Selectiva Simple.


Un centro de comunicaciones desea automatizar el sistema de Facturación de sus
clientes. Para ello se requiere leer los siguientes datos de entrada de UN cliente: Nombre del
cliente, Tipo de Operadora (1=Movilnet, 2=Movistar), Minutos de duración de la llamada y el
Turno (Diurno, Nocturno).
La tarifa por minuto de llamadas para Movilnet tiene un costo de 0,300 Bs. y para
Movistar el costo es de 0,250 Bs. Considere además, que sí el turno es nocturno tiene un
incremento del 10% sobre el monto a pagar.
Diseñe una aplicación en Visual Basic que permita hacer uso de la estructura
selectiva simple para calcular y mostrar:
1. El monto de la llamada
2. El monto por incremento según el turno.
3. El monto a pagar por la llamada.
Solución:
a) Análisis del Problema

Dato de Entrada Proceso Dato de Salida


Nombre de cliente If TipO = 1 Then
 NomCte MtoLLam = MinDur * 0.3 Monto de la
Tipo Operadora End If llamada
 TipO If TipO = 2 Then MtoLLam
(1=Movilnet, MtoLLam = MinDur * 0.25
2=Movistar) End If Monto Incremento
If Tur = "D" Then  MtoIncre
Minutos de
MtoIncre = 0
duración de la llamada Monto de Pago
End If
MinDur  MtoPago
If Tur = "N" Then
Turno MtoIncre = MtoLLam * 10 / 100
 Tur End If
(Diurno, Nocturno). MtoPago = MtoLLam + MtoIncre

b) Abrir la aplicación Visual Basic, e insertar el siguiente código en la ventana de


Código del Visual Basic.
Private Sub Form_Load()
Dim NomCte As String, Tur As String
Dim TipO As Integer, MinDur As Integer
Dim MtoLLam As Single, MtoIncre As Single, MtoPago As Single
Show
NomCte = InputBox("Ingrese nombre del Cliente:")
TipO = InputBox("Ingrese Tipo Operadora <1>Movilnet <2>MoviStar:")
MinDur = InputBox("Ingrese duración de la llamada en minutos:")

Tutora: Ing. Mery Luz Pérez -2018 1


2
Unidad Didáctica V- Sentencias Visual Basic

Tur = InputBox("Ingrese Turno <D>iurno, <N>octurno:")


If TipO = 1 Then
MtoLLam = MinDur * 0.3
End If
If TipO = 2 Then
MtoLLam = MinDur * 0.25
End If
If Tur = "D" Then
MtoIncre = MtoLLam * 10 / 100
End If
If Tur = "N" Then
MtoIncre = MtoLLam * 10 / 100
End If
MtoPago = MtoLLam + MtoIncre
Print "Factura del Cliente: "; NomCte
Print "El monto de llamada ="; MtoLLam
Print " El Monto de Incremento por turno = "; MtoIncre; " Bs."
Print "El Monto a Pagar = "; MtoPago; " Bs."
End Sub

d) Ejecutar la aplicación con los siguientes datos: Nombre de Cliente: Pedro Pérez;
Tipo de Operadora: 2; minutos de duración llamada: 20 min.; Turno: N. A
continuación se muestra la siguiente información en la ventana de Form1.

Estructura Selectiva Doble

Esta sentencia permite efectuar una selección entre dos alternativas u opciones
posibles, dependiendo del cumplimiento o no, de una determinada condición:
Si la condición es verdadera, ejecuta la(s) sentencia(s) X.
Si la condición es falsa, ejecuta la(s) sentencia(s) Y.

Sintaxis:
If < Condición > Then
Sent. X1
Sent. X2
:
Sent. Xn
Else
Sent. Y1
Tutora: Ing. Mery Luz Pérez -2018 :
1
Sent. Yn 3
End If
Unidad Didáctica V- Sentencias Visual Basic

Donde:

Condición: es una expresión numérica, relacional, lógica o de cadena, que al ser


evaluada producirá un resultado verdadero o falso.
Reglas de Funcionamiento.
Las sentencias X, Y pueden ser simples (una sola acción) o compuestas
(un bloque de acciones).
Cualquier número de sentencias ejecutables pueden aparecer después
de la cláusula ENTONCES o SINO, cada una de ellas escritas en líneas diferentes.

Ejemplo de Aplicación con Estructura Selectiva Doble.

Un centro de comunicaciones desea automatizar el sistema de Facturación de sus


clientes. Para ello se requiere leer los siguientes datos de entrada de UN cliente: Nombre del
cliente, Tipo de Operadora (1=Movilnet, 2=Movistar), Minutos de duración de la llamada y el
Turno (Diurno, Nocturno).
La tarifa por minuto de llamadas para Movilnet tiene un costo de 0,300 Bs. y
para Movistar el costo es de 0,250 Bs. Considere además, que sí el turno es nocturno tiene un
incremento del 10% sobre el monto a pagar.
Diseñe una aplicación en Visual Basic que permita hacer uso de la estructura
selectiva doble para calcular y mostrar:
1. El monto de la llamada
2. El Monto por incremento según el turno.
3. El monto a pagar por la llamada.

Solución:
a) Análisis del Problema.
Dato de Entrada Proceso Dato de Salida

Tutora: Ing. Mery Luz Pérez -2018 1


4
Unidad Didáctica V- Sentencias Visual Basic

Nombre de cliente
 NomCte If TipO = 1 Then Monto de la
Tipo Operadora MtoLLam = MinDur * 0.3 llamada
 TipO Else MtoLLam
(1=Movilnet, MtoLLam = MinDur * 0.25
2=Movistar) End If Monto Incremento
Minutos de If Tur = "D" Then  MtoIncre
duración de la llamada MtoIncre = 0
MinDur Else
Monto de Pago
Turno MtoIncre = MtoLLam * 10 / 100
 MtoPago
 Tur End If
(Diurno, Nocturno) MtoPago = MtoLLam + MtoIncre

b) Abrir la aplicación Visual Basic, y transcribir el siguiente código en la ventana de


Código del Visual Basic.

Private Sub Form_Load()


Dim NomCte As String, Tur As String
Dim TipO As Integer, MinDur As Integer
Dim MtoLLam As Single, MtoIncre As Single, MtoPago As Single
Show
NomCte = InputBox("Ingrese nombre del Cliente:")
TipO = InputBox("Ingrese Tipo Operadora <1>Movilnet <2>MoviStar:")
MinDur = InputBox("Ingrese duración de la llamada en minutos:")
Tur = InputBox("Ingrese Turno <D>iurno, <N>octurno:")
If TipO = 1 Then
MtoLLam = MinDur * 0.3
Else
MtoLLam = MinDur * 0.25
End If
If Tur = "D" Then
MtoIncre = MtoLLam * 10 / 100
Else
MtoIncre = MtoLLam * 10 / 100
End If
MtoPago = MtoLLam + MtoIncre
Print "Factura del Cliente: "; NomCte
Print "El monto de llamada ="; MtoLLam
Print " El Monto de Incremento por turno = "; MtoIncre; " Bs."
Print "El Monto a Pagar = "; MtoPago; " Bs."
End Sub

c) Ejecutar la aplicación con los siguientes datos: Nombre de Cliente: Juan Perez; Tipo
de Operadora: 1 ; minutos de duración llamada: 7 min.; Turno: D. A continuación

Tutora: Ing. Mery Luz Pérez -2018 1


5
Unidad Didáctica V- Sentencias Visual Basic

se visualiza la ventana Form1 como se muestra:

Estructura Selectiva Anidada


Se dice que una estructura selectiva está anidada cuando después de la
cláusula Then o Else, aparece otra sentencia selectiva If Then … u otra estructura If
Then …Else. Esto significa que esta estructura puede contener otra estructura selectiva,
y ésta a su vez, puede contener otra estructura selectiva, y así sucesivamente.
Sintaxis:

If Condición1 then
Instr. X1
:
Instr. Xn
Else
If Condición2 then
Instr. Y1
:
Instr. Yn
Else
Instr. Z1
:
Instr. Zn
End If
End If

Donde:
Condición1 , Condición2 ,… : son expresiones numéricas, relacionales, lógicas o
de cadena, que al ser evaluadas producirán un resultado verdadero o falso.

Ejemplo de Aplicación con Estructura Selectiva Anidada.


Un centro de comunicaciones desea automatizar el sistema de Facturación de sus
clientes. Para ello se requiere leer los siguientes datos de entrada de UN cliente: Nombre del
cliente, Tipo de Operadora (1=Movilnet, 2=Movistar), Minutos de duración de la llamada y el
Turno (Diurno, Nocturno).
La tarifa por minuto de llamadas para Movilnet tiene un costo de 0,300 Bs. y
para Movistar el costo es de 0,250 Bs. Considere además, que sí el turno es nocturno tiene un
incremento del 10% sobre el monto a pagar.
Diseñe una aplicación en Visual Basic que permita hacer uso de la estructura
selectiva anidada, para calcular y mostrar:
1. El monto de la llamada y el monto por incremento según el turno.

Tutora: Ing. Mery Luz Pérez -2018 1


6
Unidad Didáctica V- Sentencias Visual Basic

2. El monto a pagar por la llamada.


Solución:
a) Abrir la aplicación Visual Basic,
b) Luego, transcribir el siguiente código en la ventana de Código del Visual Basic.

Private Sub Form_Load()


Dim NomCte As String, Tur As String
Dim TipO As Integer, MinDur As Integer
Dim MtoLLam As Single, MtoIncre As Single, MtoPago As Single
NomCte = InputBox("Ingrese nombre del Cliente:")
TipO = InputBox("Ingrese Tipo Operadora <1>Movilnet <2>Movistar:")
MinDur = InputBox("Ingrese duración de la llamada en minutos:")
Tur = InputBox("Ingrese Turno <D>iurno, <N>octurno:")
Show
If TipO = 1 Then
MtoLLam = MinDur * 0.3
Else
If TipO = 2 Then
MtoLLam = MinDur * 0.25
End If
End If
If Tur = "D" Then
MtoIncre = 0
Else
If Tur = "N" Then
MtoIncre = MtoLLam * 10 / 100
End If
End If
MtoPago = MtoLLam + MtoIncre
Print "Factura del Cliente: "; NomCte
Print "El monto de llamada ="; MtoLLam
Print " El Monto de Incremento por turno = "; MtoIncre; " Bs."
Print "El Monto a Pagar = "; MtoPago; " Bs."
End Sub

c) Ejecutar la aplicación con los siguientes datos: Nombre de Cliente: Angel; Tipo de
Operadora: 2; minutos de duración llamada: 5
min.; Turno: N. A continuación, se muestran los
datos de salida en la ventana del Formulario:

Estructura Selectiva If.. ElseIf

Tutora: Ing. Mery Luz Pérez -2018 1


7
Unidad Didáctica V- Sentencias Visual Basic

Visual Basic presenta un formato especial para la estructura selectiva


anidada If.. ElseIf, la cual hace posible anidar en varios niveles de condiciones sin
necesidad de cerrar cada sentencia If con la sentencia End If, sino solo la primera
sentencia If de inicio de la estructura.

Sintaxis: If Condición1 then


Instr. X1
:
Instr. Xn
ElseIf Condición2 then
Instr. Y1
:
Instr. Yn
Else
Instr. Z1
:
Instr. Zn
End If
Donde:
Condición1 , Condición2 ,… : expresiones numéricas, relacionales, lógicas o de
cadena, que al ser evaluadas producirán un resultado verdadero o falso.

Ejemplo de Aplicación con Estructura Selectiva If.. ElseIf

Para el caso de la aplicación que se viene ilustrando en las estructuras selectivas, el


segmento con la estructura selectiva If.. ElseIf se establece como se indica:

If TipO = 1 Then
MtoLLam = MinDur * 0.3
ElseIf TipO = 2 Then
MtoLLam = MinDur * 0.25
End If
If Tur = "D" Then
MtoIncre = 0
ElseIf Tur = "N" Then
MtoIncre = MtoLLam * 10 / 100
End If

Estructura Selectiva Múltiple.


La estructura selectiva múltiple permite la selección de un grupo particular
de sentencias entre varios grupos posibles; para ello, se evalúa una expresión que podrá
tomar N valores distintos V1, V2,…Vn. Según se elija uno de estos valores, se ejecutará
uno de los N bloques de instrucciones establecidos. Esta estructura hace una selección
de un conjunto de instrucciones a partir de una lista de diferentes opciones.

Tutora: Ing. Mery Luz Pérez -2018 1


8
Unidad Didáctica V- Sentencias Visual Basic

Sintaxis:

Select Case Expresión


Case valor1 Donde:
Inst. X1
: -Expresión: es cualquier expresión numérica, de
Inst. Xn caracteres (cadena), lógica u objeto Visual Basic.
Case valor2
Inst. Y1 -valor1, valor2,…: representa una o más
: expresiones numéricas o de caracteres, separadas
Inst. Yn por comas, que se comparan con el valor de
: Expresión.
Case Else
Inst. Z1 -bloque Instruc.X1... bloque InstrucZ :
: representa una instrucción o bloque de
Inst. Zn instrucciones que se ejecutan cuando exista
End Select coincidencia con el valor de Expresión.

La lista de valores valor1, valor2,… se puede establecer en cualquiera de las


formas siguientes:
- expresión [, expresión  ...
- expresión To expresión
- IS operador-relacional expresión
- combinación de las anteriores separadas por comas.

Las Instrucciones del Case Else, solo se ejecutan si el valor de Expresión no coincide con
ningún valor de Lista de valores establecida.

Reglas de Funcionamiento
Se evalúa la expresión y busca la primera sentencia CASE que incluya el
valor numérico o de cadena de la expresión; cuando haya una coincidencia se ejecutará
a continuación, el correspondiente bloque de sentencias.
Si no existe un valor numérico o de cadena igual al de la expresión en las
sentencias CASE planteadas, entonces se ejecutan las sentencias a continuación de CASE
ELSE. Si no existe la sentencia CASE ELSE, el control pasa a la siguiente sentencia a
continuación de la cláusula End Select.
Debe existir una concordancia entre el tipo de datos de la expresión y
los valores de la lista de expresiones.
Los valores de la lista listaexpr1, listaexpr2,... , pueden ser :
 Una constante.
 Una variable.
 Un operador matemático, relacional o lógico.
 Un rango expresado en el formato “X To Y”, donde X e Y
pueden ser datos constantes o variables.

Tutora: Ing. Mery Luz Pérez -2018 1


9
Unidad Didáctica V- Sentencias Visual Basic

Ejemplo de Aplicación con Estructura Selectiva Múltiple.


Para el caso de la aplicación que se viene ilustrando en las estructuras selectivas, se
requiere diseñar una aplicación en Visual Basic que permita hacer uso de la estructura
selectiva múltiple, para calcular y mostrar:
1. El Monto por llamada y el monto de incremento según el turno.
2. El monto a pagar por la llamada.
Solución:
a) Abrir la aplicación Visual Basic, y Luego, transcribir el siguiente código en la
ventana de Código del Visual Basic.
Private Sub Form_Load()
Dim NomCte As String, Tur As String
Dim TipO As Integer, MinDur As Integer
Dim MtoLLam As Single, MtoIncre As Single, MtoPago As Single
NomCte = InputBox("Ingrese nombre del Cliente:")
TipO = InputBox("Ingrese Tipo Operadora <1>Movilnet <2>MoviStar:")
MinDur = InputBox("Ingrese duración de la llamada en minutos:")
Tur = InputBox("Ingrese Turno <D>iurno, <N>octurno:")
Select Case TipO
Case Is = 1
MtoLLam = MinDur * 0.3
Case Is = 2
MtoLLam = MinDur * 0.25
End Select
Select Case Tur
Case "D"
MtoIncre = 0
Case "N"
MtoIncre = MtoLLam * 10 / 100
End Select
MtoPago = MtoLLam + MtoIncre
Print "Factura del Cliente: "; NomCte
Print "El monto de llamada ="; MtoLLam
Print " El Monto de Incremento por turno= "; MtoIncre; " Bs"
Print "El Monto a Pagar es = "; MtoPago; " Bs"
End Sub

b) Ejecutar la aplicación con los siguientes datos:


Nombre de Cliente: Astrid Arias; Tipo de Operadora: 1 ; minutos
de duración llamada: 20 min.; Turno: N. A continuación, se
muestran los datos de salida en la ventana del Formulario:

1.5. Estructuras Repetitivas en Visual Basic.

Definiciones.

Tutora: Ing. Mery Luz Pérez -2018 2


0
Unidad Didáctica V- Sentencias Visual Basic

Una estructura repetitiva en Visual Basic está referida a un ciclo, bucle


o Loop, el cual repite una secuencia de instrucciones un número determinado de veces,
mientras o hasta que se satisfaga una condición establecida. Esta estructura permite
especificar la repetición controlada de una o más sentencias.
Una Iteración es la acción o conjunto de acciones que se ejecutan cada
vez en un bucle.

Tipos de Estructuras Repetitivas en Visual Basic.


Cuando se presentan situaciones en que se conoce por adelantado el número
preciso de repeticiones que debe realizar el ciclo, se dice que la estructura repetitiva es
automática. Cuando no se conoce el número exacto de repeticiones, sino que es necesario
controlar la repetición por medio de una comprobación lógica para determinar la
continuación o no del cuerpo del ciclo, se dice que la estructura es condicional.
Por tanto los tipos de estructuras repetitivas dependen de la situación y el
modo de ubicación de la condición de salida, la cual se puede definir al principio o al
final del ciclo. En función de esto, los tipos de estructuras repetitivas pueden ser:

Automáticas.
Sentencia Haga Desde (For …Next)
Condicionales
Sentencia Haga Mientras (While…Wend)
Sentencia Repita Hasta que (Do…Loop Until)

Sentencia H aga Desde (For ... Next)

Es una sentencia de control de flujo que repite las acciones del cuerpo del
ciclo repetitivo, un número especificado de veces, y de modo automático controla el
número de iteraciones o pasos a través del ciclo. Esta referida a un ciclo controlado por
contador, ya que en el mismo se especifica una variable numérica de tipo contador, con
un valor inicial, el cual se incrementa o decrementa de manera automática en cada
iteración del ciclo.
Sintaxis:
For NomV = Vi To Vf [Exp]
Instrucc.1
Instrucc.2


Instrucc.n
Donde: Next NomV

NomV: Es el nombre de la
variable tipo contador.

Tutora: Ing. Mery Luz Pérez -2018 2


1
Unidad Didáctica V- Sentencias Visual Basic

Vi: Es el valor inicial asignado a la variable NomV.


Vf: Es el valor final que puede tomar NomV.
Exp: Es un valor entero opcional, que representa la cantidad en que se
incrementa o decrementa el contador.

¿Cómo Funciona?
Al comenzar la ejecución de la estructura, se inicializa la variable
contador NomV con el valor inicial Vi.
Se comprueba sí el valor inicial Vi es menor o igual al valor final Vf (si
Exp. es positivo) o bien, si el valor inicial es mayor o igual que Vf (si Exp. es negativo);
si es así el programa ejecuta las sentencias del interior del ciclo, y al llegar a Next
NomV, se incrementa automáticamente el valor de contador en el valor de Exp,
bifurcando a la sentencia Next.
Cuando el resultado de esta comprobación sea falsa, el programa sale
del ciclo y ejecuta la sentencia ejecutable que está inmediatamente después de la
sentencia Next.

Ejemplo de Aplicación con la Estructura Repetitiva For ... Next

La compañía PasteurWat dedicada a la distribución de filtros de agua, está


promocionando nuevos filtros con los siguientes precios:

Tipo de Filtro Precio (Bs.F)


Integrado 3450,00
Empotrado 4600,00

La información requerida por los usuarios es: Nombre del Usuario, Tipo de Filtro
(Integrado, Empotrado), Cantidad de Filtros comprados, Tipo de Pago (Al Contado, Tarjeta de
Crédito).
La empresa dispone de una promoción especial, de un 20% de descuento por la compra del
producto al contado; y sí cancela con tarjeta de crédito se cobrará un 3% de recargo sobre el
precio del filtro.
Se requiere diseñar una Aplicación de Visual Basic que permita determinar y mostrar:
• El monto de la compra y monto de descuento.
• El monto de recargo, monto IVA y monto neto a pagar.
• Promedio de montos netos.
• El porcentaje de clientes que compraron Filtros Integrados.

Para el diseño de la aplicación, se requiere usar Estructura repetitiva For … Next

Solución

a) Inicie la apertura de un proyecto nuevo en Visual Basic. Luego, inserte el siguiente


segmento de programa:

Tutora: Ing. Mery Luz Pérez -2018 2


2
Unidad Didáctica V- Sentencias Visual Basic

Private Sub Form_Load()


' Definición de variables
Dim NomCte As String, TipFiltro As String, CantF As Integer, TipCompra As String
Dim MtoCompra As Single, MtoNeto As Single, MtoRecargo As Single
Dim MtoSubTotal As Single, MtoIVA As Single, NClientes As Integer, I As Integer
'Definición de constantes
Const PVPInt = 3450, PVPEmp = 4600
Show
' Inicio ciclo repetitivo
NClientes = InputBox("Ingrese número de clientes a procesar:")
For I = 1 To NClientes
NomCte = InputBox("Ingrese el nombre del cliente:")
TFiltro = InputBox("Ingrese el tipo de filtro: <E>mpotrado - <I>ntegrado")
CantF= InputBox("Ingrese la cantidad de Filtros comprados:")
TCompra = InputBox("Ingrese el tipo de compra: <1> Contado - <2> Crédito")
If TFiltro = "I" Or TFiltro = "i" Then
MtoCompra = PVPInt * CantF
ContInt = ContInt + 1
Else
If TFiltro = "E" Or TFiltro = "e" Then
MtoCompra = PVPEmp * CantF
End If
End If
If TCompra = 1 Then
MtoDescto = MtoCompra * 20 / 100
MtoRecargo = 0
Else
If TCompra = 2 Then
MtoRecargo = MtoCompra * 3 / 100
MtoDescto = 0
End If
End If
MtoSubTotal = MtoCompra – MtoDescto+ MtoRecargo
MtoIVA = MtoSubTotal * 12 / 100
MtoNeto = MtoSubTotal + MtoIVA
AcumNeto = AcumNeto + MtoNeto
Print "Factura del Cliente: " & NomCte
Print " Monto de Compra =" & MtoCompra
Print " Monto de Descto. =" & MtoDescto
Print " Monto de Recargo =" & MtoRecargo
Print " Monto IVA =" & MtoIVA
Print " Monto Neto =" & MtoNeto
Print “=====================”
Next I
PromNeto = AcumNeto / NClientes
PorcInteg = ContInt * 100 / NClientes

Tutora: Ing. Mery Luz Pérez -2018 2


3
Unidad Didáctica V- Sentencias Visual Basic

Print "Impresión de Estadísticas: "


Print " Porcentaje de clientes con Filtros Integrados=" ; PorcInteg
Print " Promedio de Montos Netos =" ; PromNeto
End Sub

c) Ejecute la aplicación y observará el siguiente cuadro de diálogo, mediante el cual se


solicita la cantidad de clientes a procesar, que para este caso se ingresó un valor de 2.

Al iniciar la ejecución del ciclo repetitivo For, se prosigue con la lectura de los datos del
primer cliente, los cuales son: Nombre de cliente:
Cesar Diaz, Tipo de Filtro: E (Empotrado),
Cantidad comprada:2 y el tipo de compra: <1>
Contado. A continuación se muestran los datos de
salida en la ventana del Formulario:

Luego se solicitan los datos para el segundo cliente, los cuales son: Nombre de cliente: Sonia
Arias, Tipo de Filtro: I (Integrado), cantidad comprada: 3 y el tipo de compra: <2> Crédito. A
continuación se muestran los datos de salida en la ventana del Formulario:

Sonia Arias, Tipo de Filtro: I


(Integrado), cantidad comprada: 3
y el tipo de compra: <2> Crédito

A continuación, se muestran los


datos de salida en la ventana del
Formulario:

Estructura Repetitiva Haga Mientras ( While ...Wend)

Tutora: Ing. Mery Luz Pérez -2018 2


4
Unidad Didáctica V- Sentencias Visual Basic

Es una estructura de control que permite ejecutar un ciclo condicional, el cual se


repite en tanto se cumpla una condición especificada. Esta condición de salida se sitúa
al principio del bucle, permitiendo la repetición de una serie de sentencias mientras el
valor de la condición o expresión lógica sea verdadera.
Sintaxis
While Condición
Sentenc. 1
Sentenc. 2
.
.
.
Sentenc. n
Wend
Donde:
Condición: es una expresión lógica.
Sentenc. 1, Sentenc. 2, ... Sentenc.n: conjunto de instrucciones que conforman
el cuerpo del ciclo repetitivo, dentro del cual debe existir una sentencia que
permita controlar la culminación del mismo.

Reglas de Funcionamiento.
La condición se evalúa antes y después de cada ejecución del ciclo. Si la
condición es verdadera, se ejecuta el ciclo, y si es falsa, el control pasa a
la primera sentencia ejecutable después de la sentencia Wend.
La estructura While se ejecutará en forma repetida hasta que, al
evaluarse la condición o expresión lógica, resulte ser falsa.
El control del ciclo repetitivo While se puede establecer por medio de un
valor centinela, el cual se emplea para indicar el final de una lista de
datos. En este caso, la condición de la estructura While se utilizará para
comprobar el momento en que termina la lista de datos, mediante la
detección del centinela.
Es posible incluir expresiones lógicas mediante los operadores lógicos
AND, OR y NOT para formular la condición de la estructura While.

Ejemplo de Aplicación con la Estructura Repetitiva While ... Wend

La compañía PasteurWat dedicada a la distribución de filtros de agua, está


promocionando nuevos filtros con los siguientes precios:

Tipo de Filtro Precio (Bs.F)


Integrado 3450,00
Empotrado 4600,00

Tutora: Ing. Mery Luz Pérez -2018 2


5
Unidad Didáctica V- Sentencias Visual Basic

La información requerida por los usuarios es: Nombre del Usuario, Tipo de Filtro
(Integrado, Empotrado), Cantidad de Filtros comprados, Tipo de Pago (Al Contado, Tarjeta de
Crédito).
La empresa dispone de una promoción especial, de un 20% de descuento por la compra del
producto al contado; y sí cancela con tarjeta de crédito se cobrará un 3% de recargo sobre el
precio del filtro.
Se requiere diseñar una Aplicación de Visual Basic que permita determinar y mostrar:
• El monto de la compra y monto de descuento.
• El monto de recargo, monto IVA y monto neto a pagar.
• Promedio de montos netos.
• El porcentaje de clientes que compraron Filtros Integrados.
Para el diseño de la aplicación, se requiere usar estructura repetitiva While…Wend.
Solución

a) Inicie la apertura de un proyecto nuevo en Visual Basic. Luego hacer doble clic sobre
la ventana del Form1, con lo cual visualizará en la ventana de código las siguientes líneas:

Private Sub Form_Load()

End Sub

Entre estas dos líneas de código, inserte el siguiente segmento de programa:

Private Sub Form_Load()


' Definición de variables
Dim NClientes As Integer, NomCte As String, TFiltro As String, CantF As Integer
Dim CantF As Integer, MtoCompra As Single, MtoDescto As Single, MtoRecargo
As Single , TCompra As Integer
Dim MtoSubTotal As Single, MtoIVA As Single, MtoNeto As Single, I As Integer
Dim AcumNeto As Single, ContInt As Integer, PromNeto As Single, PorcInteg As
Single, Respuesta As String
'Definición de constantes
Const PVPInt = 3450, PVPEmp = 4600
Show
'Inicio Ciclo Repetitivo
Respuesta = "S"
While Respuesta = "S" Or Respuesta = "s"
NClientes = NClientes + 1
NomCte = InputBox("Ingrese el nombre del cliente:")
TFiltro = InputBox("Ingrese el tipo de filtro: <E>mpotrado - <I>ntegrado")
CantF = InputBox("Ingrese cantidad de filtros comprados:")
TCompra = InputBox("Ingrese el tipo de compra: <1> Contado - <2> Crédito")
If TFiltro = "I" Or TFiltro = "i" Then
MtoCompra = PVPInt * CantF
ContInt = ContInt + 1
Else
If TFiltro = "E" Or TFiltro = "e" Then
MtoCompra = PVPEmp * CantF
End If
End If

Tutora: Ing. Mery Luz Pérez -2018 2


6
Unidad Didáctica V- Sentencias Visual Basic

If TCompra = 1 Then
MtoDescto = MtoCompra * 20 / 100
MtoRecargo = 0
Else
If TCompra = 2 Then
MtoRecargo = MtoCompra * 3 / 100
MtoDescto = 0
End If
End If
MtoSubTotal = MtoCompra - MtoDescto + MtoRecargo
MtoIVA = MtoSubTotal * 12 / 100
MtoNeto = MtoSubTotal + MtoIVA
AcumNeto = AcumNeto + MtoNeto
'Mostrar resultados
Print "Factura del Cliente: "; NomCte
Print " Monto de Compra ="; MtoCompra
Print " Monto de Descto. ="; MtoDescto
Print " Monto de Recargo ="; MtoRecargo
Print " Monto IVA ="; MtoIVA
Print " Monto Neto ="; MtoNeto & " Bs."
Respuesta = InputBox("Procesa otro Cliente: (S/N)?")
Wend 'Fin de ciclo
'Calculo del Promedio
PromNeto = AcumNeto / NClientes
'Calculo del porcentaje
PorcInteg = ContInt * 100 / NClientes
Print "Impresión de Estadisticas: "
Print " Promedio de Montos Netos ="; PromNeto; " Bs."
Print " Porcentaje de clientes con Filtros Integrados="; PorcInteg; "%"
End Sub

Ejecute la aplicación haciendo clic en la opción Ejecutar del Menú de opciones,


luego observará el siguiente cuadro de diálogo, mediante el cual se solicita la lectura de
los datos del primer cliente, los cuales son: Nombre de cliente: Cesar Diaz, Tipo de
Filtro: E (Empotrado), Cantidad comprada:2 y el tipo de compra: <1> Contado. A
continuación, se muestran los
datos de salida en la ventana del
Formulario:

Inmediatamente aparece una caja de mensaje, presione


cualquier tecla para continuar. Luego se muestra la caja de
diálogo con la pregunta Procesa otro Cliente (S/N)?.
Ingrese la letra S, para procesar el segundo cliente:

Tutora: Ing. Mery Luz Pérez -2018 2


7
Unidad Didáctica V- Sentencias Visual Basic

Luego se solicitan los datos para el


segundo cliente, los cuales son:
Nombre de cliente: Sonia Arias, Tipo
de Filtro: I (Integrado), cantidad
comprada: 3 y el tipo de compra:
<2> Crédito. A continuación se
muestran los datos de salida en la
ventana del Formulario:

Inmediatamente aparece una caja de mensaje, presione cualquier tecla para continuar. Luego
se muestra la caja de diálogo con la pregunta Procesa otro Cliente (S/N)?. Ingrese la
letra N, para terminar de procesar los clientes. Luego observará en la ventana del
Formulario los resultados de las estadísticas de promedio y porcentaje.

Estructura Repetitiva Repita Hasta ( Do... Loop)

Es una estructura de control que permite ejecutar un ciclo condicional, el cual se


repite en tanto se cumpla una condición indicada. Este tipo de estructura tiene diferentes
formatos de presentación, y la condición de salida se puede situar al principio o al final
del bucle, permitiendo la repetición de una serie de sentencias mientras o hasta que el
valor de la condición o expresión lógica sea verdadera.

Un ciclo Do se utiliza cuando no se conoce el número de iteraciones del mismo.

Sintaxis:
Formato 1. Con la estructura Do While o Do... Loop While.

Do While Condición Do
Sentenc. 1 Sentenc. 1
Sentenc. 2 Sentenc. 2
 
 
Sentenc. n Sentenc. n
Loop Loop While Condición

Formato 2. Con la estructura Do Until o Do... Loop Until.

Tutora: Ing. Mery Luz Pérez -2018 2


8
Unidad Didáctica V- Sentencias Visual Basic

Do Do Until Condición
Sentenc. 1 Sentenc. 1
Sentenc. 2 Sentenc. 2
 
 
Sentenc. n Sentenc. n
Loop Until Condición Loop

Donde:

Condición: es una expresión lógica que al evaluar producirá un valor verdadero


o falso, lo cual permitirá la continuación o no del ciclo. Puede haber una o más
condiciones separadas por operadores lógicos.

Sentenc. 1, Sentenc. 2, ... Sentenc.n : Conjunto de instrucciones que conforman


el cuerpo del ciclo repetitivo, dentro del cual debe existir una sentencia que permita
controlar la culminación del mismo.

Ejemplo de Aplicación con la Estructura Repetitiva Do... Loop Until.

La compañía PasteurWat dedicada a la distribución de filtros de agua, está


promocionando nuevos filtros con los siguientes precios:

Tipo de Filtro Precio (Bs.F)


Integrado 3450,00
Empotrado 4600,00

La información requerida por los usuarios es: Nombre del Usuario, Tipo de Filtro
(Integrado, Empotrado), cantidad de Filtros a comprar, Tipo de Pago (Al Contado, Tarjeta de
Crédito).
La empresa dispone de una promoción especial, de un 20% de descuento por la compra del
producto al contado; y sí cancela con tarjeta de crédito se cobrará un 3% de recargo sobre el
precio del filtro.
Se requiere diseñar una Aplicación de Visual Basic que permita determinar y mostrar:
1. El monto de la compra.
2. El monto de descuento.
3. El monto de recargo.
4. El monto neto a pagar.
Para el diseño de la aplicación, se requiere usar la Estructura Do … Loop Until

Solución.

Tutora: Ing. Mery Luz Pérez -2018 2


9
Unidad Didáctica V- Sentencias Visual Basic

a) Inicie la apertura de un proyecto nuevo en Visual Basic.Luego hacer doble clic sobre la
ventana del Form1, con lo cual visualizará en la ventana de código las siguientes líneas:

Private Sub Form_Load()

End Sub

b) Entre estas dos líneas de código, inserte el siguiente segmento de programa:


Private Sub Form_Load()
' Definición de variables
Dim NClientes As Integer, NomCte As String, TFiltro As String, CantF As Integer,
TCompra As Integer
Dim MtoCompra As Single, MtoDescto As Single, MtoRecargo As Single
Dim MtoSubTotal As Single, MtoIVA As Single, MtoNeto As Single, Respuesta As
String
Dim AcumNeto As Single, ContInt As Integer, PromNeto As Single, PorcInteg As
Single
'Definición de constantes
Const PVPInt = 3450, PVPEmp = 4600
Show
Print "Compañía PasteurWat "
' Inicio Ciclo repetitivo
Do
NClientes = NClientes + 1 'Contador General de Clientes
NomCte = InputBox("Ingrese el nombre del cliente:")
TFiltro = InputBox("Ingrese el tipo de filtro: <E>mpotrado - <I>ntegrado")
CantF = InputBox("Ingrese la cantidad de Filtros comprados:")
TCompra = InputBox("Ingrese el tipo de compra: <1> Contado - <2> Crédito")
If TFiltro = "I" Or TFiltro = "i" Then
MtoCompra = PVPInt * CantF
ContInt = ContInt + 1
Else
If TFiltro = "E" Or TFiltro = "e" Then
MtoCompra = PVPEmp * CantF
End If
End If
If TCompra = 1 Then
MtoDescto = MtoCompra * 20 / 100
MtoRecargo = 0
Else
If TCompra = 2 Then
MtoRecargo = MtoCompra * 3 / 100
MtoDescto = 0
End If
End If
MtoSubTotal = MtoCompra - MtoDescto + MtoRecargo
MtoIVA = MtoSubTotal * 12 / 100
MtoNeto = MtoSubTotal + MtoIVA
AcumNeto = AcumNeto + MtoNeto
'Mostrar resultados de montos

Tutora: Ing. Mery Luz Pérez -2018 3


0
Unidad Didáctica V- Sentencias Visual Basic

Print "Factura del Cliente: "; NomCte


Print " Monto de Compra ="; MtoCompra
Print " Monto de Descto. ="; MtoDescto
Print " Monto de Recargo ="; MtoRecargo
Print " Monto IVA ="; MtoIVA
Print " Monto Neto ="; MtoNeto
Print "====================="
Respuesta = InputBox("¿Procesa otro Cliente (S/N)?")
Loop Until Respuesta = "N" Or Respuesta = "n" 'Fin de ciclo
'Calculo del Promedio
PromNeto = AcumNeto / NClientes
'Calculo del porcentaje
PorcInteg = ContInt * 100 / NClientes
Print "Impresión de Estadísticas: "
Print " Porcentaje de clientes con Filtros Integrados="; PorcInteg
Print " Promedio de Montos Netos ="; PromNeto
End Sub

c) Ejecute la aplicación haciendo clic en la opción Ejecutar del Menú de opciones, e


ingrese los datos de entrada y observe los datos de salida para cada caso.

1.6 El Entorno Visual Basic

Visual Basic está orientado a la realización de aplicaciones para Windows,


pudiendo incorporar todos los elementos de este entorno informático: ventanas, botones,
cajas de diálogos, cajas de textos, botones de opciones y de selección, menús, barra de
desplazamientos, entre otros.

A continuación se explicarán algunos conceptos de estos elementos gráficos


con aplicaciones prácticas para demostrar el uso de botones de comandos, botones de
controles, cajas de textos, objetos frames, entre otros.

1.7 Uso de botón de comando y botones de controles.

Botones de Comandos (Command Buttom)

Los botones de comando son controles utilizados para comenzar,


interrumpir o terminar un proceso. Se activan con el evento de hacer
clic sobre ellos.
Para agregar un botón de comando sobre un formulario se ejecutan los
siguientes pasos:
1. Seleccionar del cuadro de herramientas de Visual Basic el icono representado por
medio de un rectángulo, y hacer doble clic para incluirlo sobre el formulario.
2. Seleccionar este botón colocado y manteniendo presionado el botón derecho del
mouse, arrastrarlo en la posición requerida.

Tutora: Ing. Mery Luz Pérez -2018 3


1
Unidad Didáctica V- Sentencias Visual Basic

3. Aplicar sobre el botón de comando las propiedades necesarias.

Entre las propiedades a aplicar sobre un botón de comando se pueden destacar:

Nombre: devuelve o establece el nombre del botón. Por defecto VB le asigna


Command1, Command2, Command13,… y así sucesivamente.
Alignment: devuelve o establece la alineación del texto mostrado en el botón.
Backcolor: devuelve o establece el color del fondo del botón.
Caption: devuelve o establece el texto que se muestra texto en el botón.
Enabled: devuelve o establece un valor que determina si el botón puede o no
responder a eventos generados por el usuario, es decir, habilitado o inhabilitado.
Font: devuelve o establece el tipo y estilo de letra usado para el texto.
Forecolor: devuelve o establece el color para la fuente del botón
MousePointer: establece el tipo de puntero del ratón mostrado al pasar por
encima del botón.
Style: devuelve o establece la apariencia del control, ya sea estándar o gráfica. Se
debe establecer la propiedad en modo gráfico para cambiar el color del fondo del
botón.
Tooltiptext: establece un texto cuando el ratón se sitúa sobre el control.
Visible: devuelve o establece un valor que determina si el objeto es visible o no.

Lectura e impresión de datos con Controles u Objetos

Los controles u objetos usados con mayor frecuencia para la lectura e


impresión en una aplicación Visual Basic, son las cajas de textos (Text), las etiquetas
(Label), las listas (List) y los objetos combos, tal como se muestra en la Figura1.

Objeto Label Cuadro de Texto

ComboBox ListBox

Figura 1. Controles de la Caja de Herramientas

Cuadro de texto: Control que permite escribir o visualizar texto. Las


propiedades más usadas:

Nombre: es el nombre usado para identificar el objeto. Por defecto VB le asigna


text1 o text2 o text3… y así sucesivamente.
Alignment: devuelve o establece la alineación del texto en el cuadro texto.

Tutora: Ing. Mery Luz Pérez -2018 3


2
Unidad Didáctica V- Sentencias Visual Basic

Backcolor: devuelve o establece el color del fondo usado para mostrar el texto.
BorderStyle: devuelve o establece el estilo del borde del cuadro de texto
Enabled: devuelve o establece un valor que determina si el objeto puede o no
responder a eventos generados por el usuario, es decir, habilitado o inhabilitado.
Font: devuelve o establece el tipo y estilo de letra del texto.
Forecolor: devuelve o establece el color del texto.
Locked: determina si se puede modificar o no el texto mostrado.
Multiline: determina que el cuadro de texto pueda aceptar múltiples líneas. Se
establece el valor True en tiempo de diseño, no en tiempo de ejecución.
Text: devuelve o establece el texto que se muestra en el cuadro.
Scrollbars: devuelve o establece un valor que indica si el cuadro de texto tiene
barras verticales y horizontales. Los valores se establece en tiempo de diseño y no
en tiempo de ejecución. Se establece el valor 0 sin barras; si toma el valor 1 se
colocará en el cuadro una barra horizontal, con el valor 2 una barra vertical, y el
valor 3 tanto barras horizontales como verticales.
Visible: devuelve o establece un valor que determina si el objeto es visible o no.

Control Label (Etiqueta): permite mostrar información que no puede ser


modificada por el usuario durante la ejecución de una aplicación. Entre las
propiedades más usadas:

Nombre: es el nombre usado para identificar el objeto. Por defecto VB le asigna


Label1, Label2, Label3… y así sucesivamente.
Alignment: devuelve o establece la alineación del texto mostrado en la etiqueta.
Backcolor: devuelve o establece el color del fondo usado para mostrar el texto.
BorderStyle: devuelve o establece el estilo del borde de la etiqueta.
Caption: devuelve o establece el texto que se muestra en la etiqueta.
Enabled: devuelve o establece un valor que determina si el objeto puede o no
responder a eventos generados por el usuario, es decir, habilitado o inhabilitado.
Font: devuelve o establece el tipo y estilo de letra usado para el texto.
Visible: devuelve o establece un valor que determina si el objeto es visible o no.
Wordwrap: devuelve o establece un valor que determina si el control se expande
para ajustarse al texto incluido en el mismo.

ListBox: contiene una lista de elementos de la que el usuario puede seleccionar


uno. Entre sus propiedades están:

Nombre: devuelve el nombre usado el código para identificar el objeto; por defecto
Visual Basic, le asigna List1, List2, List3,… y así sucesivamente.
Appearance: devuelve o establece si el objeto se dibuja en tiempo de ejecución
con efectos 3D

Tutora: Ing. Mery Luz Pérez -2018 3


3
Unidad Didáctica V- Sentencias Visual Basic

Backcolor: devuelve o establece el color del fondo usado para mostrar el texto y
gráficos en la lista.
Columns: devuelve o establece un valor que determina si la lista tiene una sola columna
(Valor 0) o varias columnas valor mayor que cero.
Enabled: devuelve o establece un valor que determina si el objeto puede o no responder
a eventos generados por el usuario. Es decir, si está habilitado o inhabilitado.
Font: devuelve o establece el tipo y estilo de letra del texto que se muestra.
Forecolor: devuelve o establece el color del texto que muestra en el control.
Itemdata: Devuelve o establece un número específico para cada elemento del
objeto.
List: Devuelve o establece los elementos contenidos en la parte de lista del objeto.
MousePointer: Devuelve o establece el tipo de puntero del mouse mostrado al
pasar por encima del objeto.
MultiSelect: devuelve o establece un valor que determina si el usuario puede o no
realizar múltiples selecciones en la lista.
ToolTiptext: establece el texto que se muestra cuando el ratón se sitúa sobre el control.
Visible: devuelve o establece un valor que determina si el objeto es visible o no
Sorted: indica si los elementos se ordenan automáticamente en forma alfabética.

ComboBox: Presentan una lista de elementos en forma vertical (en una sola
columna). Entre sus propiedades están:

Nombre: establece el nombre del control, por defecto Visual Basic le asigna Combo1,
Combo2,... y así sucesivamente.
Backcolor: devuelve o establece el color del fondo del combo.
Enabled: devuelve o establece un valor que determina si el objeto puede responder o no
a eventos generados por el usuario.
Font: devuelve o establece el tipo y estilo de letra.
Forecolor: devuelve o establece el color del texto que se muestra en el control.
List: establece los elementos que se muestran en el control.
Locked: determina si el control puede ser modificado.
MousePointer: establece el tipo de puntero del ratón mostrado al pasar por encima del
objeto.
Text: devuelve o establece el texto contenido en el control
ToolTiptext: establece el texto que se muestra cuando el ratón se sitúa sobre el control.
Visible: establece un valor que determina si el objeto es visible o no.
Sorted: indica si los elementos se ordenan automáticamente en forma alfabética.

Nota: El diseño y desarrollo de aplicaciones con estos objetos se explicarán al final de


esta Unidad Didáctica.

Tutora: Ing. Mery Luz Pérez -2018 3


4
Unidad Didáctica V- Sentencias Visual Basic

Ejemplo de Aplicación con uso de botones de comandos y objetos en Visual


Basic.

Visual Basic presenta también los Controles de Opciones Option Button y CheckBox, los
cuales funcionan de manera similar, pero con una diferencia importante: pueden seleccionarse
varios controles CheckBox de un formulario al mismo tiempo; por el contrario, sólo puede
seleccionarse un control OptionButton de un grupo en un momento determinado.

CheckBox: permite mostrar múltiples opciones entre las cuales el usuario


puede seleccionar una o más, de un grupo pequeño de alternativas dadas.

Sintaxis:
CheckBox

OptionButton: se utilizan para mostrar en un grupo de opciones entre las


cuales el usuario sólo puede seleccionar una, es decir permite mostrar una
lista de opciones donde solo una se puede activar.

Sintaxis:

OptionButton

Notas:

Utilice la propiedad Value para determinar el estado del control: activado, desactivado
o no disponible.
Los controles Option Button se agrupan si los dibuja dentro de un contenedor como un
control Frame, un control PictureBox o un formulario. Para agrupar controles Option
Button en un Frame o PictureBox, dibuje en primer lugar el Frame o el PictureBox y, a
continuación, dibuje dentro los controles Option Button. Todos los controles Option
Button que están dentro del mismo contenedor actúan como un único grupo.
Aunque puede parecer que los controles Option Button y CheckBox funcionan de forma
similar, hay una diferencia importante: cuando un usuario selecciona un Option
Button, los otros controles Option Button del mismo grupo dejan de estar disponibles
automáticamente. Por el contrario, es posible seleccionar cualquier número de
controles CheckBox.
Los botones de opción o se pueden colocar en un grupo directamente en el formulario o
dentro de un marco o cuadro de imágenes. Para ello se debe crear primero el grupo
independiente, es decir colocar primero el marco donde luego se colocarán los botones
de opciones o cajas de verificación.

Entre las propiedades para los controles CheckBox y OptionButton se destacan:

Nombre: Devuelve el nombre usado el código para identificar el objeto; por


defecto VB le asigna check1 u option1.

Tutora: Ing. Mery Luz Pérez -2018 3


5
Unidad Didáctica V- Sentencias Visual Basic

Appearance Devuelve o establece si el objeto se dibuja en tiempo de ejecución


con efectos 3D
Backcolor: Devuelve o establece el color del fondo usado para mostrar el texto
y gráficos en el objeto.
Enabled: devuelve o establece un valor que determina si el botón puede o no
responder a eventos generados por el usuario, es decir, habilitado o
inhabilitado.
Font: devuelve o establece el tipo y estilo de la fuente aplicado al texto del
objeto.
Forecolor: devuelve o establece el color para la fuente del control.
Itemdata: Devuelve o establece un número específico para cada elemento del
objeto.
List: Devuelve o establece los elementos contenidos en la parte de lista del
objeto.
MousePointer: Devuelve o establece el tipo de puntero del mouse mostrado al
pasar por encima del objeto
Tooltiptext: establece el texto mostrado cuando el ratón se sitúa sobre el
control.
Visible: devuelve o establece un valor que determina si el objeto es visible o no

Métodos Aplicados al Listbox y ComboBox

Algunos de los métodos aplicados a Listbox y ComboBox usados con más


frecuencia son:

AddItem: agrega elementos al Objeto Listbox o ComboBox.

Sintaxis:
Objeto.Additem elemento

Donde:
Objeto: es el nombre de Objeto Listbox o ComboBox
Elemento: es la cadena de caracteres que se agrega al Listbox o ComboBox.

RemoveItem: remueve algún elemento del Objeto Listbox o ComboBox

Sintaxis:
Objeto.RemoveItem N

Donde:
Objeto: es un Objeto Listbox o ComboBox
N: es un número que especifica el elemento a ser eliminado. El primer
elemento se consigue en la posición 0.

Clear: Limpia todos los elementos del Objeto Listbox o ComboBox


Sintaxis:
Objeto.Clear

Tutora: Ing. Mery Luz Pérez -2018 3


6
Unidad Didáctica V- Sentencias Visual Basic

Donde:
Objeto: es un Objeto Listbox o ComboBox

ListIndex: devuelve un número con la posición que ocupa un elemento


seleccionado en un Objeto Listbox o ComboBox.
Sintaxis:

n= Objeto.ListIndex

Donde
n es el valor devuelto por ListIndex
Objeto: es el nombre de Objeto Listbox o ComboBox

NewIndex: permite conocer el índice del último elemento agregado a la lista

N= Objeto.NewIndex

Donde
N es el valor devuelto por NewIndex
Objeto: es el nombre del Objeto Listbox o ComboBox

Ejemplo de la Aplicación con el uso botones de controles, botones de comandos y objetos


en Visual Basic.

La Asociación Latinoamericana de Control de Calidad (ALACC), estará realizando


próximamente un Congreso Nacional de Control de Calidad y Recuperación de la Construcción.
Para ello, se requiere leer los siguientes datos de Participantes: Nombre, Tipo de Participante
(Miembro de Asociación, Profesionales, Estudiantes), Tipo de Modalidad (Ponente, Invitado,
Normal) y el Sexo (Femenino, Masculino). Los montos de la inscripción del Congreso son:
Tipo de Participante Monto de Inscripción
Miembros ALACC 1000,00 Bs
Profesionales 1300,00 Bs.
Estudiantes 350,00 Bs.
El Monto a cancelar se calcula en base a los siguientes criterios:
 Si el Participante es Miembro de la Asociación tiene un 25 % de descuento de
membresía, sobre el Monto de Inscripción.
 Si el Participante tiene Modalidad Ponente tiene un 20 % de descuento sobre el
Monto de Inscripción.
 Si el Participante tiene modalidad Invitado queda exonerado del Monto de
Inscripción.
 Se ofrecen los siguientes beneficios opcionales según los requerimientos de los
participantes:
Pasaje Boleto en avión Tres comidas diarias x Kit de Conferencia
(Bs. F) 3dias (Bs.F) (Bs.F)
8000,00 400,00 180,00

Diseñe una aplicación en Visual Basic, que permita determinar y mostrar en objetos
apropiados, la siguiente información:

Tutora: Ing. Mery Luz Pérez -2018 3


7
Unidad Didáctica V- Sentencias Visual Basic

a) El Monto de Inscripción, monto de descuento por membresía, por modalidad del


participante ( en caso de aplicar) y monto descuento total
b) El monto total por beneficios opcionales
c) El Monto total a cancelar.
d) El Porcentaje de Profesionales tipo Ponentes sexo masculino
e) El promedio de Montos a cancelar en miembros Modalidad Normal en avión
f) Entre los estudiantes masculinos y femeninos ¿Dónde hubo mayor inscripción?
SOLUCIÓN
1.- En la ventana del Formulario 1, inserte los siguientes objetos:

2.- En la ventana de código del Formulario 1 inserte las siguientes líneas

Option Explicit
Dim ContMiemN As Integer, AcuMtoCan As Single
Dim ContProfMas As Integer, Npart As Integer
Dim ContEstMas As Integer, ContEstFem As Integer

Private Sub Form_Load()


'Preparando Objetos
FramDatosParticipante.Visible = False
FramEstadisticas.Visible = False
ProcesarFactura.Enabled = False
MostrarEstadisticas.Enabled = False
End Sub

Private Sub ProcesarNuevoParticipante_Click()


Show
TxtNombre.Text = "" : TxtMontoIns.Text = "" : TxtDescTotal.Text = ""
TxtBenefOpcion.Text = "": TxtMtoCancelar.Text = ""
OptMiembro.Value = True 'Activar selección opción miembro
OptPonente.Value = True
OptFemenino.Value = True
CheckAvion.Value = 0: CheckAlimento.Value = 0: ChecKit.Value = 0 'Limpiar objetos
FramDatosParticipante.Visible = True : FramFactura.Visible = False
FramEstadisticas.Visible = False

Tutora: Ing. Mery Luz Pérez -2018 3


8
Unidad Didáctica V- Sentencias Visual Basic

TxtNombre.SetFocus
ProcesarNuevoParticipante.Enabled = False
ProcesarFactura.Enabled = True
MostrarEstadisticas.Enabled = False
Salir.Enabled = True
End Sub

Private Sub ProcesarFactura_Click()


Dim MtoInscrip As Single, MtoDescto_Membresia As Single, MtoDescto_Modal As Single
Dim MtoCancelar As Single, MtoDescTotal As Single, MtoPasajeAvion As Single
Dim MtoAlimentac As Single, MtoKit As Single, MtoBenefOpcion As Single
'Definición de constantes
Const MtoInsMiembro As Single = 1000
Const MtoInsProfesional As Single = 1300
Const MtoInsEstudiante As Single = 350
If TxtNombre.Text <> "" Then 'validar dato de entrada
If OptMiembro.Value = True Then
MtoInscrip = MtoInsMiembro 'Para Determinar Monto de Inscripción
ElseIf OptProfesional.Value = True Then
MtoInscrip = MtoInsProfesional
Else
MtoInscrip = MtoInsEstudiante
End If
'Para determinar el descuento por membresía
If OptMiembro.Value = True Then
MtoDescto_Membresia = MtoInscrip * 25 / 100
Else
MtoDescto_Membresia = 0
End If
'Para determinar el descuento por modalidad
If OptPonente.Value = True Then
MtoDescto_Modal = MtoInscrip * 20 / 100
ElseIf OptInvitado.Value = True Then
MtoDescto_Modal = MtoInscrip * 100 / 100
Else
MtoDescto_Modal = 0
End If
MtoDescTotal = MtoDescto_Membresia + MtoDescto_Modal
'Para determinar el monto de asignaciones opcionales
If CheckAvion.Value = 1 Then
MtoPasajeAvion = 8000
Else
MtoPasajeAvion = 0
End If
If CheckAlimento.Value = 1 Then
MtoAlimentac = 400
Else
MtoAlimentac = 0
End If
If ChecKit.Value = 1 Then
MtoKit = 180
Else
MtoKit = 0
End If
MtoBenefOpcion = MtoPasajeAvion + MtoAlimentac + MtoKit
MtoCancelar = MtoInscrip + MtoBenefOpcion - MtoDescTotal

Tutora: Ing. Mery Luz Pérez -2018 3


9
Unidad Didáctica V- Sentencias Visual Basic

TxtMontoIns.Text = MtoInscrip 'Para mostrar resultados en las cajas de textos


TxtMembresia.Text = MtoDescto_Membresia
TxtModalidad.Text = MtoDescto_Modal
TxtDescTotal.Text = MtoDescTotal
TxtBenefOpcion.Text = MtoBenefOpcion
TxtMtoCancelar = MtoCancelar
FramFactura.Visible = True
'Generar Estadisticas
Npart = Npart + 1 'Contador general Partic
If OptProfesional.Value = True And OptPonente.Value = True And OptMasculino.Value =
True Then
ContProfMas = ContProfMas + 1 ' Contador para porcentaje
End If
' Acumulador y contador para promedio
If OptMiembro.Value = True And OptNormal.Value = True And CheckAvion.Value = 1 Then
AcuMtoCan = AcuMtoCan + MtoCancelar
ContMiemN = ContMiemN + 1
End If
If OptEstudiante.Value = True Then
If OptMasculino.Value = True Then
ContEstMas = ContEstMas + 1 'Contadores para estudiantes
Else
ContEstFem = ContEstFem + 1
End If
End If
ProcesarNuevoParticipante.Enabled = True 'Habilita los botones
ProcesarFactura.Enabled = False: MostrarEstadisticas.Enabled = True : Salir.Enabled = True
Else
MsgBox "Debe ingresar el Nombre del Participante", vbInformation
End If
End Sub

Private Sub MostrarEstadisticas_Click()


Dim Porcen As Single, Prom As Single, Mensaje As String
FramEstadisticas.Visible = True: List1.Clear
'Calculo del porcentaje-
If Npart > 0 Then
Porcen = ContProfMas * 100 / Npart
Else
Porcen = 0
End If
If ContMiemN > 0 Then
Prom = AcuMtoCan / ContMiemN ' Calculo del promedio
End If
If ContEstMas > ContEstFem Then 'Comparar contadores
Mensaje = "Existe mayor inscripciòn en estudiantes Masculinos"
ElseIf ContEstFem > ContEstMas Then
Mensaje = "Existe mayor inscripciòn en estudiantes Femeninos"
Else
Mensaje = "Existe igual cantidad inscripciòn en estud Masc y Fem"
End If
'Mostrar resultados en objeto lista
List1.AddItem "Porcentaje de Profes ponentes sexo masculino= " & Porcen
List1.AddItem "Promedio de Montos totales de Miembros Mod Normales en aviòn= " & Prom
List1.AddItem Mensaje
End Sub

Tutora: Ing. Mery Luz Pérez -2018 4


0
Unidad Didáctica V- Sentencias Visual Basic

Private Sub Salir_Click()


End
End Sub

Al ejecutar la aplicación con datos de usuarios, observará una ventana similar a la siguiente:

Tutora: Ing. Mery Luz Pérez -2018 4


1
Unidad Didáctica V- Sentencias Visual Basic

Ejercicios propuestos

Nro. 1. Una empresa líder en construcción de motores eléctricos industriales, desea implementar
la automatización del sistema de facturación de sus clientes. Para, que permita leer los
siguientes datos de N motores: Código del Motor, Marca del Motor (WestingHouse, General
Electric), Tipo de Motor (Monofásico, Trifásico), Tipo de Revolución por minuto (RPM:
1800,3600), Tipo de Origen ( Nacional, Importado) y Año de Compra.
Para determinar el PVP del motor se considera el tipo de motor, el costo, más los
impuestos aduaneros, más el IVA, según se indica en la tabla.

Tipo de Motor Costo


Trifásico 590.000
Monofásico 330.000

Además considere las siguientes condiciones:


- Para motores importados: Si la compra se realizó durante el transcurso del año
actual, se le adicionará un 20 % sobre el costo, por concepto de impuestos aduaneros; de lo
contrario, solo sufre un incremento del 10 %.
- Para motores Nacionales: Si la compra se realizó durante los dos últimos años, se le
adicionará un 10 % sobre el costo, por concepto de impuestos aduaneros; de lo contrario, sufre
solo un incremento del 5 %.
- Debe tomar en cuenta el IVA (12%).
Diseñe una Aplicación en Visual Basic que permita calcular e imprimir:
a) El monto de impuestos aduaneros y el monto por IVA
b) El Precio de Venta al Público por motor.
c) El Promedio de PVP para motores WestingHouse trifásicos importados, 3600 RPM.
d) El porcentaje de motores General Electric, Monofásico, nacionales, 1.800 RPM.
e) El motor con el mayor PVP, identificado con su código, marca y tipo de motor.
f) Cuál marca de motor entre WestingHouse y General Electric tiene mayor existencia.

Nota: Se requiere usar botones de comandos y objetos apropiados para la lectura e impresión de
datos. Las estadísticas se deben mostrar en un segundo formulario.

Nro. 2. Una empresa líder en construcción de motores eléctricos industriales, desea implementar
la automatización del sistema de facturación de sus clientes. Para ello se deben obtener los datos
de clientes: Nombre del Cliente, Tipo de Motor (Monofásico, Trifásico), Tipo de Origen
( Nacional, Importado) y Cantidad de motores comprados. Para determinar el PVP del motor
se considera el tipo de motor y el origen, según se indica en la tabla.

Tipo de Motor P.V.P


Trifásico 330,00
Monofásico 370.00

Además considere las siguientes condiciones:

Tutora: Ing. Mery Luz Pérez -2018 4


2
Unidad Didáctica V- Sentencias Visual Basic

 Si compra entre 6 y 12 motores Monofásicos importados, se aplica un descuento del 8.5


% sobre el monto de compra, y se compra más de 12 motores Monofásicos importados le
corresponde un 12% sobre el monto de compra.
 Si compra más de 12 motores trifásicos Nacionales, se aplica un descuento del 10 %
sobre el monto de compra.

Diseñe una Aplicación en Visual Basic que permita por medio del uso de botones de
comandos, calcular e imprimir:

Botón Procesar Clientes. Este botón debe calcular y mostrar por cada cliente:
a) El Monto de la compra
b) El monto de descuento
c) El monto neto.

Botón Imprimir Estadísticas: Este botón debe calcular y mostrar en cajas de textos:
d) El Promedio de los montos de descuentos en motores trifásicos Nacionales.
e) El monto total acumulado de los montos netos.
f) El porcentaje de clientes que compraron motores Monofásico nacionales.
g) El nombre de cliente con el mayor monto neto, identificado con su nombre.
h) Entre motores monofásicos y trifásicos ¿cuál tipo fue el más vendido?
Botón Salir: Para salir de la Aplicación.

Nro. 3. El Aeropuerto de Barquisimeto desea automatizar el Sistema de Ventas de Boletos. Para


ello se requiere leer los siguientes datos de usuarios: Nombre del usuario, Edad, Línea aérea
(Aserca, Aeropostal, Santa Bárbara), Destino (Caracas, San Cristóbal, Margarita), Tipo de Pago
(Al Contado, Tarjeta de Crédito) y Mes de compra del boleto.

Destino Precio del Boleto (Bs.)


Caracas 200,00
San Cristóbal 300,00
Margarita 350,00

Además se ofrece al público las siguientes políticas:


a.- Por Edad: Si el usuario es mayor de 65 años recibe un descuento del 50% sobre precio
del boleto. Si el usuario es menor de 13 años recibe un descuento del 20% sobre precio del
boleto.

b.- Por Línea Aérea


Aserca: Si el destino es Margarita y compra el boleto en los meses de noviembre y
diciembre, tiene un descuento de 8.5% sobre el precio del boleto.
Aeropostal: Si el destino es Caracas y compra el boleto en el segundo trimestre del
año, tiene un descuento de 4.5% sobre el precio del boleto.

Tutora: Ing. Mery Luz Pérez -2018 4


3
Unidad Didáctica V- Sentencias Visual Basic

Santa Bárbara: Para los destinos San Cristóbal y Caracas en el primer semestre del
año, tiene un descuento de 2.5% sobre el precio del boleto.
c.- Por Tipo de Pago. Si el pago es con Tarjeta de Crédito recibirá un incremento del 2%
sobre el precio del boleto.

Diseñe una Aplicación en Visual Basic que permita usar tres botones de comandos:
Botón Procesar Clientes. Este botón debe calcular y mostrar por cada cliente:
a) El Monto de descuento por edad y por línea aérea.
b) El Monto de incremento por tipo de pago
c) El Monto Total a pagar por cada boleto.

Botón Imprimir Estadísticas: Este botón debe calcular y mostrar en cajas de textos:
d) Promedio de los montos totales de boleto para la línea Aserca.
e) El porcentaje de boletos vendidos con destino Margarita durante el mes de Agosto.
f) El nombre de cliente con el mayor monto de boleto, identificado con su Destino
g) Entre las Líneas aéreas Aserca y Aeropostal, ¿en cuál hubo mayor ventas de boletos?

Botón Salir: Para salir de la Aplicación.

Tutora: Ing. Mery Luz Pérez -2018 4


4
Unidad Didáctica V- Sentencias Visual Basic

Bibliografía

Ceballos, F. Microsoft Visual Basic: Curso de Programación. AlfaOmega Grupo. E. S.A.


México.

Correa G. (1992). Desarrollo de Algoritmos y sus aplicaciones en Basic, Pascal, Cobol y


C. Mc. Graw-Hill, Madrid. España.

Halvorson, Michael. Aprenda Visual Basic 6. Ya McGraw-Hill/ Interamericana de


España, Madrid. España.

Joyanes, L.(1995) Microsoft Visual Basic 6. Editorial Mc Graw Hill.Madrid. España.

Pérez, D. (2009). Guía de Visual Basic. Universidad Centroccidental “Lisandro


Alvarado”. UCLA. Barquisimeto-Venezuela.

Pérez, M. (2010). Guía de Visual Basic. Universidad Centroccidental “Lisandro


Alvarado”. UCLA. Barquisimeto-Venezuela.

MICROSOFT VISUAL BASIC. 1997. Microsoft Corp. Ayuda, Libros en Pantalla.

Tutora: Ing. Mery Luz Pérez -2018 4


5

S-ar putea să vă placă și