Operadores En Visual Basic
Los principales operadores en Visual Basic 2010 son:
- Operadores Aritméticos:
Sirven para hacer cálculos matemáticos con valores numéricos.
- Operadores lógicos:
Combinan un valor boolean ó numérico y devuelve un resultado del mismo tipo que el valor.
- Operadores de concatenación:
Sirven para combinar varias cadenas dentro de una sola.
- Operadores de comparación:
Sirven para comparar dos expresiones y devolver un valor Boolean que representa el resultado de la comparación.
Operadores Aritméticos:
Los Operadores aritméticos se usan para desarrollar aplicaciones que incluyen operaciones aritméticas o matemáticas. Tales como suma, resta, multiplicación, división, etc.
Operador | Descripción | Ejemplo |
+ (Suma) | Devuelve la suma de dos operandos. | 25+2 |
| Devuelve la diferencia de dos operandos. | 25-2 |
/ (División) | Devuelve el cociente de dos operandos. | 25/2 |
* (Multiplicación) | Devuelve el producto de dos operandos. | 25*2 |
Mención especial merece el tipo de variable para la división por que tiene que ser Double para que nos devuelva los resultados esperados, que pueden ser números no enteros.
Por ejemplo si nosotros declaramos la variable tipo Integer para una división y queremos dividir 25/2 el resultado será 12 y no 12.5 como debe ser, porque Visual Basic redondea el resultado a un número entero por que el tipo de variable es Integer (Entero).
Por lo tanto cuando vaya a hacer aplicaciones que incluyan divisiones, declare la variable tipo Double para obtener números con punto decimal.
Ejercicio con operadores matemáticos.
Abra Visual Basic y cree un nuevo proyecto llamado Operadores Aritméticos Ejemplo 2010 y en el formulario, agregue 5 controles Button, 3 labels, y 3 TextBox.
Control | Propiedad Text | Fuente |
Formulario | Calculadora Básica | Microsoft Sans Serif,negrita 11 |
Label 1 | Escriba valor uno | Microsoft Sans Serif,negrita 11 |
Label 2 | Escriba valor dos | Microsoft Sans Serif,negrita 11 |
Label 3 | Resultado | Microsoft Sans Serif,negrita 11 |
Button 1 | + | Negrita 12,Microsoft Sans serif,12 |
Button 2 | - | Microsoft Sans Serif,negrita 12 |
Button 3 | / | Microsoft Sans Serif,negrita 12 |
Button 4 | * | Microsoft Sans Serif,negrita 12 |
Button 5 | Borrar | Microsoft Sans Serif,negrita 12 |
TextBox 1 | Déjela en blanco | Dele el tamaño que quiera |
TextBox 2 | déjela en blanco | Dele el tamaño que quiera. |
TextBox 3 | Déjela en blanco | Dele el tamaño que desee. |
Recuerde que para cambiarle la propiedad Text al formulario debe seleccionarlo dando clic en un área fuera de cualquier control. Cuando el formulario está seleccionado presenta un borde como se ve en la siguiente imagen:
Cuando trabajamos con varios controles del mismo tipo en un formulario, puede ser tedioso cambiar las propiedades como el tamaño, estilo de fuente, ubicación, BackColor, ForeColor etc. Afortunadamente, si seleccionamos los controles del mismo tipo en el formulario, podemos cambiarles de una sola vez, las propiedades a todos los controles seleccionados.
Por ejemplo en la siguiente imagen se han seleccionado cuatro de los cinco controles Button del proyecto actual; estando así, podemos arrastrarlos en grupo, si intentamos arrastrar con el puntero del mouse uno de los controles (Es mejor arrastrar el primero o el último) para aumentar o disminuir su tamaño, se modificaran todos los controles seleccionados como cuando una locomotora de un tren arrastra los vagones.
Recuerde que para seleccionar varios controles solo seleccione el primero y luego presione la tecla Control y sin liberarla, dé clic en cada control que desee seleccionar.
Para quitar la selección o liberar los controles, solo dé un clic fuera de los controles seleccionados.
A continuación una imagen de cuatro controles seleccionados.
Ahora volvamos a nuestro proyecto actual…
Con la intención de ahorrar tiempo, no se ha cambiado la propiedad Name de los controles y se dejó las que el programa les asigna de manera predeterminada (Por default)
El formulario debería quedar como sigue…
¡Ahora a escribir código!
¡Idea! En la escritura de código puede hacer uso de copiar y pegar para evitar escribir códigos que se repiten. Por ejemplo en los códigos siguientes a veces la diferencia entre el código de un botón y otro es solo que, cambia un signo por otro; Ejemplo: Observe que el código del botón Resta o button 2 se diferencia del Button 1 o Suma en que en el button 2 está la palabra Resta en ves de Suma y que tiene un signo – en vez del signo + algo similar ocurre con los otros botones.
Entonces; para que copiar todo el código si basta con hacer uso de copiar y pegar y solo cambiar la palabra y signo correspondiente.
¡Eso si! Tiene sus ventajas escribir todo el código para cada control y es que le da más consciencia de lo que está haciendo y va entendiendo mejor la sintaxis y lógica de escribir un código, aunque le lleve más tiempo.
Doble clic en Boton + y en el editor de código que se abre escriba entre la línea Private Sub Button1_Click…..y End Sub lo siguiente:
Dim Suma As Integer
Suma = Val(TextBox1.Text) + Val(TextBox2.Text)
TextBox3.Text = Suma
Doble clic en Boton - y en el editor de código que se abre escriba entre la línea Private Sub Button2_Click…..y End Sub lo siguiente:
Dim Resta As Integer
Resta = Val(TextBox1.Text) - Val(TextBox2.Text)
TextBox3.Text = Resta
Doble clic en Boton / y en el editor de código que se abre escriba entre la línea Private Sub Button3_Click…..y End Sub, lo siguiente:
Dim Division As Double
Division = Val(TextBox1.Text) / Val(TextBox2.Text)
TextBox3.Text = Division
Doble clic en Botón * y en el editor de código que se abre escriba entre la línea Private Sub Button4_Click…..y End Sub, lo siguiente:
Dim Multiplicación As Integer
Multiplicación = Val(TextBox1.Text) * Val(TextBox2.Text)
TextBox3.Text = Multiplicación
Doble clic en Botón Borrar y en el editor de código que se abre escriba entre la línea Private Sub Button5_Click…..y End Sub, lo siguiente:
TextBox1.Clear()
TextBox2.Clear()
TextBox3.Clear()
Vamos a analizar el código de uno de los botones. Para entenderlo bien y lo que se diga vale para todos los botones; considerando que las explicaciones son casi las mismas para todas los botones con algunas excepciones.
En el Button + se escribió…
Dim Suma As Integer
Suma = Val(TextBox1.Text) + Val(TextBox2.Text)
TextBox3.Text = Suma
Analizando línea por línea el código para button1 (+)
Primera Línea:
Dim Suma As Integer
En la primera línea se declara la variable usando la palabra clave Dim para darle un nombre (Suma) y con la palabra clave AS se declara el tipo de datos que almacenará (Integer).
Segunda Línea:
Suma = Val(TextBox1.Text) + Val(TextBox2.Text)
En la segunda Línea se Asigna el valor o dato que almacenará la variable Suma y cuando el dato sea el contenido numérico de un TextBox, entonces, hay que escribir la palabra clave Val antes del TextBox1.text que debe estar encerrado entre paréntesis.
Como queremosque estavariablealmacene datos de dos Textbox entonces tenemos que escribir el signo + y agregar el otro TextBox2 entre paréntesis y con la palabra clave “Val” antes, como en la primera parte de la línea de código.
****************************************************
Si lo que quisiéramos es restar, dividir o multiplicar, basta con sustituir el signo + por el signo correspondiente -, / ó *
Lo anterior puede verlo en el código de los otros botones.
Tercera Línea:
TextBox3.Text = Suma
En la tercera línea se cumple con el requisito de Utilizar la variable diciéndole a Visual Basic que el TextBox3.Text debe ser igual a Suma y ya sabemos que Suma es el resultado del valor que tenga TextBox1 más TextBox2.Text
Como yase explicó en la línea anterior cuando se escribe .Text después de TexBox3 es para hacer el llamado a mostrar un texto visible. Dicho sea de paso, si no se inserta esta parte del código, el programale genera error.
El button 5 (Borrar) lo programamos para limpiar los 3 TextBox y poder insertar otro valor.
Basta con hacer mención del controlal que queremos que afecte el borrado que puede ser un label un Textbox u otro control y luego .clear()
Ejemplo: Si lo que queremos borrar es un Label1 entonces la instrucción sería Label1.clear() si queremos borrar un TextBox1 entonces el código será TextBox1.clear()
Si entendió bien lo anterior y escribió las líneas o sentencias de código correctamente entonces el editor de código quedará así:
Al presionar F5 para ejecutar el programa, verá una ventana parecida a la de la imagen siguiente:
Escriba un numero en TextBox 1 y otro número entero en el TextBox 2 y luego pulse los botones de +,-, / y * y verá como en el TextBox 3 aparece el resultado según el botón al que le ha dado clic.
Para facilitar la tarea de borrar, se programó un botón con el código clear() para borrar cada uno de los textbox.
Suma, Resta, División y Multiplicación
En la division; si la variable se hubiese declarado tipo Integer y no Double como está, el resultado hubiese sido 12 y no 12.5 como es lo correcto y exacto.Por lo que repito, cuando haga programas que incluyen divisiones entonces declare la variable tipo Double.
Analice el código anterior y fíjese donde están escritas las sentencias (líneas de códigos) para que vaya familiarizándose y tomando confianza con el editor de código. (¡Si es que aun no la tiene, pero si ya es un experto programador entonces disculpe mi imprudencia!) si es experto en Visual Basic 2008 y versiones anteriores y no en Visual Basic 2010 tome en consideración que hay sustanciales cambios entre la versión 2008 y 2010 por lo que no está perdiendo el tiempo al leer este libro.
Operadores Lógicos:
Este tipo de operadores comparan valores Boolean y devuelven un resultado Boolean.
Tipos de operadores lógicos:
- Or
- And
- Xor
- AndAlso
- OrElse y
- Not
Los primeros cinco son binarios por que toman dos valores para dar un resultado Boolean (verdadero o falso) y el último es Unitario por que solo toma un valor.
Operador And
Mención especial merece el operador lógico And por que nos permite unir una expresión con otra; Por ejemplo si queremos que al cumplirse dos condiciones se produzcan un mensaje usamos el operador And.
Ejercicio: Operador lógico And
- Cree un nuevo proyecto con el nombre Operador lógico And
- Agregue al formulario dos TextBoxs y un botón
- Dé doble clic en el botón para escribir el siguiente código:
Recuerde que solo debe escribir desde la línea que empieza con Dim Nueva As……… hasta la que dice End If por que el asistente del programa ya escribió lo demás
En este Proyecto se declaran las variables Nueva y York y el valor que almacenarán son los que el usuario escriba en los TextBoxes.
También se hace uso de la estructura de decisión If…Then para que si se cumple la condición, que consiste en que el usuario escriba la palabra Nueva en el textbox 1 y la palabra York en el TextBox2 se muestre un mensaje y si no es así, entonces mediante el uso de Else se ordena que se muestre un mensaje con instrucciones al usuario, para que pueda ver el mensaje correcto.
Fíjese, en que momento se usa en el código, el operador lógico And. Este se usa para exigir que se cumplan dos condiciones, no solo una.
Si las condiciones fuesen más de dos, habría que usar el operador And varias veces.
Por ejemplo, si las condiciones son: A, B, C y D entonces se escribiría
A And B and C and D y Así sucesivamente.
Ahora guarde el proyecto Operador Lógico And, si aun no lo ha hecho y luego ciérrelo o continúe practicando pero ya usando sus conocimientos y su imaginación.
Si está confundido, por lo de If, Then y Else, no se preocupe, por que en un capítulo posterior, se explica con más detalle en que consiste y la forma de usarlo.
Operador Or
Este operador nos permite que se produzca una respuesta si se cumple una u otra condición, A diferencia de And que exige que se cumplan dos o más condiciones.
Ejemplo si tiene la condición A y la condición B se puede utilizar el operador Or para que al cumplirse la condición A o la condición B se envíe un mensaje.
En el ejercicio anterior si usted no escribe Nueva en la primera casilla y York en la segunda casilla el mensaje acerca de Nueva York no se muestra (pruebe a poner la palabra en una sola casilla y verá.) Usando el operador Or con que escriba York en la segunda casilla será suficiente para que se muestre el mensaje.
Ejercicio:
- Crear un nuevo proyecto con el nombre Operador Or
- Agregar al formulario 2 TextBox y un Botón
- Abra el editor de código y en el procedimiento del Button1 escriba el siguiente código:
Dim Nueva As String = TextBox1.Text
Dim York As String = TextBox1.Text
If TextBox1.Text = "Nueva" Or TextBox2.Text = "York" Then
MsgBox("Nueva York fue devastada por el huracán Sandy en Octubre del 2012, pero poco a poco se recupera de esa tragedia.")
Else
MsgBox(" Escriba La palabra Nueva en la primera casilla y York en la segunda, para ver el mensaje")
End If
El Editor de código quedara así:
Observe que es el mismo ejemplo que el ejercicio para And y solo se cambio la palabra “And “por “Or” y en el mensaje se cambió” y “por “o”