Universidad de América Guía de trabajo : Programación Visual Basic Julio de 2003

Página 1 de 29

Tema: Algoritmos y variables Semana: 1 Horas teóricas: 1 semanal Horas prácticas: 3 semanales Objetivos: 1. Dar a conocer a estudiante, las pautas necesarias para los principios generales de la programación. 2. Aprender a diferenciar y utilizar los tipos de datos, variables, constantes, asignaciones a memoria, operadores, captura y salida de datos. Desarrollo: 1. Tipos de datos. En Visual Basic existen varios tipos de datos. Entre ellos se definen: 1.1 Numéricos: integer, long, single, double y currency. 1.2 Cadenas de caracteres: string. 1.3 Lógicos: boolean. 1.4 Variables: variant. 1.5 Fecha: date 2. Variables: Un lugar de almacenamiento con nombre que puede contener cierto tipo de datos que puede ser modificado durante la ejecución del programa. Cada variable tiene un nombre único que la identifica dentro de su nivel de ámbito. Puede especificar un tipo de datos o no. Nombres de variable deben comenzar con un carácter alfabético, deben ser únicos dentro del mismo ámbito, no deben contener más de 255 caracteres y no pueden contener un punto o carácter de declaración de tipo. 3. Constantes: Un elemento con nombre que mantiene un valor constante a través de la ejecución de un programa. Las constantes pueden ser cadenas o literales numéricos, otras constantes o cualquier combinación que incluya operadores aritméticos o lógicos exceptuando Is y la exponenciación. Cada aplicación principal puede definir su propio conjunto de constantes. El usuario puede definir constantes adicionales con la instrucción Const. Puede utilizar constantes en cualquier lugar del código en lugar de valores reales. 4. Asignaciones: Las instrucciones de asignación incluyen siempre un signo igual (=). Al lado izquierdo del signo se encuentra la variable o constante a la cual se asigna y al lado derecho del signo la expresión o valor a asignar. 5. Operadores: 5.1 Realizar operaciones aritméticas. ^, –, *, /, \, Mod, +, &, =. 5.2 Realizar comparaciones. =, <>, <, >, <=, >=, Like, Is 5.3 Realizar operaciones lógicas. Not, And, Or, Xor, Eqv, Imp 6. Captura de datos y salida de datos: ‘Declaración de Variables ‘Captura de datos por teclado ‘Salida de datos a pantalla.

Dim suNombre As String suNombre = InputBox("¿Cómo se llama?") MsgBox "Su nombre es " & suNombre

Nota: buscar e identificar los parámetros de las funciones InputBox y MsgBox. Elaboró: Ing. Carlos Alberto Méndez Barón Aprobó:

Universidad de América Guía de trabajo : Programación Visual Basic Julio de 2003 Tabla de prioridad de operadores lenguaje Visual Basic.
Operador ˆ *,/ Div ( \ ) Mod +,< , >, =, <=, >=, <> No (not) Y (and) O (or) Prioridad Más alta

Página 2 de 29

Más baja

Ejercicios: 1. ¿Cuáles de los siguientes identificadores no son válidos? a) XRayo b) X_Rayo c) R2d2 d) X e) 45 f) N14 g) ZZZZ h) 3& 2. Evaluar la expresión: 4 / 2 * 3 / 6 + 6 / 2 / 1 / 5 ˆ 2 / 4 * 2 3. Evaluar la siguiente expresión par A=2 y B= 5: 3 * A – 4 * B / A ˆ 2 4. Escribir las siguientes expresiones algebraicas como expresiones algorítmicas: 3x + 2 y x + y 3x X 2 +Y2 − 2 2z x 5 Z 4x 2 − 2x + 7
2 2

( x 2 − x1 ) + ( y 2 − y1 ) b 2 − 4ac 5. Si el valor de A es 4, el valor de B es 5 y el de C es 1, evaluar las expresiones: a. B * A – B ˆ 2 / 4 * C b. ( A * B ) / 3 ˆ 2 c. ( ( ( B + C ) / 2 * A + 10 ) * 3 * B ) - 6 6. Si el valor de A es 2, el valor de B es 3 y el de C es 2, evaluar las expresión: a. A ˆ B ˆ C 7. ¿Qué se obtiene en las variables A, B y C después de las instrucciones siguientes? A= 3 B = 20 C =A+ B B =A+ B A= B – C 8. Escribir un algoritmo que lea un número y escriba su cuadrado. 9. determinar la hipotenusa del triángulo rectángulo conocidos sus catetos. 10. Se desea un algoritmo para convertir metros a pies y pulgadas. (1 metro = 39.37 pulgadas, 1 pie = 12 pulgadas). 11. Diseñar un algoritmo que calcule el área de un triángulo en función de las longitudes de sus lados: área = p ( p − a )( p − b )( p − c ) . Donde p = ( a + b + c ) / 2 12. Un corredor de maratón (distancia = 42,195km) ha recorrido la carrera en 2 horas 25 minutos. Se desea un algoritmo que calcule el tiempo medio en minutos por kilómetro. 13. Leer los valores de las variables A y B e intercambiar sus valores. Sólo se debe usar una variable auxiliar y escribir los valores de las variables A y B.

Elaboró: Ing. Carlos Alberto Méndez Barón

Aprobó:

Universidad de América Guía de trabajo : Programación Visual Basic Julio de 2003

Página 3 de 29

Tema: Estructuras condicionales Semana: 2 y 3 Horas teóricas: 1 semanal Horas prácticas: 3 semanales Objetivos: 1. Utilizar estructuras selectivas para la toma de decisiones lógicas. 2. Evaluar condiciones y en función de su resultado realizar una operación u otra. Donde las condiciones pueden ser simples, dobles o múltiples. 3. Conocer y manejar el concepto de estructuras anidadas. Desarrollo: Se puede usar la instrucción IF...Then...Else para ejecutar una instrucción o bloque de instrucciones determinadas, dependiendo del valor de una condición. Las instrucciones If...Then...Else se pueden anidar en tantos niveles como sea necesario. 1. Ejecutar una sola instrucción cuando una condición es True: Para ejecutar una sola instrucción cuando una condición es True, se puede usar la sintaxis de línea única de la instrucción If...Then...Else. El siguiente ejemplo muestra la sintaxis de línea única, en la que se omite el uso de la palabra clave else.
miFecha = #13/2/95# If miFecha < Now Then miFecha = Now

Para ejecutar más de una línea de código, es preciso utilizar la sintaxis de múltiples líneas. Esta sintaxis incluye la instrucción End If, tal y como muestra el siguiente ejemplo:
If valor = 0 Then Color = "Red" Letra = True Estilo = True End If

2. Ejecutar unas instrucciones determinadas si una condición es True y ejecutar otras si es False: Use una instrucción If...Then...Else para definir dos bloques de instrucciones ejecutables: un bloque que se ejecutará cuando la condición es True y el otro que se ejecutará si la condición es False.
If valor = 0 Then Color = vbRed Letra = True Estilo = True Else Color = vbBlack Letra = False Estilo = False End If

3. Comprobar una segunda condición si la primera condición es False: Se pueden añadir instrucciones ElseIf a una instrucción If...Then...Else para comprobar una segunda condición si la primera es False. Por ejemplo, el siguiente procedimiento función calcula una bonificación salarial dependiendo de la clasificación del Elaboró: Ing. Carlos Alberto Méndez Barón Aprobó:

Universidad de América Guía de trabajo : Programación Visual Basic Julio de 2003

Página 4 de 29

trabajador. La instrucción que sigue a la instrucción Else sólo se ejecuta cuando las condiciones de todas las restantes instrucciones If y ElseIf son False.
If rendimiento = 1 Then Bonificación = salario * 0.1 ElseIf rendimiento = 2 Then Bonificación = salario * 0.09 ElseIf rendimiento = 3 Then Bonificación = salario * 0.07 Else Bonificación = 0 End If

Sin embargo, para hacer más legible el código es aconsejable utilizar una instrucción Select Case en vez de recurrir a múltiples niveles de instrucciones If...Then...Else anidadas. La instrucción Select Case se utiliza como alternativa a las instrucciones ElseIf en instrucciones If...Then...Else cuando se compara una expresión con varios valores diferentes. Mientras que las instrucciones If...Then...Else pueden comparar una expresión distinta para cada instrucción ElseIf, la instrucción Select Case compara únicamente la expresión que evalúa al comienzo de la estructura de control. En el siguiente ejemplo, la instrucción Select Case evalúa el argumento rendimiento que se pasa al procedimiento. Observe que cada instrucción Case puede contener más de un valor, una gama de valores, o una combinación de valores y operadores de comparación. La instrucción opcional Case Else se ejecuta si la instrucción Select Case no encuentra ninguna igualdad con los valores de la instrucciones Case.
Select Case rendimiento Case 1 Bonificación = salario * 0.1 Case 2, 3 Bonificación = salario * 0.09 Case 4 To 6 Bonificación = salario * 0.07 Case Is > 8 Bonificación = 100 Case Else Bonificación = 0 End Select

Elaboró: Ing. Carlos Alberto Méndez Barón

Aprobó:

Universidad de América Guía de trabajo : Programación Visual Basic Julio de 2003

Página 5 de 29

Ejercicios: 1. Resolver la ecuación de primer grado: ax + b = 0. a <> 0 x=-b/a a = 0 b <> 0 entonces << solución imposible >> a <> 0 b <> 0 entonces << solución indeterminada >> 2. Escriba un algoritmo que acepte tres números enteros y escriba el mayor de ellos. 3. Escriba un algoritmo para resolver la ecuación de segundo grado Ax2 + Bx + C = 0. 4. Leer un número entero y determinar si es par o impar. 5. Leer un número entero y determinar si es positivo o negativo. 6. Leer nombre, sexo y edad de una persona y determinar si es adulto o niño. 7. Leer un número y obtener su cuadrado, su cubo y su raíz cuadrada. 8. Escriba un algoritmo que acepte tres números enteros y escriba, el mayor y el menor de ellos. Pero si hay dos o más repetidos, escribe un aviso “Duplicados”. 9. Leer un año y determinar si es bisiesto o no. 9.1 Para ser bisiesto el año es exactamente divisible en 4. 9.2 No puede ser múltiplo de 100 9.3 Puede ser múltiplo de 1000. 10. Leer un número de mes y determinar si tiene 28, 29, 30 ó 31 días. 11. Leer un número de día de semana y escriba en palabras (1 = lunes, 7 = domingo). 12. Desarrollar un algoritmo que lea día, mes y año, y calcule el día siguiente.

Elaboró: Ing. Carlos Alberto Méndez Barón

Aprobó:

Universidad de América Guía de trabajo : Programación Visual Basic Julio de 2003

Página 6 de 29

Tema: Ciclos o bucles Semana: 4 y 5 Horas teóricas: 1 semanal Horas prácticas: 3 semanales Objetivos: 1. Aprender el uso de los contadores y acumuladores. 2. Facilitar el uso de instrucciones repetitivas para algoritmos más complejos. 3. Discriminar el uso de estructuras con datos centinela y sin ellos. Desarrollo: 1. Repetir instrucciones con inicio y fin de conteo. Se pueden usar instrucciones For...Next para ejecutar un bloque de instrucciones un número finito de veces.
For I = 1 To 10 MsgBox “El índice tiene valor de ” & I Next

