#include <formula.H>
Mostrar lista completa dos membros
Membros públicos | |
| Formula (std::string const &formula) | |
| Constrói uma fórmula dada a sua representação na forma textual. Mais... | |
| double | valor () const |
| Calcula o valor de uma fórmula. Mais... | |
| void | troca (Formula &outra) |
| Troca uma fórmula por outra. Mais... | |
Uma fórmula algébrica corresponde a uma expressão recorrendo a valores literais, constantes e funções, com a seguinte gramática (regras apresentadas por ordem crescente de precedência):
Gramática das fórmulas:
expressao := expressao_condicional
expressao_condicional := expressao_ou | expressao_ou '?' expressao_condicional ':' expressao_condicional
expressao_ou := expressao_e | expressao_e '|' expressao_ou
expressao_e := expressao_igualdade | expressao_igualdade '&' expressao_e
expressao_igualdade := expressao_relacional | expressao_relacional '==' expressao_igualdade expressao_relacional '!=' expressao_igualdade
expressao_relacional := expressao_aditiva | expressao_aditiva '<' expressao_relacional expressao_aditiva '<=' expressao_relacional expressao_aditiva '>' expressao_relacional expressao_aditiva '>=' expressao_relacional
expressao_aditiva := expressao_multiplicativa | expressao_multiplicativa '+' expressao_aditiva expressao_multiplicativa '-' expressao_aditiva
expressao_multiplicativa := expressao_potencial | expressao_potencial '*' expressao_multiplicativa expressao_potencial '/' expressao_multiplicativa
expressao_potencial := expressao_unaria | expressao_unaria '^' expressao_potencial
expressao_unaria := expressao_funcional | '-' expressao_unaria '+' expressao_unaria '!' expressao_unaria
expressao_funcional := expressao_primaria | identificador '(' ')' identificador '(' lista_de_expressoes ')'
lista_de_expressoes := expressao | expressao ',' lista_de_expressoes
expressao_primaria := numero | constante | '(' expressao ')'
numero := como os double
constante := nome, com nome comecando por letra (sequência de letras, dígitos, e _).
referencia := '$' inteiro '$' inteiro,
identificador := sequência de letras, dígitos, e _ comecando por letra
inteiro := sequência de dígitos decimais +sequência de dígitos decimais -sequência de dígitos decimais
Definido na linha 99 do ficheiro formula.H.
|
|
Constrói uma fórmula dada a sua representação na forma textual.
Definido na linha 3 do ficheiro formula_impl.H. |
|
|
Troca uma fórmula por outra.
Definido na linha 14 do ficheiro formula_impl.H. |
|
|
Calcula o valor de uma fórmula.
|
1.2.6 escrito por Dimitri van Heesch,
© 1997-2001