Slide notação polonesa
Aspectos
Históricos:
Jan
Lukasiewicz
(1920)
Simplificar
a
lógica
em
sentenças
matemáticas
CARACTERÍSTICAS
Ausência
de parênteses de passos lógicos da ambiguidade
Redução
Eliminação
Prioridade
dos operadores
PRINCIPAIS NOTAÇÕES
Infixa
(Notação Convencional) (a + b) * c
Prefixa
*+abc
Posfixa
cab+*
PREFIXA (ESCRITA)
Soma: +ab
Subtração: -ab
Divisão: /ab
Multiplicação: *ab
PREFIXA (LEITURA)
Esquerda
para a direita o primeiro operador os símbolos que o seguem
Encontrar
Verifica-se
Caso forem número, faz-se a operação. Caso for outro operador, passa-se ao operador mais a direita.
EXEMPLO
*
+2-94/62
*+25/62 * 73 21
POSFIXA (ESCRITA)
Soma: ab+
Subtração: ab–
Divisão: ab/
Multiplicação: ab*
POSFIXA (LEITURA)
Análogo
à prefixa
Direita
para a esquerda
Resolve-se
o operador a ter dois números antes dele, e assim, sucessivamente
EXEMPLO
8
2 - 4 3 + *
82–7* 67* 42
PILHAS
Remoção
e inserção de elementos dinâmica Estrutura
LIFO
(Last In First Out)
ALGORITMOS
Os
algoritmos apresentam estruturas especiais Topo – ponteiro Underflow (remoção) Overflow (inserção)
REMOÇÃO
Pilha: P Ponteiro: topo
se topo ≠ 0 então valor-recuperado := P[topo] topo := topo – 1 senão underflow
INSERÇÃO
Pilha: P Ponteiro: topo Dimensão da Memória: M
se topo ≠ M então topo := topo + 1 P[topo] := novo-valor senão overflow
VANTAGENS
Redução
de número de passos lógicos
Redução
do tempo de processamento de aplicações
Eficiência
Eliminação
de ambiguidade
TESTES
Calculadora
Polonesa
Expressão infixa (parentizada) inserida, devolve na respectiva notação polonesa reversa e resolve a expressão.
Calculadora.c
REFERÊNCIAS BIBLIOGRÁFICAS