Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ===============================CLASE PILA==========================================
- //razabinaria@gmail.com
- package Paquete;
- public class Pila {
- class Nodo {
- char simbolo;
- Nodo sig;
- }
- private Nodo raiz;
- Pila () {
- raiz=null;
- }
- public void insertar(char x) {
- Nodo nuevo;
- nuevo = new Nodo();
- nuevo.simbolo = x;
- if (raiz==null)
- {
- nuevo.sig = null;
- raiz = nuevo;
- }
- else
- {
- nuevo.sig = raiz;
- raiz = nuevo;
- }
- }
- public char extraer ()
- {
- if (raiz!=null)
- {
- char informacion = raiz.simbolo;
- raiz = raiz.sig;
- return informacion;
- }
- else
- {
- return Character.MAX_VALUE;
- }
- }
- public boolean vacia() {
- if (raiz==null) {
- return true;
- } else {
- return false;
- }
- }
- }
- //razabinaria@gmail.com
- ===================================================CLASE FORMULA====================================
- //razabinaria@gmail.com
- package Paquete;
- import javax.swing.*;
- import java.awt.event.*;
- public class Formula extends JFrame implements ActionListener {
- private JTextField tf1;
- private JButton boton1;
- public Formula() {
- setLayout(null);
- tf1=new JTextField("{2*(4-5)-{3*4}-[4-5]}");
- tf1.setBounds(10,10,230,30);
- add(tf1);
- boton1=new JButton("Verificar fórmula.");
- boton1.setBounds(10,70,180,30);
- add(boton1);
- boton1.addActionListener(this);
- }
- public void actionPerformed(ActionEvent e) {
- if (e.getSource()==boton1) {
- if (balanceada()) {
- setTitle("Está correctamente balanceada.");
- } else {
- setTitle("No está correctamente balanceada.");
- }
- }
- }
- //razabinaria@gmail.com
- public boolean balanceada() {
- Pila pila1;
- pila1 = new Pila ();
- String cadena=tf1.getText();
- for (int f = 0 ; f < cadena.length() ; f++)
- {
- if (cadena.charAt(f) == '(' || cadena.charAt(f) == '[' || cadena.charAt(f) == '{') {
- pila1.insertar(cadena.charAt(f));
- } else {
- if (cadena.charAt(f)==')') {
- if (pila1.extraer()!='(') {
- return false;
- }
- } else {
- if (cadena.charAt(f)==']') {
- if (pila1.extraer()!='[') {
- return false;
- }
- } else {
- if (cadena.charAt(f)=='}') {
- if (pila1.extraer()!='{') {
- return false;
- }
- }
- }
- }
- }
- }
- if (pila1.vacia()) {
- return true;
- } else {
- return false;
- }
- }
- public static void main(String[] ar) {
- Formula formula1=new Formula();
- formula1.setBounds(0,0,350,140);
- formula1.setVisible(true);
- }
- }
- //razabinaria@gmail.com
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement