1

我想为这个站点中的给定公式编写一个真值表评估器。 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

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

4

1 回答 1

0

编写运算符优先级解析器来评估中缀表示法表达式并不是一件容易的事。但是,调车场算法是一个很好的起点。

于 2014-05-14T18:43:10.963 回答