Se pueden anidar bucles For...Next, colocando un bucle For...Next dentro de otro. Para ello, proporcione a cada bucle un nombre de variable único como su contador. La siguiente construcción es correcta:
Dim Palabras, Caracteres, MiCadena For Palabras = 10 To 1 Step -1 ' Establece 10 repeticiones. For Caracteres = 0 To 9 ' Establece 10 repeticiones. MiCadena = MiCadena & Caracteres ' Agrega un número a la cadena. Next Caracteres ' Incrementa el contador MiCadena = MiCadena & " " ' Agrega un espacio. Next Palabras

2. Repetir instrucciones mientras una condición es True. Se pueden usar instrucciones Do...Loop para ejecutar un bloque de instrucciones un número indefinido de veces. Las instrucciones se repiten mientras una condición sea True o hasta que llegue a ser True. Ejemplo 1:
contador = 0 miNum = 20 Do While miNum > 10 miNum = miNum - 1 contador = contador + 1 Loop MsgBox "El bucle se ha repetido " & contador & " veces."

Ejemplo 2:
contador = 0 miNum = 9 Do miNum = miNum - 1 contador = contador + 1 Loop While miNum > 10 MsgBox "El bucle se ha repetido " & contador & " veces."

Elaboró: Ing. Carlos Alberto Méndez Barón

Aprobó:

Universidad de América Guía de trabajo : Programación Visual Basic Julio de 2003

Página 7 de 29

3. Repetir instrucciones hasta que una condición llegue a ser True. Hay dos formas de utilizar la palabra clave Until para comprobar el estado de una condición en una instrucción Do...Loop. Se puede comprobar la condición antes de entrar en el bucle (como muestra el primer ejemplo) o se pueden comprobar después de que el bucle se haya ejecutado al menos una vez (como muestra el segundo ejemplo). El bucle sigue ejecutándose mientras la condición siga siendo False. Ejemplo 1:
contador = 0 miNum = 20 Do Until miNum = 10 miNum = miNum - 1 contador = contador + 1 Loop MsgBox "El bucle se ha repetido " & contador & " veces."

Ejemplo 2:
contador = 0 miNum = 1 Do miNum = miNum + 1 contador = contador + 1 Loop Until miNum = 10 MsgBox "El bucle se ha repetido " & counter & " veces."

Ejercicios: 1. Se desea calcular la suma independiente de los pares e impares entre 1 y 200. 2. Leer una serie de números distintos de cero (el último es -99) y obtener el mayor. 3. Leer 500 números enteros y obtener cuántos son positivos. 4. Calcular la media de cincuenta números e imprimir su resultado. 5. Desarrollar un algoritmo que determine en un conjunto de cien números naturales: a. ¿cuántos son menores de 15? b. ¿cuántos son mayores de 50? c. ¿cuántos están comprendidos entre 25 y 45? 6. ¿N es primo? 7. Calcular factorial de N. 8. Leer un número entero positivo y lo escriba invertido. 9. Leer un número entero positivo de cinco cifras y obtener la del centro. 10. Leer un número entero positivo de Seis cifras. Sumar las del centro y multiplicar los extremos entre si. 11. Desarrollar un algoritmo que escriba la frase “¿Desea continuar? S/N” hasta ingresar la letra “S” o la letra “N”. 12. Leer una frase terminada en “.” (punto) y cuente cuántas vocales “i” existen. 13. Determinar el precio de un pasaje de ida y regreso en bus intermunicipal, conociendo la distancia a recorrer y sabiendo que si el número de días de estancia es superior a 7 y la distancia superior a 800 km el pasaje tiene una reducción del 30%. El precio por km es de $2500. 14. Realizar un algoritmo que escriba los N primeros números de la serie de Fibonacci. La serie es: 0, 1, 1, 2, 3, 5, 8, 13, 21, … 15. Escribir todos los números primos entre 2 y 100 inclusive. Elaboró: Ing. Carlos Alberto Méndez Barón Aprobó:

Universidad de América Guía de trabajo : Programación Visual Basic Julio de 2003 16. Calcular: E ( x ) = 1 + x +

Página 8 de 29

x2 xn + ... + 2! n! 17. Se desea conocer una serie de datos de una empresa con 50 empleados: a. ¿cuántos empleados ganan más de $300.000 al mes? b. ¿cuántos empleados ganan entre $100.000 y $300.000 al mes? c. ¿cuántos empleados ganan menos de $100.000 al mes. 16. Carlos Felipe y Juan Pablo (expertos jugadores de billar) han pactado un encuentro a N carambolas. Pero tienen sus propias reglas: a. Una carambola equivale a 1 punto si se hace bola a bola. b. Si es tres bandas, y únicamente con tres bandas, equivale a 6 puntos. c. Por cada banda que toque sin cumplir la regla anterior, equivale a 1 punto. Se desea saber el nombre del ganador del encuentro y cuántos puntos de diferencia. x3 x5 x7 17. Calcular el seno de x mediante la siguiente serie: sen( x) = x − + − + ... 3! 5! 7! 18. Calcular la nota media de un curso de programación, sabiendo que N es el número de alumnos del curso y C la cantidad de notas por cada alumno. 19. De una serie de 10 números enteros, eliminar el número mayor y el número menor de los 10 y con los restantes obtener su media aritmética. Tenga presente que los números se ingresan en desorden y pueden ser positivos y/o negativos.

Elaboró: Ing. Carlos Alberto Méndez Barón

Aprobó:

Universidad de América Guía de trabajo : Programación Visual Basic Julio de 2003

Página 9 de 29

Tema: Introducción ambiente Visual Basic Semana: 6 Horas teóricas: 1 semanal Horas prácticas: 3 semanales Objetivos: 1. Conocer los aspectos primarios y pantallas comunes del ambiente visual basic. 2. Identificar cada objeto y cómo se componen al momento de hablar de cada uno. Desarrollo: Al iniciar Visual Basic, después de una pequeña espera en la pantalla aparecerá una serie de ventanas. Inicialmente al centro verá una ventana en blanco que tiene una malla de puntos (figura No.1). Este es el ‘formulario’ que hay que personalizar, cuyo título de ventana es Form1.

