gpt4 book ai didi

javascript - 如何重写否定行?

转载 作者:行者123 更新时间:2023-12-02 17:37:48 27 4
gpt4 key购买 nike

否定需要我几个小时的反复试验,直到没有任何问题,除了直觉之外还有什么否定方法?例如:

//x and y are whole numbers

!((x<9) && (y<=(8-x)))
((x>8) || (y>(8-x)))

最佳答案

最简单的事情就是忽略有关值域的问题,并将其视为完全逻辑问题。那么我们可以将其分解为以下几种情况:

!(A || B) ~= !A && !B
!(A && B) ~= !A || !B
!(!A) ~= A
!(x > y) ~= x <= y
!(x >= y) ~= x < y

前两个可以轻松扩展:

!(A || B || C || D || ...) ~= !A && !B && !C && !D && ...
!(A && B && C && D && ...) ~= !A || !B || !C || !D || ...

因此,对于您的示例之一,我们有:

!((x < 9) && (y <= (8-x)))
!(x < 9) || !(y<=(8 - x)
(x >=9) || (y > (8 - x))

我们可以将其保留为这样,但由于您有其他域信息(“x 和 y 是整数”),您可以将其合并以返回稍微不太具体但在上下文中足够准确的答案,例如

(x > 8) || (y > (8 - x))

您必须根据具体情况决定是否值得采取额外的步骤。它可能会获得稍微减少的代码库,但也可能会失去与原始格式的不太透明的链接。

关于javascript - 如何重写否定行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22469071/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com