【问题标题】:how to remove outermost logic?如何删除最外层的逻辑?
【发布时间】:2017-11-26 05:26:30
【问题描述】:

如何去掉最外层的逻辑?

input column D result
And(OR(A,B),C) 

output column E binary number
OR(A,B)

A   B   C   result(D)after extract(E)
0   0   0   0        0
0   0   1   0        0 
0   1   0   0        1
0   1   1   1        1
1   0   0   0        1
1   0   1   1        1
1   1   0   0        1
1   1   1   1        1

我在excel里试过

=IF(NOT(AND(D2,C2))=TRUE,1,0)

但不能移除最外层的逻辑

            result  after extract   
0   0   0   =IF(AND(OR(A2,B2),C2)=TRUE,1,0) =IF(OR(A2,B2)=TRUE,1,0) =IF(NOT(AND(D2,C2))=TRUE,1,0)
0   0   1   =IF(AND(OR(A3,B3),C3)=TRUE,1,0) =IF(OR(A3,B3)=TRUE,1,0) =IF(NOT(AND(D3,C3))=TRUE,1,0)
0   1   0   =IF(AND(OR(A4,B4),C4)=TRUE,1,0) =IF(OR(A4,B4)=TRUE,1,0) =IF(NOT(AND(D4,C4))=TRUE,1,0)
0   1   1   =IF(AND(OR(A5,B5),C5)=TRUE,1,0) =IF(OR(A5,B5)=TRUE,1,0) =IF(NOT(AND(D5,C5))=TRUE,1,0)
1   0   0   =IF(AND(OR(A6,B6),C6)=TRUE,1,0) =IF(OR(A6,B6)=TRUE,1,0) =IF(NOT(AND(D6,C6))=TRUE,1,0)
1   0   1   =IF(AND(OR(A7,B7),C7)=TRUE,1,0) =IF(OR(A7,B7)=TRUE,1,0) =IF(NOT(AND(D7,C7))=TRUE,1,0)
1   1   0   =IF(AND(OR(A8,B8),C8)=TRUE,1,0) =IF(OR(A8,B8)=TRUE,1,0) =IF(NOT(AND(D8,C8))=TRUE,1,0)
1   1   1   =IF(AND(OR(A9,B9),C9)=TRUE,1,0) =IF(OR(A9,B9)=TRUE,1,0) =IF(NOT(AND(D9,C9))=TRUE,1,0)

【问题讨论】:

  • 我知道因为不同的领域有不同的专家
  • mathoverflow 否决了我的问题,恐怕我问错地方了
  • 这似乎与编程有关。我认为 SO 是这个问题的正确位置。
  • 我在google中搜索了很多次,在excel中反复试验了很多次,仍然没有找到解决方案,从来没有读过提到这个的书,有没有人知道如何提取这个。跨度>

标签: excel logic


【解决方案1】:

通过“删除最外层逻辑”,我假设您要删除 IF 函数。

需要注意的一点是,在像 =IF(AND(OR(A2,B2),C2)=TRUE,1,0) 这样的公式中,您永远不需要 =TRUE 测试。 =IF(AND(OR(A2,B2),C2),1,0) 的工作原理完全相同。

有几种方法可以将布尔值(即真/假值)转换为整数,而无需显式 IF。一个是--AND(OR(A2,B2),C2)。另一个是int(AND(OR(A2,B2),C2))

【讨论】:

    猜你喜欢
    • 2017-10-10
    • 1970-01-01
    • 1970-01-01
    • 2010-10-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-12
    • 2016-08-12
    相关资源
    最近更新 更多