PRIMER COMPROMISO
Esta puede ser una GUI para nuestra Calculadora. Recuerda que en el Text del formulario además de la palabra Calculadora debe aparecer tu Nombre Completo.
SEGUNDO COMPROMISO
Se debe enviar al correo del docente. El pseudocódigo es con "nuestras palabras" indicar las órdenes que le daremos al computador mediante el lenguaje de programación para que se efectúen las acciones correspondientes. Ejemplo, al pulsar el botón Uno, aparecerá un número 1 al lado derecho de lo que ya esté escrito en la pantalla.
TERCER COMPROMISO
La siguiente es una propuesta de código fuente para poner en funcionamiento la aplicación de la calculadora. Recordemos que las líneas que inician con Public o Private no se deben escribir, son suministradas por el lenguaje de programación cuando le damos doble clic a un objeto para programarlo. Similarmente sucede con las lineas: End Sub y End Class. Todo lo demás si debe ser digitado.
No olvidemos que los nombres aquí propuestos deben respetarse, es decir aplicarlos a los objetos en su proyecto, de lo contrario saldrán errores.
Las líneas indican las divisiones entre objetos.
En este ejemplo se declararon dos variables, una para guardar el primer número digitado por el usuario del programa y otra para guardar el signo de la operación que se quiere realizar. Otra opción puede ser crear dos Label, en las cuales guardamos los ya citados contenidos. Estos objetos serán invisibles para el usuario.
La función Val( ) lo que hace es convertir en valor numérico el contenido de la caja de texto que se utiliza como pantalla de la calculadora.
El signo + en el código de los botones Uno, Dos, ..., Nueve y Cero lo que hace es agregar al lado derecho del contenido de la pantalla el respectivo número, que va entre comillas Ejemplo:
txtPantalla.Text = txtPantalla.Text + "1"
Los signos (+ - * /) en el código del botón Igual, si operan los números, es decir permiten llegar a los resultados de las operaciones propuestas por el usuario de la calculadora.
Propuesta de Código Fuente
Public Class frmCalculadora
Dim PrimerNumero As Integer
Dim Signo As Char
____________________________________________________________________________
Private Sub btnUno_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnUno.Click
txtPantalla.Text = txtPantalla.Text + "1"
End Sub
____________________________________________________________________________
Private Sub btnDos_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDos.Click
txtPantalla.Text = txtPantalla.Text + "2"
End Sub
____________________________________________________________________________
Private Sub btnTres_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnTres.Click
txtPantalla.Text = txtPantalla.Text + "3"
End Sub
____________________________________________________________________________
Private Sub btnCuatro_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCuatro.Click
txtPantalla.Text = txtPantalla.Text + "4"
End Sub
____________________________________________________________________________
Private Sub btnCinco_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCinco.Click
txtPantalla.Text = txtPantalla.Text + "5"
End Sub
____________________________________________________________________________
Private Sub btnSeis_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSeis.Click
txtPantalla.Text = txtPantalla.Text + "6"
End Sub
____________________________________________________________________________
Private Sub btnSiete_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSiete.Click
txtPantalla.Text = txtPantalla.Text + "7"
End Sub
____________________________________________________________________________
Private Sub btnOcho_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnOcho.Click
txtPantalla.Text = txtPantalla.Text + "8"
End Sub
____________________________________________________________________________
Private Sub btnNueve_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnNueve.Click
txtPantalla.Text = txtPantalla.Text + "9"
End Sub
____________________________________________________________________________
Private Sub btnCero_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCero.Click
txtPantalla.Text = txtPantalla.Text + "0"
End Sub
____________________________________________________________________________
Private Sub btnMas_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnMas.Click
PrimerNumero = Val(txtPantalla.Text)
txtPantalla.Text = ""
Signo = "+"
End Sub
____________________________________________________________________________
Private Sub btnMenos_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnMenos.Click
PrimerNumero = Val(txtPantalla.Text)
txtPantalla.Text = ""
Signo = "-"
End Sub
____________________________________________________________________________
Private Sub btnPor_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnPor.Click
PrimerNumero = Val(txtPantalla.Text)
txtPantalla.Text = ""
Signo = "*"
End Sub
____________________________________________________________________________
Private Sub btnDivisor_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDivisor.Click
PrimerNumero = Val(txtPantalla.Text)
txtPantalla.Text = ""
Signo = "/"
End Sub
____________________________________________________________________________
Private Sub btnBorrar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnBorrar.Click
txtPantalla.Text = ""
End Sub
____________________________________________________________________________
Private Sub btnIgual_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnIgual.Click
If Signo = "+" Then
txtPantalla.Text = PrimerNumero + Val(txtPantalla.Text)
Else
If Signo = "-" Then
txtPantalla.Text = PrimerNumero - Val(txtPantalla.Text)
Else
If Signo = "*" Then
txtPantalla.Text = PrimerNumero * Val(txtPantalla.Text)
Else
If Signo = "/" Then
If Val(txtPantalla.Text) = 0 Then
MsgBox("El segundo número no debe ser cero o vacío", MsgBoxStyle.Critical, "C A L C U L A T O R A")
txtPantalla.Text = ""
Else
txtPantalla.Text = PrimerNumero / Val(txtPantalla.Text)
End If
End If
End If
End If
End If
End Sub
End Class
