viernes, 2 de mayo de 2014

Calculadora común con botones

Hola espero todos estén bien y que sigan a la espera de mi cuarta entrega en este caso sigue siendo una calculadora como todos la hacen, nada mas que un poquito mas normal; a que me refiero? pues a que la interfaz es un poco mas conocida, tiene sus numeritos del 0 al 9 también tiene sus botones de +, -, *, /, y su botón de borrar.

Bueno eso seria la interfaz de la calculadora, pues en cuanto a la programación de la misma la explico en seguida, el código es un tanto mas largo y bueno los programadores conocedores se darán cuenta que estoy gastando muchas muchísimas lineas de código que podría haber ahorrado, pero pues bueno eso lo haré para mi próxima entrega, desde ya les digo que ya divise esos errores ademas de que no puse la división por cero, para que se den cuenta lo importante que es verificar la máxima cantidad de excepciones que puede dar un programa, de esa forma nadie podrá hacer que nuestro programa colapse; y bueno a lo que voy aquí esta el código:

Public Class calcomun
    Private cantidad As String
    Private resultados As String
    Private op As Integer

    Private Sub btn1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn1.Click
        cantidad = cantidad + "1"
        lblpantalla.Text = cantidad
    End Sub

    Private Sub btn2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn2.Click
        cantidad = cantidad + "2"
        lblpantalla.Text = cantidad
    End Sub

    Private Sub btn3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn3.Click
        cantidad = cantidad + "3"
        lblpantalla.Text = cantidad
    End Sub

    Private Sub btn4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn4.Click
        cantidad = cantidad + "4"
        lblpantalla.Text = cantidad
    End Sub

    Private Sub btn5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn5.Click
        cantidad = cantidad + "5"
        lblpantalla.Text = cantidad
    End Sub

    Private Sub btn6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn6.Click
        cantidad = cantidad + "6"
        lblpantalla.Text = cantidad
    End Sub

    Private Sub btn7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn7.Click
        cantidad = cantidad + "7"
        lblpantalla.Text = cantidad
    End Sub

    Private Sub btn8_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn8.Click
        cantidad = cantidad + "8"
        lblpantalla.Text = cantidad
    End Sub

    Private Sub btn9_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn9.Click
        cantidad = cantidad + "9"
        lblpantalla.Text = cantidad
    End Sub

    Private Sub btn0_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn0.Click
        cantidad = cantidad + "0"
        lblpantalla.Text = cantidad
    End Sub

    Private Sub btnborrar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnborrar.Click
        resultados = ""
        cantidad = ""
        lblpantalla.Text = "0"
        op = 0
    End Sub

    Private Sub btnsumar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnsumar.Click
        If op = 1 Then
            resultados = (Convert.ToInt32(resultados)) + (Convert.ToInt32(cantidad))
            resultados = resultados + cantidad
            lblpantalla.Text = resultados
        End If
        If op = 2 Then
            resultados = (Convert.ToInt32(resultados)) - (Convert.ToInt32(cantidad))
            lblpantalla.Text = resultados
        End If
        If op = 3 Then
            resultados = (Convert.ToInt32(resultados)) * (Convert.ToInt32(cantidad))
            lblpantalla.Text = resultados
        End If
        If op = 4 Then
            resultados = (Convert.ToInt32(resultados)) / (Convert.ToInt32(cantidad))
            lblpantalla.Text = resultados
        End If
        If op = 0 Then
            resultados = cantidad
        End If
        cantidad = ""
        op = 1
    End Sub
    Private Sub btnrestar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnrestar.Click
        If op = 1 Then
            resultados = (Convert.ToInt32(resultados)) + (Convert.ToInt32(cantidad))
            lblpantalla.Text = resultados
        End If
        If op = 2 Then
            resultados = (Convert.ToInt32(resultados)) - (Convert.ToInt32(cantidad))
            lblpantalla.Text = resultados
        End If
        If op = 3 Then
            resultados = (Convert.ToInt32(resultados)) * (Convert.ToInt32(cantidad))
            lblpantalla.Text = resultados
        End If
        If op = 4 Then
            resultados = (Convert.ToInt32(resultados)) / (Convert.ToInt32(cantidad))
            lblpantalla.Text = resultados
        End If
        If op = 0 Then
            resultados = cantidad
        End If
        cantidad = ""
        op = 2
    End Sub

    Private Sub btnmultiplicar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnmultiplicar.Click
        If op = 1 Then
            resultados = (Convert.ToInt32(resultados)) + (Convert.ToInt32(cantidad))
            lblpantalla.Text = resultados
        End If
        If op = 2 Then
            resultados = (Convert.ToInt32(resultados)) - (Convert.ToInt32(cantidad))
            lblpantalla.Text = resultados
        End If
        If op = 3 Then
            resultados = (Convert.ToInt32(resultados)) * (Convert.ToInt32(cantidad))
            lblpantalla.Text = resultados
        End If
        If op = 4 Then
            resultados = (Convert.ToInt32(resultados)) / (Convert.ToInt32(cantidad))
            lblpantalla.Text = resultados
        End If
        If op = 0 Then
            resultados = cantidad
        End If
        cantidad = ""
        op = 3
    End Sub

    Private Sub btndividr_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btndividr.Click
        If op = 1 Then
            resultados = (Convert.ToInt32(resultados)) + (Convert.ToInt32(cantidad))
            lblpantalla.Text = resultados
        End If
        If op = 2 Then
            resultados = (Convert.ToInt32(resultados)) - (Convert.ToInt32(cantidad))
            lblpantalla.Text = resultados
        End If
        If op = 3 Then
            resultados = (Convert.ToInt32(resultados)) * (Convert.ToInt32(cantidad))
            lblpantalla.Text = resultados
        End If
        If op = 4 Then
            resultados = (Convert.ToInt32(resultados)) / (Convert.ToInt32(cantidad))
            lblpantalla.Text = resultados
        End If
        If op = 0 Then
            resultados = cantidad
        End If
        cantidad = ""
        op = 4
    End Sub

    Private Sub btnigual_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnigual.Click
        If op = 1 Then
            resultados = (Convert.ToInt32(resultados)) + (Convert.ToInt32(cantidad))
            lblpantalla.Text = resultados
        End If
        If op = 2 Then
            resultados = (Convert.ToInt32(resultados)) - (Convert.ToInt32(cantidad))
            lblpantalla.Text = resultados
        End If
        If op = 3 Then
            resultados = (Convert.ToInt32(resultados)) * (Convert.ToInt32(cantidad))
            lblpantalla.Text = resultados
        End If
        If op = 4 Then
            resultados = (Convert.ToInt32(resultados)) / (Convert.ToInt32(cantidad))
            lblpantalla.Text = resultados
        End If
    End Sub

    Private Sub calcomun_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        op = 0
        lblpantalla.Text = "0"
    End Sub
