/Truth-Table-Generator

Recursive logical expression parser, evaluator and truth table generator.

Primary LanguageC

# Truth-Table-Generator
Recursive logical expression parser, evaluator and truth table generator.

Dado um arquivo chamado "Expressoes.in" com um número de expressões e as respectivas espressões lógicas, este programa cria uma tabela verdade, para cada expressão, com todas as suas sub-expressões num arquivo chamado "Expressoes.out"

Para escrever as expressões deve-se usar as variáveis 'x'. 'y', 'z' e 't', e os operadores lógicos: '+' (ou), '.' (e), '>' (implicação) e '-' (negação).

Exemplo de entrada:
2
(x+y)
((x+y).(z.t))

Exemplo de saída:
Tabela #1 
-----------
|x|y|(x+y)|
-----------
|0|0|    0|
-----------
|0|1|    1|
-----------
|1|0|    1|
-----------
|1|1|    1|
-----------
satisfatível e refutável

Tabela #2
-----------------------------------
|x|y|z|t|(x+y)|(z.t)|((x+y).(z.t))|
-----------------------------------
|0|0|0|0|    0|    0|            0|
-----------------------------------
|0|0|0|1|    0|    0|            0|
-----------------------------------
|0|0|1|0|    0|    0|            0|
-----------------------------------
|0|0|1|1|    0|    1|            0|
-----------------------------------
|0|1|0|0|    1|    0|            0|
-----------------------------------
|0|1|0|1|    1|    0|            0|
-----------------------------------
|0|1|1|0|    1|    0|            0|
-----------------------------------
|0|1|1|1|    1|    1|            1|
-----------------------------------
|1|0|0|0|    1|    0|            0|
-----------------------------------
|1|0|0|1|    1|    0|            0|
-----------------------------------
|1|0|1|0|    1|    0|            0|
-----------------------------------
|1|0|1|1|    1|    1|            1|
-----------------------------------
|1|1|0|0|    1|    0|            0|
-----------------------------------
|1|1|0|1|    1|    0|            0|
-----------------------------------
|1|1|1|0|    1|    0|            0|
-----------------------------------
|1|1|1|1|    1|    1|            1|
-----------------------------------
satisfatável e refutável