Holas¡¡¡ espero que todo bien. En esta ocasión les comparto un proyecto que realice para la universidad. Se trata de una calculadora hecha en la estructura de listas con apoyo de pilas. El funcionamiento es simple: se introduce los datos y finalizado el ingreso de datos retorna un resultado, espero les sirva :).
La calculadora a ser implementada debe ser de expresiones
aritméticas que evalué suma, resta, multiplicación y división de la forma:
4+5-(8+65-23)+90
Al ser un dato compuesto se llegó a la conclusión de que los
datos deben ser tratados como datos tipo String. De esta forma los datos pueden
ser tratados de la misma manera. Para realizar las siguientes comparaciones.
- Es necesario componer los números como unidades, decenas, centenas
- Es necesario comparar si son llaves o signos aritméticos de evaluación
- Es necesario comparar si son operaciones secundarias (dentro de los parentesis) o primarias
- Es necesario completar números en caso de punto inicial, signo negativo inicial o luego de la apertura de un paréntesis.
- - Es necesario verificar que no exista espacios vacíos entre los números y/o operaciones.
Para realizar las operaciones lo primero que se hizo fue
concatenar los números para su tratamiento como datos tipo float.
La segunda etapa se da en la resolución de las operaciones
dentro de los paréntesis
La tercera etapa fue insertar en una pila los resultados de
las operaciones realizadas dentro de los paréntesis
Finalmente se realiza las operaciones ya sin paréntesis en
la lista.
Ingreso de datos:
34+(5+9)-99
Se convierte en cadena el dato, verificando la presencia de
datos vacíos, 0 y puntos iniciales
3
|
4
|
+
|
(5
|
+
|
9
|
)
|
-
|
9
|
9
|
Luego se concatena los datos y se los agrega a la lista
34
|
+
|
(5
|
+
|
9
|
)
|
-
|
99
|
Se almacena en una pila las operaciones dentro del
paréntesis
5
|
+
|
9
|
En una variable se almacena el resultado de la operación
dentro la pila
14
|
Se agrega este resultado a la lista
34
|
+
|
14
|
-
|
99
|
Si no existe más paréntesis se hace la operación final
34
|
+
|
14
|
-
|
99
|
Resultado: 147
Las operaciones admitidas son suma resta multiplicación y
división.
Para la Interfaz gráfica se capturo el dato jtextField
introducido por la ventana de la interfaz posteriormente este dato es convertido
en cadena. La cadena, luego de ser oprimido el botón “=” es enviada a la lista
y esta realiza la operación previamente validada mediante el método valida
existente en la clase lista.
Enlace de descarga: https://mega.nz/#!8IlG1bJT
Código de cifrado: !Wx03vLoqnJX_YkuPFZwaWSs-SeFuqndTSvTh3g2qUT4
alguien me podria facilitar el condigo lo mas antes posible
ResponderEliminaralguien me podria facilitar el condigo lo mas antes posible
ResponderEliminarAYUDAAAAA, NECESITO EL CODIGO PARA UNA PILA
ResponderEliminarHOLA, MUCHAS GRACIAS!!
ResponderEliminarbuenas tardes cual es clave cifrado para poder descargarlo
ResponderEliminar