End Class


Bien ese seria el código, un poco enredado de entenderlo quizá si, pero por lo mismo acá dejare el ejemplo desde visual basic donde esta la aplicación ya creada y podrán ver como funciona, por lo general no comentareo el código pero veo que se esta haciendo demasiado grande y un poco mas complicado así que al siguiente, haré comentarios de la mayoría de lineas de codigo, y sin mas que decis aqui les dejo el ejemplo:



Bueno sin mas que decir me despido para comenzar a trabajar en la proxima entrega y cualquier duda, comentario o algo en especial que quisieran que desarrollara pues lo pueden dejar acá abajo lo tomare muy en cuenta tratando de complacer sus dudas, saludos...

sábado, 22 de junio de 2013

Evitar División por Cero


Hola espero que tengan un buen día, y bueno pidiendo disculpas por el retraso de mi tercer entrega que la verdad quizá llega un poco tarde porque ya hay como 20 nuevas versiones de Visual Basic pero bueno igual habrá uno que otro interesado en aprender un poco del viejo VB 2005.

Y bien pasando a lo importante esta ves traigo algo que quizá falto un poco a la anterior calculadora que es algo importantisimo y es la "División por cero" cosa que ya de por si nos da una "excepción" y para los que no saben que es esto pues les diré que es un error que nos salta cuando utilizamos el programa que estamos haciendo y peor cuando alguna otra persona lo esta utilizando, podríamos decir que es algo grave ya que si no la controlamos pues llega a cerrar el programa y como programadores hace que quedemos mal parados ante cualquier persona.

Esta ves no haré el manejo de excepciones propiamente hablando que se hace con el Try y Catch sino que esta ves a manera de ejemplo lo manejare simplemente con un If y un Else estructura muy conocida y muy pero muy utilizada en la programación para toma de decisiones en los programas, y ya para no aburrirlos voy a lo importante la explicación del código:

Primero veamos la estructura del IF

IF <> then         // En este espacio ponemos la condicion que queremos validar
        //en este espacio iría el código que queremos ejecutar si se cumple la condición
else                                      // Esta palabra significa "sino" osea caso contrario
        //en este espacio iría el código que queremos ejecutar si no se cumple la condición
End if                                   // Esto significa que la condición finalizo



Y bien este seria el código que he utilizado para el ejemplo:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        If Val(TextBox2.Text) = 0 Then
            TextBox3.Text = "Error, Division por cero"
        Else
            TextBox3.Text = TextBox1.Text / TextBox2.Text

        End If

    End Sub


Y pueden notar que con esto ya control que no vaya a dar un error que haria que se derrumbe nuestro pequeño programa.

Y bueno aquí dejo el ejemplo para los que les gusta descargarlo y ver directamente como funciona:
Ejemplo:

Esto era todo espero les sirva y hagan lo posible por practicar lo mas posible; tratare de venir con mas entregas lo mas pronto posible, quizá en esta semana traiga varias mas ya que estoy de vacaciones y espero aprovecharlas. Saludos....


PD.: Los links de los otros ejemplos fueron reparados y ya se pueden descargar sin problemas...

miércoles, 10 de marzo de 2010

Calculadora con Suma, Resta, Multiplicacion y Division

Bueno esta es mi segunda entrega de estos codigos simples y que iran aumentando de nivel conforme pase el tiempo.

Ahora les traigo un ejemplo de una calculadora en la cual tenemos las cuatro operaciones matematicas Suma, Resta, Multiplicacion y Division.

Veamos ahora el codigo

Suma:
TextBox3.Text = Val(TextBox1.Text) + Val(TextBox2.Text)

Resta:
TextBox3.Text = TextBox1.Text - TextBox2.Text

Multiplicación:
TextBox3.Text = TextBox1.Text * TextBox2.Text

División:
TextBox3.Text = TextBox1.Text / TextBox2.Text


Como ya hice mensión en mi anterior entrega la suma se hace un poco diferente a las otras operaciones pero cabe destacar que aunque la suma tiene otro aspecto las otras operaciones se pueden hacer con la misma sintaxis como ejemplo:

TextBox3.Text = val(TextBox1.Text) - val(TextBox2.Text)

Y de esta forma tambien les debe funcionar.

Y bueno aqui les dejo el ejemplo: Ejemplo.

Y ya saben si tienen preguntas haganlas no se queden con las dudas.

Hasta la proxima

sábado, 6 de marzo de 2010

Primer programa que "Suma dos dígitos"

Este es el primer programa nada mas suma dos dígitos (en son introducidos en dos textbox) y muestra el resultado (que se pone en otro textbox).

Especificaciones:
3 labels: Valor 1, Valor 2 y Resultado y en name lo dejamos por default.

3 Textbox: names default textbox1,textbox2 y textbox3, en text todo en "blanco".

y por ultimo un boton que en text ponemos el nombre sumar y el name se deja por default.

EL código que utilizariamos seria el siguiente:

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click TextBox3.Text = Val(TextBox1.Text) + Val(TextBox2.Text)
End Sub


Y como pueden ver este codigo lo metemos directamente en el botón y como se darán cuenta en realidad solo se utiliza una linea de codigo.

y para los que quiza esten mas adelantados en esto de la programación de Visual Basic 2005 se preguntaran porque en ves de esa linea de codigo:

TextBox3.Text = TextBox1.Text + TextBox2.Text

Pues es muy simple la respuesta ya que para la concatenación se utiliza (en otras palabras para unir dos palabras) osea que si la dejara asi y en "Valor 1" metiera el numero 1 y en "Valor 2" metiera 2 en el campo "resultado" me apareceria 12 en ves de la suma que deberia ser 3.

Y para no dejarlos con el ejemplo a medias les dejo el proyecto que hice:
Ejemplo

PD.: Aunque con la suma hay ese pequeño problema de tener que poner "val" para que nos devuelva el valor numerico del textbox, en una resta, multiplicacion o division ya no surge el mismo problema osea pque para una suma podremos hacer esto:
TextBox3.Text = TextBox1.Text - TextBox2.Text
Y nos daría el resultado exacto, en mi proxima entrada pondre un ejemplo donde explicare las cuatro operaciones matematicas basicas.
PD2.: Si les gusto dejen comentarios y si quieren pedidos, tambien se aceptan criticas y ayudas asi como dudas y todo lo que quieran hasta insultos pero pocos jeje.

Hasta la proxima.

viernes, 26 de febrero de 2010

Bienvenidos

Hola como están? espero que bien bueno este día le estoy dando comienzo a un proyecto muy pero muy simple pero que beneficiara a muchos programadores de visual Basic con cosas que quizá muchos han querido lograr hacer o simplemente lo hicieron y no recuerdan de donde lo sacaron.

La idea de este blog será poner ejemplos e irlos explicando esperando que sean comprensibles y ademas a lo largo de todo el desarrollo iré dando paginas donde pueden bajar ejemplos, programas y muchas cosas más que se necesitan en este amplio y ancho mundo de la programación.

Y por ultimo sean todos bienvenidos a este su blog.