Figura No.1 A la izquierda del formulario está la caja de herramientas o ToolBox (Figura 2.). Donde se encuentra la mayor cantidad de objetos para desarrollo de clase. A los proyectos visual se les adicionan otros objetos que no están en la figura pero ellos son complementos. Al lado derecho del formulario está la ventana de proyectos (figura 3.). En la cual se encuentran los formularios, módulos u objetos auxiliares que componen el proyecto final.

Figura 3.

Figura 2. Las figuras 1 a 6 corresponden a la versión Visual Basic 6.0. En algunas ocasiones pueden variar las vistas, pues ello depende de cómo estén configuradas las pantallas de trabajo para Elaboró: Ing. Carlos Alberto Méndez Barón Aprobó:

Universidad de América Guía de trabajo : Programación Visual Basic Julio de 2003

Página 10 de 29

cada usuario. Sin embargo para los objetivos de la clase, no importa si es versión 3.0 ó 6.0 la guía funcionará sin inconvenientes. Existen otras ventanas muy importantes al momento de crear un proyecto en visual. Y ellas son: la ventana de diseño (la cual permite manipular los proyectos. Figura 4) y la ventana de código (figura 5). Figura 4. La ventana de código se visualiza al momento de realizar un doble clic izquierdo sobre el formulario.

Figura 5. La ventana de código también permite obtener un listado de los objetos usados en cada formulario y sus respectivos eventos (figura 6).

Figura 6. Dichos eventos varían según el objeto. Para el ejemplo se ven eventos ‘Load’, Key…’, ‘Mouse…’ y otros que en este caso sólo aplican al formulario. Nótese que el objeto seleccionado se encuentra en la parte superior izquierda de la ventana y el procedimiento o evento de trabajo está al lado derecho. NO todos los objetos poseen los mismos eventos. Igualmente observe que dentro de la ventana de código se visualizan los términos ‘Private Sub <<objeto_evento>>’ y ‘End Sub’. Pues es en medio de ellos donde se escribe el código a trabajar. Los objetos de la barra de herramientas son: Seleccionar de objetos. Image o imagen. Aprobó: Label o etiqueta.

Elaboró: Ing. Carlos Alberto Méndez Barón

Universidad de América Guía de trabajo : Programación Visual Basic Julio de 2003

Página 11 de 29

Text o texto. Check o caja de chequeo. List o cuadro de listas.

Frame o marco. Option o botón de opción. HscrollBar o barra de desplazamiento horizontal. Drive o unidad de disco. Shape o figura. Data o herramienta de Base de datos.

Command o botón de órdenes. Combo o cuadro combinado. VscrollBar o barra de desplazamiento vertical. Fólder o carpeta de directorios. Line o línea. Ole o incrustrador de objetos auxiliares (ole).

Timer o temporizador.

File o archivo. Picture o gráfico.

Todos los objetos ya mencionados y otros no descritos, tienen características para su utilización. Dichas características son llamadas ‘propiedades’. Las cuales según el objeto pueden variar. Pero la propiedad que tienen todos sin excepción es el nombre o ‘name’. Las propiedades de los objetos de la caja de herramientas y el formulario pueden ser modificadas a través de la ventana de propiedades o ‘properties’ (figura 7). Fíjese que en la ventana aparecen algunas propiedades del formulario. Name: nombre del objeto. Caption: título de la ventana (form1). ControlBox: caja de control de la ventana. Existen propiedades de falso o verdadero, de estilo, modelo, colores y otras. Por eso es importante diferenciar las propiedades según el objeto. Sin embargo pueden verse las propiedades en orden alfabético o por categorías. Recuerde que esta figura es Visual 6.0. Figura 7. En la ventana de código encontrará un objeto en listado denominado ‘general’. No es un objeto físico como tal, es decir no es que haga parte de la caja de herramientas. Es un área Elaboró: Ing. Carlos Alberto Méndez Barón Aprobó:

Universidad de América Guía de trabajo : Programación Visual Basic Julio de 2003

Página 12 de 29

de visual destinado al uso de la memoria. Es allí donde se declaran las variables o constantes que se utilizarán dentro del formulario en uso. Las declaraciones o definiciones de las variables o constantes tienen la siguiente presentación:
Const MiVar = 459 ' Las constantes son privadas de manera predeterminada. Public Const MiCadena = "AYUDA" Private Const MiEnt As Integer = 5 ' Declara constante Public. ' Declara constante Private Integer.

' Declara varias constantes en la misma línea. Const MiCad = "Hola", MiDoble As Double = 3.4567 'AlgúnValor y MiValor se declaran como Variant de ' manera predeterminada, con los valores Empty. Dim AlgúnValor, MiValor ' Se declara explícitamente una variable del tipo Integer. Dim Número As Integer ' Declaraciones múltiples en una línea. OtraVar es del tipo Variant ' porque se omite su tipo. Dim OtraVar, Elegir As Boolean, FechaNacimiento As Date ' MatrizDías es una matriz de Variants con un índice de 51 elementos, que va de 0 hasta 50, suponiendo que Option Base está configurada como 0 (predeterminada) en el módulo actual. Dim MatrizDías(50) ' Matriz es una matriz bidimensional de enteros. Dim Matriz(3, 4) As Integer ' MiMatriz es una matriz tridimensional de dobles con límites explícitos. Dim MiMatriz(1 To 5, 4 To 9, 3 To 5) As Double ' FechaNacimiento es una matriz de fechas con índices del 1 al 10. Dim FechaNacimiento(1 To 10) As Date ' MiMatriz es una matriz dinámica de variantes. Dim MiMatriz()

