找出真值的所有可能组合,以及在C中给定公式中出现的格式良好的公式

时间:2014-05-14 17:51:16

标签: c formula truthtable well-formed

我想为此站点中的给定公式编写真值表评估程序。 http://jamie-wong.com/experiments/truthtabler/SLR1/ 运营商是:

-  (negation)   
&  (and)        
|  (or)       
>  (implication)     
=  (equivalence)

到目前为止我做了这个

-(-(a& b) > ( -((a|-s)| c )| d)) 

根据这个公式,我的输出是

    abdsR
    TTTT
    TTTF
    TTFT
    TTFF
    TFTT
    TFTF
    TFFT
    TFFF
    FTTT
    FTTF
    FTFT 
    FTFF
    FFTT
    FFTF
    FFFT
    FFFF

我在评估部分遇到困难。 我创建了一个数组,如果它有帮助,我会存储括号的indises,即 7-3,17-12,20-11,23-9,24-1 我还检查了http://www.stenmorten.com/English/llc/source/turth_tables_ass4.c中的代码 但是我没有得到它。

1 个答案:

答案 0 :(得分:0)

编写 operator precedence parser 来评估 infix notation 表达式并非易事。但是, shunting yard algorithm 是一个很好的起点。