Está en la página 1de 15

Comparto mi Calculadora

hecha en C# que hice para la


Facuu!
Buenas gente!
La idea es compartir los dos programas (por ahora) que
hice en C# para la facultad (ING. en Sistemas), e ir
explicando un poco lo que se va haciendo en el cdigo.
Tengo tambin un juego de carreras de autos, nada del
otro mundo, simple, en 2D, como se suele pedir en los
inicios de la carrera, que quizs mas adelante subir!

En este post, la calculadora, en si realiza operaciones
bsicas, las dems estn de "adorno".
Permite sumar, restar,dividir,sumar
sucesivamente,multiplicar, etc.
No tiene aun interaccin con el teclado, porque no se lo
peda para el proyecto, as que funciona con clics.
Ademas tiene corregido ciertos "bugs" que el profe
probaba para bajar la nota:
-Como divisin por 0.
-Multiplicacin por 0.
-Al poner 0000.01 debera quedar 0.01, lo mismo que al
poner 33.340000, cambiara a 33.34 y algunos otros.





Funciona creo que bien, por lo menos el profe la probo
y todo bien, dentro de lo que peda. La nota fue un 9
(nueve), porque nopude hacer funcionar la resta
sucesiva, por problemas de signo, y la divison
sucesiva.
Al ser el primer programa fue creado todo en un mismo
Form, sin uso de clases.
Se inicializa en 0 al abrirla.
Cada botn tiene su respectivo cdigo, que detallo un
poco a continuacin:





Es idntico para todos los nmeros.
Primero comprueba a travs de la variable booleana
"ceroste", declarada como true, si en el visor de la
calculadora hay un numero, operacin, o no. Si es
verdadero, es porque es el primer numero, por lo tanto
borra el "0", muestra el numero oprimido, cambia el
"ceroste" a falso, ya que de ahora en mas, ya existe
algo en el visor; y de lo contrario, aade a lo que existe
en el visor, el numero apretado. O algo asi era jaja.






Si la cantidad de caracteres es uno, pone un 0, de lo
contrario le va restando el ultimo caracter.






A la variable "num2", declarada anteriormente, se le
asigna el numero que se oprimi, previamente
convertido del texto, a un tipo double. Y la variable
"num1" se le asigna la suma de si misma, con el
"num2", y se muestra por el visor este resultado. Esto
es para la suma sucesiva, sin apretar el = (igual).
Al string "operation" se le designa el "+", esto sirve, para
mas adelante poder realizar un switch/case.
El boton MENOS, solamente se asigna a "operator" el
menos, y cambia el valor a true del "ceroste", ya que
como dije antes, no funcionaba la resta sucesiva.

El boton POR y DIVISION es practicamente mas de lo
mismo, y se entiende, creo jaja sino, me preguntan







Comprueba el estado de "ceroste" y si ya contiene una
"," no le agrega otra, de lo contrario le aade a loq ue
esta en el visor, la ",".





Asigna a "operation" el C, para ser usado en el
switch/case luego, "pone" un 0 en el visor, cambia el
valor de "ceroste" e inicializa los dos nmeros en 0.






Es simple, asigna a "valor" lo que este en el visor, y lo
multiplica por -1, y lo muestra en el visor.






Es donde se realiza la magia digamos ajaj.
En todas las operaciones lo que va a hacer es,
asignarle a "equal" la suma, resta, multiplicacion, o
division de los dos nmeros y dps mostrar el resultado
por el visor, en el caso que se oprima C realiza esos
pasos, son torpes, pero no me funcionaba sin ese case.
Puede tener otros errores, parte de codigo de mas, pero
en si, como mi primer proyecto en este lenguaje, me
parece que esta bastante bien.
Me mandan un PM si quieren descargarla! Y les paso el
link

Eso fue todo, por ahora. Estoy realizando otro post con
la Agenda y el Juego, estos tardaran mas porque es
mas codigo, varios Forms, por lo tanto clases y objetos,
constructoores y demas para explicar!
Cualquier cosa no duden en consultarme
Se agradece de antemano los comentarios y donativo
de puntos jaja.
Saludos!

También podría gustarte