Al momento de guardar su trabajo visual basic, tenga presente que este recibe el nombre de ‘proyecto’ y le solicitará guardar dos archivos (como mínimo). Un archivo de extensión FRM el cual corresponde al formulario en uso (o más si los tienen) y otro archivo de extensión MAK en versión 3.0 ó VBP en versión 6.0, el cual corresponde propiamente al proyecto. Es allí donde se arma el proyecto con todos sus componentes. Guardar el archivo de proyecto no implica guardar todo en la misma unidad de disco. Tenga mucha precaución al destinar la unidad de disco donde almacena todo.

Elaboró: Ing. Carlos Alberto Méndez Barón

Aprobó:

Universidad de América Guía de trabajo : Programación Visual Basic Julio de 2003

Página 13 de 29

Tema: Objetos command, label y text. Semana: 7 Horas teóricas: 1 semanal Horas prácticas: 3 semanales Objetivos: 1. Identificar los objetos del tema propuesto con sus principales propiedades. 2. Aprender el uso de objetos para la captura, procesamiento y salida de datos. Desarrollo: En todos los objetos hay varias propiedades importantes, pero según el objeto de clase, mencionaré las usadas para el momento. Donde ‘Name’ siempre será la más importante. 1. Botón de órdenes (Command). Es el objeto donde regularmente se escriben las instrucciones o algoritmos que permiten el desarrollo de un ejercicio. Las principales propiedades son: a. Caption: Rótulo o título de presentación del objeto. b. Enabled: (true, false) permite tener activo o no el uso del botón c. Visible: (true, false) deja visible u oculto el botón en el formulario. Para programar el botón de órdenes, realice doble clic en él. Verá en la parte superior derecha que el evento de inicio es de tipo ‘click’ sub command1_click(). Ello implica que al momento de ejecutar el proyecto y se realice un clic, el botón de órdenes ejecutará el ejercicio ahí programado. 1. Etiqueta (Label). Propiedades a tener en cuenta… Caption, Autosize, BorderStyle. 2. Caja de texto (Text). Propiedad básica… Text. En este objeto no existe Caption, pero se reemplaza por la propiedad de texto. Ejercicio: Abra un proyecto nuevo y adicione un command, cuatro labels y cuatro text. Ubique en columna los cuatro labels y frente a cada uno los texts. En la parte inferior los dos commands. Luego modifique las propiedades así:
Objeto Command1 Command2 Label1 Label2 Label3 Label4 Text1, Text2, Text3, Text4 Valor inicial de propiedad Caption = &Calcular Caption = &Salir Caption = ¿Cantidad anual? Caption = ¿Tasa de interés? Caption = ¿Número de años? Caption = Total Text = “”

Algoritmo:
Sub command1_click() ‘calcula el valor al jubilarse de una cantidad anual fija ‘y a una tasa de interés fija también Dim cantidad as currency, total as currency Dim interés as single Dim años, i as integer Total = 0 Cantidad = Val(text1.text) Interés = Val(text2.text) / 100 Años = val(text3.text) For I = 1 to años

Elaboró: Ing. Carlos Alberto Méndez Barón

Aprobó:

