0

我有这个代码:

IF (x>5 AND y=4) THEN
    dbms_output.put_line("Y");
ELSE
    dbms_output.put_line("N");

我的问题是:如果不能使用 AND 作为运算符,您如何更改代码,而必须使用 OR 才能具有相同的逻辑并获得相同的结果?

4

3 回答 3

1

你可以使用德摩根定律来重写它:

NOT (p AND q) == (NOT p) OR (NOT q)

所以,在你的情况下

IF (x>5 AND y=4) THEN "Y" ELSE "N"
IF (x<=5 OR y<>4) THEN "N" ELSE "Y"
于 2019-09-27T12:12:47.097 回答
0

Or 和 AND 运算符的逻辑完全不同,不能使用 AND 作为运算符,而是必须使用 OR 才能具有相同的逻辑并获得相同的结果。

于 2019-09-27T12:09:29.420 回答
0

如果您将行更改为这样读取,它将仅与 OR 运算符一起使用:

IF (x<=5 OR y!=4) THEN dbms_output.put_line("N"); ELSE dbms_output.put_line("Y");=

结果相同,但逻辑略有不同。

于 2019-09-27T12:17:09.490 回答