【问题标题】:Boolean Logic with If case带有 If 大小写的布尔逻辑
【发布时间】:2012-12-04 17:11:03
【问题描述】:

问题中给出了 2 个案例,在此基础上我们必须回答。

案例:

  1. if((NOT(value>=1) OR NOT(value
  2. if((NOT(value>=1) AND NOT(value

现在的问题是:

  1. 如果给定值为 1 或 10,您将使用哪种情况?
  2. 如果给定值必须是 1 或 10,您将使用哪种情况?

问题是我选择 1 还是 10 在这两种情况下我都会得到相同的答案。那就是 if(0),因此 if 语句在这两种情况下都是错误的。?

【问题讨论】:

  • switch语句在哪里?
  • 没有switch语句。这只是 2 种不同的布尔值
  • 为什么不先尝试清理代码?尝试通过将 NOT 与 (xxx) 混合来删除它们
  • @gian1200..对不起,我没明白。我尝试过解决,但使用 OR 和 AND 得到相同的答案
  • 就像数学。 (-1)*(3+6) =>(-3-6)。布尔值有类似的行为

标签: boolean-logic


【解决方案1】:
  1. (NOT(value>=1) OR NOT(value<=10)) = (value < 1) OR (value > 10)

这种情况适用于 [-Infinity ... 0] 或 [11 ... + Infinity] 1 或 10 为假

  1. ((NOT(value>=1) AND NOT(value<=10)) = (value < 1) AND (value > 10)

这种情况总是错误的,因为没有一个数可以同时小于 1 和大于 10。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-02-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-19
    • 2020-07-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多