标签: boolean-logic

C#逻辑问题

我有那些布尔值:

bool test = false && true || true; // true
bool test1 = false && (true || true); // false
Run Code Online (Sandbox Code Playgroud)

现在,任何人都能解释为什么会这样吗?那些不一样吗?

谢谢 :)

c# boolean-logic

0
推荐指数
1
解决办法
748
查看次数

布尔逻辑问题:我可以将这4个if语句强制转换为单个布尔语句吗?

我有一个布尔逻辑问题.我有以下if语句应该能够合并为一个布尔表达式.请帮忙.我花了太多时间在这上面,我实在太羞于问我的同事.

if (denyAll == true & allowOne == false) return false;
if (denyAll == true & allowOne == true) return true;
if (denyAll == false & allowOne == false) return false;
if (denyAll == false & allowOne == true) return true;
return true; //should never get here
Run Code Online (Sandbox Code Playgroud)

我确信有一个优雅的解决方案.

谢谢

c# boolean-logic

0
推荐指数
2
解决办法
132
查看次数

如何在Delphi中实现决策矩阵

我必须在Delphi 7中实现一个决策矩阵.该函数是

CalcNewStatus(actionCode:string; reportType:string; currentStatus:string):string;

  • ActionCode可以具有值'A'和'N'
  • ReportType可以具有值'I'和'F'
  • CurrentStatus可以具有值'P','I','F'.

例如,在C#中我会使用字典.我怎么能在Delphi 7中做到这一点?

delphi algorithm dictionary boolean-logic delphi-7

0
推荐指数
1
解决办法
611
查看次数

如何在Or运算符中使用AND运算符逻辑我无法在访谈中解决它?

假设我有这样的代码,

(var1==true && var2==true)
{
    somemethod();
}
Run Code Online (Sandbox Code Playgroud)

假设我们有一种语言,其中我们没有&&运算符,它不是语言中的exsis然后在条件中改变使它像(var1 == true || var2 == true)并且工作就像运算符那样condion true然后它进入循环并且不使用任何代码,例如使用if条件为两个条件使其工作希望您的建议提前感谢

.net c# boolean-logic

0
推荐指数
2
解决办法
1525
查看次数

可能由if语句引起的C++布尔逻辑错误

这是我遇到问题的一段代码的极简化版本.

int i = 0;
int count = 0;
int time = 50;
int steps = 1000;
double Tol = 0.1;
bool crossRes = false;
bool doNext = true;

for (int i=0; i<steps; i++) {

//a lot of operations are done here, I will leave out the details, the only
//important things are that "dif" is calculated each time and doNext either
//stays true or is switched to false

    if (doNext = true) {
        if (dif <= Tol) count++;
        if …
Run Code Online (Sandbox Code Playgroud)

c++ boolean-logic if-statement

0
推荐指数
1
解决办法
653
查看次数

java中while语句中的三个条件

这是错的吗?当Ran1,Ran2,Ran3都相同时,我想退出while循环.TNX

Random RandomNumber = new Random();
int Ran1 = RandomNumber.nextInt(4);
int Ran2 = RandomNumber.nextInt(4);
int Ran3 = RandomNumber.nextInt(4);

while (Ran1 != Ran2 && Ran1 != Ran3 && Ran2 != Ran3 ){
    Ran1 = RandomNumber.nextInt(4);
    Ran2 = RandomNumber.nextInt(4);
    Ran3 = RandomNumber.nextInt(4);
    System.out.print(Ran1);
    System.out.print(" ");
    System.out.print(Ran2);
    System.out.print(" ");
    System.out.println(Ran3);
Run Code Online (Sandbox Code Playgroud)

}

java boolean-logic while-loop

0
推荐指数
1
解决办法
2248
查看次数

结果的三元逻辑(不是关于三元运算符)

我有一个代码(例如Java):

    boolean A(...){
       if (...) return true;
       else return false;
    }

    void C(...){

       if (A) {doSomeThing();}
       else {doNothing();}
    }
Run Code Online (Sandbox Code Playgroud)

但逻辑改变了,今天我需要返回3个案例.它看起来像这样

        int A(...){
           if (...){ return int;}
           else {
              if (...) {return int;}
              else {return int;}
           }
        }

        void C(...){

           if (A == 1) {doSomeThing1();}
           if (A == 2) {doSomeThing2();}
           if (A == 3) {doSomeThing3();}
        }
Run Code Online (Sandbox Code Playgroud)

这是最佳实践还是我应该使用其他东西而不是"int"?或者我应该改变我的逻辑并将其分为两个布尔值?PS我知道这个问题已经完全但是它让我感到不安.

java logic boolean-logic

0
推荐指数
1
解决办法
139
查看次数

为什么这会返回true,而不是堆栈溢出?

为什么这不是一个无限的递归循环?

public static void main(String[] args) {
        System.out.println(isSuch(99) + " " + isSuch(100));
    }

    public static boolean isSuch(int n)
   {
      System.out.println("n is currently at "+ n);
       return n > 2 && !isSuch(n - 2);

    }
Run Code Online (Sandbox Code Playgroud)

java recursion boolean-logic

0
推荐指数
1
解决办法
71
查看次数

我的if else声明怎么了?

我有一个$name包含字符串的变量,当我测试它时,我永远不会得到"名称应该在2到40个字符之间"错误,即使它长度小于2个字符或大于40个.为什么?

if (strlen($name) < 2 && strlen($name) > 40) {
    $nameError = 'Name should be between 2 and 40 characters';
}
Run Code Online (Sandbox Code Playgroud)

boolean-logic

0
推荐指数
1
解决办法
74
查看次数

关于括号,布尔逻辑和'\ n'

我发现(true && false)给出0,而true && false(没有括号)给出1。这个问题可能是愚蠢的,因为我刚开始学习C ++,但是我在任何地方都找不到答案。

我执行以下操作:

cout << (true && false) << '\n';
cout << true && false << '\n';
cout << (true && false == true);
Run Code Online (Sandbox Code Playgroud)

它给了我:

    0
    10

看到这个之后,我变得更加困惑:

  1. (true && false)和之间true && false(没有括号)有什么区别?
  2. 因为true && false给了我1,所以我以为true && false没有括号就是true。但是,(true && false == true)给我0。为什么?是不是因为01不一定指示falsetrue
  3. 另外,'\n'第二行中的似乎不起作用。为什么?

c++ boolean-logic

0
推荐指数
1
解决办法
76
查看次数