Exemplo n.º 1
0
Arquivo: Pilha.cs Projeto: Scdk/OOP
 public void desempilhar()
 {
     if (isVazia(topo))
     {
         Console.WriteLine("A pilha está vazia.");
     }
     else
     {
         topo = topo.getNext();
         Console.WriteLine("Desempilhado com sucesso.");
     }
 }
Exemplo n.º 2
0
Arquivo: Pilha.cs Projeto: Scdk/OOP
 public void imprimir()
 {
     if (isVazia(topo))
     {
         Console.WriteLine("A pilha está vazia.");
     }
     else
     {
         NohPilha topoAux = new NohPilha();
         topoAux = topo;
         Console.WriteLine("Pilha: ");
         for (int i = 0; topoAux != null; i++)
         {
             Console.WriteLine(i + 1 + "°: " + topoAux.getInfo() + "\n");
             topoAux = topoAux.getNext();
         }
     }
 }
Exemplo n.º 3
0
Arquivo: Form1.cs Projeto: Scdk/OOP
        private void testador()
        {
            bool  flag = false;
            Pilha p1   = new Pilha();

            for (int i = 0; i < textBox1.TextLength; i++)
            {
                if (textBox1.Text[i] == '{' || textBox1.Text[i] == '[' || textBox1.Text[i] == '(')
                {
                    p1.empilhar(textBox1.Text[i]);
                }
                else if (textBox1.Text[i] == '}')
                {
                    if (p1.getTopo() != null && p1.getTopo().getInfo() == '{')
                    {
                        p1.desempilhar();
                    }
                    else
                    {
                        flag = true;
                        break;
                    }
                }
                else if (textBox1.Text[i] == ']')
                {
                    if (p1.getTopo() != null && p1.getTopo().getInfo() == '[')
                    {
                        p1.desempilhar();
                    }
                    else
                    {
                        flag = true;
                        break;
                    }
                }
                else if (textBox1.Text[i] == ')')
                {
                    if (p1.getTopo() != null && p1.getTopo().getInfo() == '(')
                    {
                        p1.desempilhar();
                    }
                    else
                    {
                        flag = true;
                        break;
                    }
                }
                else
                {
                    continue;
                }
            }
            NohPilha topoAux = new NohPilha();

            topoAux = p1.getTopo();
            for (int i = 0; topoAux != null; i++)
            {
                if (topoAux.getInfo() == '{' || topoAux.getInfo() == '[' || topoAux.getInfo() == '(')
                {
                    flag = true;
                }
                topoAux = topoAux.getNext();
            }
            if (flag)
            {
                MessageBox.Show("A expressão matemática está incorreta");
            }
            else
            {
                MessageBox.Show("A expressão matemática está correta");
            }
        }