Universidad de América Guía de trabajo : Programación Visual Basic Julio de 2003
Total = Cantidad + Total + (Total * Interés) Next Text4.text = format$(Total, “###,###.##”) End sub Sub command2_click() End End Sub

Página 14 de 29

Ejercicios para desarrollar: 1. 2. 3. 4. 5. Leer un número y obtener su cuadrado, su cubo y su raíz cuadrada. ¿N es primo? Leer un número entero y determinar si es par o impar. Calcular factorial de N. Desarrollar un algoritmo que lea día, mes y año, y calcule el día siguiente.

Elaboró: Ing. Carlos Alberto Méndez Barón

Aprobó:

Universidad de América Guía de trabajo : Programación Visual Basic Julio de 2003

Página 15 de 29

Tema: Objetos option, check y frame Semana: 8 Horas teóricas: 1 semanal Horas prácticas: 3 semanales Objetivos: 1. Identificar los objetos del tema propuesto con sus principales propiedades. 2. Incentivar la investigación por el uso de nuevas propiedades. Como ya se ha aprendido a manejar el concepto de propiedades, objetos y eventos; a partir de esta sección sólo se indicarán los objetos a utilizar, las propiedades a modificar y un algoritmo para conocer su aplicación. Ejercicio: Diseñe el siguiente esquema en el formulario y modifique propiedades. Para que un subobjeto (option1) quede adherido al marco1 (frame1), primero seleccione el ‘option’, luego córtelo (Control+X), luego seleccione el marco (frame) y finalmente péguelo (Control+V). Si no corta y pega, el objeto sale del marco y ello implica que le pertenece al formulario y no al marco.

Objeto Valor inicial de propiedad Option1 Caption = Primera Option2 Caption = Turista Option3 Caption = Normal Option4 Caption = Sencillo Option5 Caption = Doble Check1 Caption = Desayuno Check2 Caption = Almuerzo Check3 Caption = Cena Check4 Caption = Niño Check5 Caption = Extra Frame1 Caption = Vuelo Frame2 Carlos Alberto Comida Barón Elaboró: Ing. Caption = Méndez Aprobó: Frame3 Caption = Hospedaje Command1 Caption = Calcular Command2 Caption = Fin Label1 Caption = “”

Universidad de América Guía de trabajo : Programación Visual Basic Julio de 2003

Página 16 de 29

Algoritmo:
Private Sub Command1_Click() Dim Valor_Vuelo, Valor_Hospedaje As Currency Dim Valor_Comida1, Valor_Comida2, Valor_Comida3 As Currency Dim Valor_Adicional1, Valor_Adicional2 As Currency Dim Valor_TComida, Valor_TAdicional, Valor_Total As Currency If Option1.Value = True Then Valor_Vuelo = 500000 ElseIf Option2.Value = True Then Valor_Vuelo = 250000 ElseIf Option3.Value = True Then Valor_Vuelo = 350000 End If If Check1.Value = 1 Then Valor_Comida1 = 4500 If Check2.Value = 1 Then Valor_Comida2 = 7500 If Check3.Value = 1 Then Valor_Comida3 = 3500 Valor_TComida = Valor_Comida1 + Valor_Comida2 + Valor_Comida3 If Option4.Value = True Then Valor_Hospedaje = 150000 ElseIf Option5.Value = True Then Valor_Hospedaje = 200000 End If If Check4.Value = 1 Then Valor_Adicional1 = 25000 If Check5.Value = 1 Then Valor_Adicional2 = 75000 Valor_TAdicional = Valor_Adicional1 + Valor_Adicional2 Valor_Total = Valor_Vuelo + Valor_TComida + Valor_Hospedaje + Valor_TAdicional Label1.Caption = Format(Valor_Total, "$###,###") End Sub Private Sub Command2_Click() End End Sub

Elaboró: Ing. Carlos Alberto Méndez Barón

Aprobó:

Universidad de América Guía de trabajo : Programación Visual Basic Julio de 2003

Página 17 de 29

Tema: Objetos combo y list Semana: 9 Horas teóricas: 1 semanal Horas prácticas: 3 semanales Objetivos: 1. Identificar los objetos del tema propuesto con sus principales propiedades. 2. Incentivar la investigación por el uso de nuevas propiedades. Ejercicio:
Objeto Combo1 Combo2 Combo3 Combo4 List1 Command1 Command2 Command3 Valor inicial de propiedad Sorted = False Text = Artículo Sorted = False Text = Sujeto Sorted = False Text = Verbo Sorted = False Text = Complemento Height = 645 Sorted = False Width = 2750 Caption = Adicionar Caption = Eliminar Caption = Terminar

Algoritmo:
Private Sub Command1_Click() List1.AddItem Combo1.Text & " " & Combo2.Text & " " & Combo3.Text & " " & Combo4.Text End Sub Private Sub Command2_Click() Dim I As Integer I = List1.ListIndex If I >= 0 Then List1.RemoveItem (I) ' Puede reemplazar las tres instrucciones anteriores con: ' If List1.ListIndex >= 0 Then List1.RemoveItem (List1.ListIndex) End Sub Private Sub Command3_Click() End End Sub Private Sub Form_Load() Combo1.AddItem "El" Combo1.AddItem "La" Combo1.AddItem "Los" Combo1.AddItem "Las" Combo2.AddItem Combo2.AddItem Combo2.AddItem Combo2.AddItem "casa" "señor" "persona" "día"

Elaboró: Ing. Carlos Alberto Méndez Barón

Aprobó:

Universidad de América Guía de trabajo : Programación Visual Basic Julio de 2003
Combo2.AddItem "niñas" Combo2.AddItem "libros" Combo3.AddItem Combo3.AddItem Combo3.AddItem Combo3.AddItem Combo3.AddItem Combo3.AddItem Combo3.AddItem Combo4.AddItem Combo4.AddItem Combo4.AddItem Combo4.AddItem Combo4.AddItem Combo4.AddItem Combo4.AddItem Combo4.AddItem End Sub "tiene" "tienen" "toma" "corre" "canta" "juega" "mira" "luz." "hojas." "muñecos." "agua." "fuerte." "rápido." "sola." "al frente."

Página 18 de 29

Elaboró: Ing. Carlos Alberto Méndez Barón

Aprobó:

Universidad de América Guía de trabajo : Programación Visual Basic Julio de 2003

Página 19 de 29

Tema: Objetos HscrollBar y VscrollBar Semana: 10 Horas teóricas: 1 semanal Horas prácticas: 3 semanales Objetivos: 1. Identificar los objetos del tema propuesto con sus principales propiedades. 2. Incentivar la investigación por el uso de nuevas propiedades. Ejercicio: Ubique tres barras de desplazamiento vertical y sobre cada una de ellas una etiqueta o label.
Objeto Vscroll1 Vscroll2 Vscroll3 Command1 Label1 Label2 Label3 Valor inicial de propiedad Min = 100 Max = -100 Value = 0 Min = 212 Max = -148 Value = 32 Min = 373 Max = 173 Value = 273 Caption = Fin Caption = “” Caption = “” Caption = “”

Algoritmo:
Private Sub Command1_Click() End End Sub Private Sub VScroll1_Change() Label1.Caption = Str(VScroll1.Value) + "ºC" Label2.Caption = Str(VScroll2.Value) + "ºF" Label3.Caption = Str(VScroll3.Value) + "ºK" VScroll2.Value = 9 / 5 * VScroll1.Value + 32 VScroll3.Value = VScroll1.Value + 273 End Sub Private Sub VScroll2_Change() Label1.Caption = Str(VScroll1.Value) + "ºC" Label2.Caption = Str(VScroll2.Value) + "ºF" Label3.Caption = Str(VScroll3.Value) + "ºK" VScroll1.Value = 5 / 9 * (VScroll2.Value - 32) VScroll3.Value = VScroll1.Value + 273 End Sub Private Sub VScroll3_Change() Label1.Caption = Str(VScroll1.Value) + "ºC" Label2.Caption = Str(VScroll2.Value) + "ºF" Label3.Caption = Str(VScroll3.Value) + "ºK" VScroll1.Value = VScroll3.Value - 273 VScroll2.Value = 9 / 5 * VScroll1.Value + 32 End Sub

Elaboró: Ing. Carlos Alberto Méndez Barón

Aprobó:

Universidad de América Guía de trabajo : Programación Visual Basic Julio de 2003

Página 20 de 29

Elaboró: Ing. Carlos Alberto Méndez Barón

Aprobó:

Universidad de América Guía de trabajo : Programación Visual Basic Julio de 2003

Página 21 de 29

Tema: Objetos shape y line Semana: 11 Horas teóricas: 1 semanal Horas prácticas: 3 semanales Objetivos: 1. Identificar los objetos del tema propuesto con sus principales propiedades. 2. Incentivar la investigación por el uso de nuevas propiedades. Ejercicio:
Objeto Shape1 Valor inicial de propiedad Height = 495 Left = 2040 Shape = 3 – Circle Top = 500 Width = 495 X1 = 1320 X2 = 3360 Y1 = 1440 Y2 = 1440 Caption = Izquierda Caption = Derecha Caption = Arriba Caption = Abajo Caption = Fin

Line1 Command1 Command2 Command3 Command4 Command5

Algoritmo:
Private Sub Command1_Click() Shape1.Left = Shape1.Left - 100 'Izquierda Line1.X1 = Line1.X1 - 100 Line1.X2 = Line1.X2 - 100 End Sub Private Sub Command2_Click() Shape1.Left = Shape1.Left + 100 'Derecha Line1.X1 = Line1.X1 + 100 Line1.X2 = Line1.X2 + 100 End Sub Private Sub Command3_Click() Shape1.Top = Shape1.Top - 100 'Arriba Line1.Y1 = Line1.Y1 - 100 Line1.Y2 = Line1.Y2 - 100 End Sub Private Sub Command4_Click() Shape1.Top = Shape1.Top + 100 'Abajo Line1.Y1 = Line1.Y1 + 100 Line1.Y2 = Line1.Y2 + 100 End Sub Private Sub Command5_Click() End End Sub

Elaboró: Ing. Carlos Alberto Méndez Barón

Aprobó:

Universidad de América Guía de trabajo : Programación Visual Basic Julio de 2003

Página 22 de 29

Tema: Objeto timer o temporizador. Semana: 12 Horas teóricas: 1 semanal Horas prácticas: 3 semanales Objetivos: 1. Identificar los objetos del tema propuesto con sus principales propiedades. 2. Incentivar la investigación por el uso de nuevas propiedades. Ejercicio:
Objeto Command1 Command2 Command3 Command4 Command5 Valor inicial de propiedad Caption = Izquierda Caption = Abajo Caption = Derecha Caption = Arriba Caption = Fin Left = 1500 Shape1 Top = 1500 Timer1,2,3,4 Interval = 100

Algoritmo:
Private Sub Command1_Click() ‘Izquierda Timer1.Enabled = False Timer2.Enabled = True Timer3.Enabled = False Timer4.Enabled = False End Sub Private Sub Command2_Click() ‘Abajo Timer1.Enabled = False Timer2.Enabled = False Timer3.Enabled = True Timer4.Enabled = False End Sub Private Sub Command3_Click() ‘Derecha Timer1.Enabled = False Timer2.Enabled = False Timer3.Enabled = False Timer4.Enabled = True End Sub Private Sub Command4_Click() ‘Arriba Timer1.Enabled = True Timer2.Enabled = False Timer3.Enabled = False Timer4.Enabled = False End Sub Private Sub Command5_Click() ‘Fin End End Sub Private Sub Timer1_Timer() Shape1.Left = Shape1.Left + 100

Elaboró: Ing. Carlos Alberto Méndez Barón

Aprobó:

Universidad de América Guía de trabajo : Programación Visual Basic Julio de 2003
If Shape1.Left > Form1.Width Then Shape1.Left = -500 End Sub

Página 23 de 29

Private Sub Timer2_Timer() Shape1.Left = Shape1.Left - 100 If Shape1.Left < -500 Then Shape1.Left = Form1.Width + 500 End Sub Private Sub Timer3_Timer() Shape1.Top = Shape1.Top + 100 If Shape1.Top > Form1.Height Then Shape1.Top = -500 End Sub Private Sub Timer4_Timer() Shape1.Top = Shape1.Top - 100 If Shape1.Top <= 0 Then Shape1.Top = Form1.Height - 500 End Sub

Elaboró: Ing. Carlos Alberto Méndez Barón

Aprobó:

Universidad de América Guía de trabajo : Programación Visual Basic Julio de 2003

Página 24 de 29

Tema: Gráficos: pset, line, circle, rgb y qbcolor Semana: 13 Horas teóricas: 1 semanal Horas prácticas: 3 semanales Objetivos: 1. Conocer el ambiente gráfico de visual basic aplicado a un objeto ‘picture’. 2. Identificar el proceso para la asignación de espacio graficador o escala de trazado. 3. Reconocer propiedades de funciones gráficas. Donde su nombre real es: parámetros. Desarrollo: Antes de iniciar la práctica, cabe mencionar que para trazar en modo gráfico de visual basic, los objetos no aparecen en la barra de herramientas. Así mismo es posible hacer los trazos en el ‘form’ o en el ‘picture’. Bien sea uno u otro, es necesario inicialmente definir la escala de trazo. Crear un plano cartesiano. Para tal efecto siempre se definen las coordenadas indicando las diagonales opuestas. Por ejemplo: en un plano cartesiano cuyas coordenadas en X son desde –10 a 10 y en Y son desde 50 a –50; se define con la instrucción scale( x1 , y1 ) - ( x2 , y2 ) o scale(-10,50)-(10,-50). Nótese que los cuatros puntos forman una diagonal opuesta. Si lo que se desea es definir la escala en el ‘picture1’, la instrucción es: picture1. scale(-10,50)-(10,-50). Esta definición de escala se realiza en ‘Private sub form_load( )’, como se ve en el algoritmo siguiente. Nota: puede definir un cuadrante, dos cuadrantes o los cuatro cuadrantes del plano cartesiano. Pero no tres. Siempre indicándolo con las diagonales opuestas. Funciones: 1. Colores: Puede o no adicionar a cada función graficadora. a. Qbcolor(#). El número varia de cero a quince (0 a 15). b. RGB(#,#,#). Cada uno de los tres números varía de (0 a 255). 2. Pset (x, y)  ubica un punto en el plano cartesiano. Si se desea dar color al punto Ejemplo: form1.pset( 10, 10 ),qbcolor( 8 ) o picture1.pset( 10, 10 ),RGB( 8, 200 , 0) 3. Line ( x1, y1 ) - ( x2, y2 ), bf , color.  La letra ‘b’ indica ‘box’ y la ‘f’ ‘fill’. 4. Circle (x, y), radio, color, inicio, fin, estilo  cada parámetro es numérico. Ejercicio:
Objeto Form1 Valor inicial de propiedad Caption = Modo gráfico Height = 3450 Width = 6975 Height = 2175 Left = 120 Top = 120 Width = 6615 Caption = Líneas Height = 495 Left = 120 Top = 2400 Width = 735 Caption = Cuadros Height = 495 Left = 960 Top = 2400 Width = 855

Picture1

Command1

Command2

Elaboró: Ing. Carlos Alberto Méndez Barón

Aprobó:

Universidad de América Guía de trabajo : Programación Visual Basic Julio de 2003
Objeto Command3 Valor inicial de propiedad Caption = Círculo Height = 495 Left = 1920 Top = 2400 Width = 735 Caption = Elipses Height = 495 Left = 2760 Top =2400 Width = 735 Caption = Arco Height = 495 Left = 3600 Top = 2400 Width = 735 Caption = Sector Height = 495 Left = 4440 Top = 2400 Width = 735 Caption = Borrar Height = 495 Left = 5280 Top = 2400 Width = 855 Caption = Fin Height = 495 Left = 6240 Top = 2400 Width = 495

Página 25 de 29

Command4

Command5

Command6

Command7

Command8

Algoritmo:
Const Pi = 3.141592654 ‘ Esta instrucción se realiza en el objeto General Private Sub Command1_Click() Picture1.Line (-25, 30)-(20, 30), QBColor(2) 'Linea End Sub Private Sub Command2_Click() Picture1.Line (-45, 20)-(-25, 40), QBColor(3), B Picture1.Line (20, 20)-(40, 40), QBColor(3), BF End Sub Private Sub Command3_Click() Picture1.Circle (10, -15), 5, QBColor(4) 'Círculo End Sub Private Sub Command4_Click() Picture1.Circle (-35, -15), 5, QBColor(5), -Pi, -Pi / Picture1.Circle (-45, -15), 5, QBColor(5), -Pi, -Pi / Picture1.Circle (25, -15), 5, QBColor(5), Pi, Pi / 2, Picture1.Circle (35, -15), 5, QBColor(5), Pi, Pi / 2, 2, 0.5 2, 1.5 0.5 1.5 'Elipse 'Elipse 'Elipse 'Elipse 1 2 3 4 'Caja vacía 'Caja sólida

Elaboró: Ing. Carlos Alberto Méndez Barón

Aprobó:

Universidad de América Guía de trabajo : Programación Visual Basic Julio de 2003
End Sub

Página 26 de 29

Elaboró: Ing. Carlos Alberto Méndez Barón

Aprobó:

Universidad de América Guía de trabajo : Programación Visual Basic Julio de 2003

Página 27 de 29

Private Sub Command5_Click() Picture1.Circle (-5, -15), 5, QBColor(6), Pi, Pi / 2 'Arco End Sub Private Sub Command6_Click() Picture1.Circle (-20, -15), 5, QBColor(8), -Pi, -Pi / 2 'Sector End Sub Private Sub Command7_Click() Picture1.Cls 'Borrar contenido End Sub Private Sub Command8_Click() End 'Fin del programa End Sub Private Sub Form_Load() Picture1.Scale (-50, 50)-(50, -50) 'Escala inicial End Sub

• • • • • •

Tenga presente que todo se grafica en el ‘Picture1’. PI, es una constante usada en varios ‘Command’ por eso se declara ‘General’. Puede obviar parámetros como color, relleno (fill), caja (box) en la línea. Se llama sector a los arcos cerrados. Puede cerrar uno o los dos extremos con signo (-) menos. La elipse cambia su último parámetro para ser más ancha o más alta. Para tal caso puede tomar número menores a Uno (0.1, ..., 0.9) ó mayores a Uno (1, 1.5, ..., etc.). Todos los parámetros se separan con ‘comas’. Si no desea adicionar un parámetro puede utilizar doble coma. Ejemplo: Circle ( 5, 5 ), 4, , PI, PI/4

Elaboró: Ing. Carlos Alberto Méndez Barón

Aprobó:

Universidad de América Guía de trabajo : Programación Visual Basic Julio de 2003

Página 28 de 29

Tema: Creación menús y entrelace forms Semana: 14 Horas teóricas: 1 semanal Horas prácticas: 3 semanales Objetivos: 1. Identificar los objetos del tema propuesto con sus principales propiedades. 2. Incentivar la investigación por el uso de nuevas propiedades. Ejercicio:

Elaboró: Ing. Carlos Alberto Méndez Barón

Aprobó:

Universidad de América Guía de trabajo : Programación Visual Basic Julio de 2003

Página 29 de 29

Tema: Objeto data Semana: 15 Horas teóricas: 1 semanal Horas prácticas: 3 semanales Objetivos: 1. Identificar los objetos del tema propuesto con sus principales propiedades. 2. Incentivar la investigación por el uso de nuevas propiedades. Ejercicio:

Elaboró: Ing. Carlos Alberto Méndez Barón

Aprobó: