Hola Hola, edición especial de esta publicación jeje Domingo de programada, el día esta feo, estamos en casa, entonces dije: -¿Por qué no programar?. La idea fue una Mini Calculadora en Java pero, ya chole cansa tanto Java, así mejor opté por usar C# con Visual Studio.
Muy internamente se ha creado un String en el cual se van capturando todos los valores que se están escribiendo al momento
private String operaciones;
En el constructor de la clase se inicializa el valor de operaciones:
operaciones="";
La función de esta aplicación es muy fácil de entender lo único que hago es con los botones de números ir agregando el valor de la caja de texto su valor actual mas el del número que se presiona. Esto aplica cuando se presiona el 1.
txtoperaciones.Text = txtoperaciones.Text + "1";
operaciones = operaciones + "1";
Cuando se da clic en una operación se limpia la caja y coloco un símbolo "#" al String para separar una cantidad con otra.
operaciones = operaciones + "#+#";
limpiarOperaciones(); //Limpia la caja de texto
Al final de varias operaciones podrias obtener algo raro en el String como esto:
5#+#8#-#5
Cuando das clic en el simbolo de igual para saber el resultado se realiza lo siguiente:
Se crear una variable char con el símbolo # como valor para después en un arreglo [elementos] se guarda cada uno de los elementos separados por #, esto con el método Split, el ejemplo anterior generaría el siguiente arreglo:
elementos[0]=5
elementos[1]=+
elementos[2]=8
elementos[3]=-
elementos[4]=5
Ahora dentro de un ciclo que va aumentando de 1 en 1 comenzando desde 1 hasta que sea menor al tamaño del arreglo, dentro del for se analiza las operaciones que hay [Si te das cuenta las operaciones siempre comenzaran de 1 y encontraras una diferente cada 2 elementos, es decir, en el indice 1,3,5,7,...] y con switch tomaremos la decisión de que si es un + se realice una suma de la variable operacion_ant y el siguiente valor, mas fácil con dicho ciclo que explico el proceso que generaría sería el siguiente:
operacion_ant=5
operacion_ant=operacion_ant+8
operacion_ant=13
operacion_ant=operacion_ant-5
operacion_ant=8
Nota: float.parse( elemento ) se usa para convertir un texto a flotante [Un String no se puede trabajar como número].
Al final del ciclo se tiene el resultado y este se refleja en la caja de texto y se limpia el valor del String con el que se comenzó.
Ahora una captura del diseño:
Si deseas el proyecto para más información puedes descargarlo de la siguiente liga: MiniCalculadora.rar
No hay comentarios:
Write comentarios