标签: boolean-expression

这个布尔定律叫什么?

我认为这总是如此

x || (x && y) 
Run Code Online (Sandbox Code Playgroud)

相当于

x
Run Code Online (Sandbox Code Playgroud)

如果是这样,那法律叫什么?我甚至不确定谷歌会如何做到这一点.

logic boolean-logic boolean boolean-expression first-order-logic

2
推荐指数
1
解决办法
52
查看次数

如果条件布尔表达式,则简化

if-condition我的代码中有这个:

if (a||a&&!b){
// do some stuff
}
Run Code Online (Sandbox Code Playgroud)

从我的那些初始值junit test:

boolean a=true, b = true;
Run Code Online (Sandbox Code Playgroud)

我后来认识到这个陈述可以简化为:

if (a&&b)
Run Code Online (Sandbox Code Playgroud)

变绿了: Assert.assertTrue(a||a&&!b == a&&b);

我现在的问题.有没有方法,工具,功能,图书馆等来检查boolean expression是否有简化?

谢谢你的帮助?

java boolean-logic if-statement boolean-expression

2
推荐指数
1
解决办法
3018
查看次数

在C++中添加布尔表达式switch语句?

我正在用C++练习switch语句,我想知道我是否可以添加一个布尔表达式,以及它是如何,就像它是if/else对应物一样.有可能加入这个吗?

这是我的骨架代码:

#include "stdafx.h"
#include <iostream>
#include <iomanip>
#include <cmath>
#include <string>
#include <Windows.h>
#include <stdlib.h>
#include <time.h>
#include <random>

using namespace std;


