【问题标题】:How to evaluate this C# expression如何评估这个 C# 表达式
【发布时间】:2014-12-09 12:20:57
【问题描述】:

需要c#简单答案(考试)

我明天有一个 c# 考试,我正在复习过去的试卷。一个问题如下

如果 x = 3、y = 4 和 z = 2,下面的说法是对还是错?

x <= y && !(z > -5 | y > 7)

没有为这些提供答案。你也可以详细(一步一步地)了解答案是如何得到的。 谢谢!

我尝试运行它,但它给了我一个错误?

这是我的代码,因为我试图运行它来解决它

int x, y,z;
            x = 3;
            y = 4;
            z = 2;

             !(z > -5 | y > 7);

             if (x <= y)
                 Console.WriteLine("True");
             else
                 Console.WriteLine("False");
             Console.ReadLine();

但我收到以下错误: 错误1 只有赋值、调用、递增、递减和new对象表达式可以作为语句使用

【问题讨论】:

  • 你为什么不运行它?
  • 然后发布您的代码和错误,以便我们为您提供帮助。
  • 那么我建议发布代码和错误,但在这种情况下,错误很容易捕获:|而不是 ||
  • @Herm For boolean |和 ||在逻辑上做同样的事情,主要区别在于 || x || y 的快捷方式,如果 x 为真,则不检查 y。这同样适用于 & 和 &&。
  • 我不清楚为什么人们说不清楚用户在问什么。虽然不是完美的问题,但用户的问题已经很清楚了……再找个理由来标记问题!

标签: c# equation


【解决方案1】:

用你的数字替换你的代数(替换它们):

3 <= 4 && !(2 >-5 | 4 >7)

现在 && 的两边都需要为真才能使整个事情为真。

所以;

(3 <= 4)      is true;

 !            means 'not'/opposite of

(2 >- 5)      is true;

(4 > 7)       is false

所以,最后;

意思

3 <= 4 &&      !          (2 >-5 | 4 >7)
true   AND Opposite of    (true  OR false)

因为true Or false 将默认为'true':

总的来说,这相当于:

true AND (false)

所以 false 是你的答案

【讨论】:

  • 感谢详细解答,我现在完全明白了!我会再次投票,但我没有足够的代表!
  • 没问题,如果您有任何其他疑问,请随时问他们!正如我的个人资料所说,我们都是从底层开始的
  • 干杯小伙子会做的。是的,我现在不能说我非常擅长这些东西
  • @DaveIrwin:这需要时间,但只要有时间就会到来(我现在才编码两年多,哈哈)所以我知道不久前我也问过同样的问题问题!
【解决方案2】:

这个 x true。

这个(z &gt; -5 | y &gt; 7)true,因为两个条件之一为真,z &gt; -5

因此这个 x -5 | y > 7) 是false

! 是否定运算符。所以(z &gt; -5 | y &gt; 7)的否定,也就是true,就是false

【讨论】:

  • 谢谢!我会投票,但我没有足够的代表!
  • (z &gt; -5 | y &gt; 7)true 因为 z &gt; -5true
  • 没问题 - 这是一个容易犯的错误。不幸的是,投反对票的时机不是我——我实际上已经投了赞成票,现在你已经解决了。
  • @petelids 非常感谢。完全没有问题。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-11-20
  • 1970-01-01
相关资源
最近更新 更多