int main()
{
    int HouseValue;
    cout << "Enter your total house value estimate:";
    cin >> HouseValue;

    switch (HouseValue)
    {
        case 1:
            (HouseValue < 100000 && HouseValue > 50000);
            cout << "";
            break;
        case 2:
            (HouseValue < 250000 && HouseValue > 100000);
            cout << "";
            break;
        case 3:
            (HouseValue < 500000 && HouseValue > 250000);
            cout << ""; …
Run Code Online (Sandbox Code Playgroud)

c++ boolean case break boolean-expression

2
推荐指数
1
解决办法
4319
查看次数

布尔表达式中的整数溢出

我有以下c ++代码:

#include <iostream>

using namespace std;

int main()
{
    long long int currentDt = 467510400*1000000;
    long long int addedDt = 467510400*1000000;
    if(currentDt-addedDt >= 0 && currentDt-addedDt <= 30*24*3600*1000000)
    {
                cout << "1" << endl;
                cout << currentDt-addedDt << endl;

    }       
    if(currentDt-addedDt > 30*24*3600*1000000 && currentDt-addedDt <= 60*24*3600*1000000)
    {
                cout << "2" << endl;
                cout << currentDt-addedDt << endl;

    }       
    if(currentDt-addedDt > 60*24*3600*1000000 && currentDt-addedDt <= 90*24*3600*1000000)
    {
                cout << "3" << endl;
                cout << currentDt-addedDt << endl;

    }       

   return …
Run Code Online (Sandbox Code Playgroud)

c++ boolean-logic overflow boolean-expression

2
推荐指数
1
解决办法
102
查看次数

你能从循环外部打破一个循环吗?

你能从循环外部打破一个循环吗?这是一个(非常简单)我正在尝试做的例子:我想在While循环中要求连续,但是当输入是'exit'时,我希望while循环中断!

active = True

def inputHandler(value):
    if value == 'exit':
        active = False

while active is True:
    userInput = input("Input here: ")
    inputHandler(userInput)
Run Code Online (Sandbox Code Playgroud)

python boolean-expression while-loop python-3.x

2
推荐指数
1
解决办法
1220
查看次数

检查空字符串时,"== False"和"is not"之间是否有区别?

我已经在stackoverflow的其他地方读过,在Python中检查空字符串的最优雅方法是(例如,假设它是一个被调用的字符串response):

if not response:
    # do some stuff 
Run Code Online (Sandbox Code Playgroud)

原因是字符串可以计算为布尔对象.

所以我的问题是,下面的代码是否说同样的事情?

if response == False:
    # do some stuff
Run Code Online (Sandbox Code Playgroud)

python boolean-expression

2
推荐指数
1
解决办法
510
查看次数

*和+分别等于&&和|| 在布尔操作数上?

a [8]是一系列布尔值.我试图计算一个布尔表达式,如下所示.

bool a[8];
.....
bool result=a[0]*(a[3]+a[6]*(a[4]+a[7]*a[5]))+a[1]*(a[6]*a[3]+a[4]+a[7]*a[5])+a[2]*(a[5]+a[7]*(a[4]+a[6]*a[3]));
Run Code Online (Sandbox Code Playgroud)

表达很长,但概念上并不复杂.唯一的错误是,当我用&&替换表达式中的*(在两种情况下我都期望逻辑AND)或用||替换+时,结果似乎不同 (期待逻辑OR).

我不确定哪些是正确的,布尔运算符或乘法,加法等的数学符号.更糟糕的是,没有给出任何错误,即编译器对两者都满意.哪一个更安全,更正确?

c++ boolean operators boolean-expression boolean-operations

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

Python是否有条件NOT语句

我想过滤一个值列表.根据变量的状态,我想返回过滤器的正或负结果.例:

def foo(it, my_condition):
    return [s for s in it if (s.startswith("q") if my_condition else not s.startswith("q"))]

foo(["The", "quick", "brown", "fox"], my_condition=True)
Run Code Online (Sandbox Code Playgroud)

所以,my_condition=True我得到了["quick"],my_condition=False我得到了["The", "brown", "fox"].

我不喜欢的实现是这部分:(s.startswith("q") if filter else not s.startswith("q")).它包含重复的代码,并在一个简洁的列表理解中占用了大量空间.我真正想要的只是插入notif,根据不同的状态filter变量.

这有更漂亮/更干净的解决方案吗?如果可能的话,我想在这种情况下避免lambda表达式的计算开销.

python boolean-expression python-3.x

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

返回值如何在递归方法中起作用?【JAVA]

TLDR: java似乎只在方法运行时返回第一个值.我错了,还是有一种解决方法我不知道[不求助于循环]

我的目标是从返回的最后一个值[boolean]输出分配给方法,但是如果没有正确理解返回的工作原理我就无法做到.


代码的目的是通过读取用户输入从简单的选择[Y/N]返回布尔值.如果给出了错误的输出[例如:"p","P","apples"],则该方法应该再次提示用户,直到给出正确的输入.

这就是我开始使用的:

private Boolean nrCheck()
{   
    Scanner sc = new Scanner (System.in);
    Boolean isNewRelease;


    System.out.println("New Release [Y/N]? ");      
    String movieType = sc.nextLine();       

    switch (movieType)
    {
        case "Y" : case "y" :              isNewRelease = true;  break;
        case "N" : case "n" :              isNewRelease = false; break;
        default  : /*Try again*/ nrCheck();                      break; 
    }

    return isNewRelease;
}
Run Code Online (Sandbox Code Playgroud)

显然这不起作用,因为默认情况下不分配值,导致初始化错误.

尝试通过分配默认值来解决此问题,如下所示:

private Boolean nrCheck()
{   
    Scanner sc = new Scanner (System.in);
    Boolean isNewRelease;


    System.out.println("New Release [Y/N]? "); …
Run Code Online (Sandbox Code Playgroud)

java recursion return-value boolean-expression switch-statement

2
推荐指数
1
解决办法
172
查看次数

Dialogflow:如何获取sys.boolean?

我想添加训练短语

Yes
I would love to
No
No, thanks
Run Code Online (Sandbox Code Playgroud)

并提取$extraCheese包含TrueFalse稍后可以使用的布尔变量。如果我期望使用一种颜色,我会做$dressColor@sys.color,但是然后找不到@sys.boolean

我该怎么做呢?

boolean-expression api-ai dialogflow-es

2
推荐指数
1
解决办法
651
查看次数