简化这些布尔表达式
Simplify these boolean expressions?
本文关键字:布尔表达式 更新时间:2023-10-16
我不确定我是否正确地简化了这些布尔表达式:
1. (A && B) || B
2. (A || B) && A
3. !(A || B) && A
4. !(A && B) || !B
简化表达式:
1. A && B
2. A || B
3. !B && A
4. !A || !B
用一些真值表很容易排序
1. (A && B) || B
A B | E
0 0 | 0
0 1 | 1
1 0 | 0
1 1 | 1
Simplified: B
################
2. (A || B) && A
A B | E
0 0 | 0
0 1 | 0
1 0 | 1
1 1 | 1
Simplified: A
Algebraically:
Using our identity that we've derived from part 1:
(A || B) && A --> (A && A) || (A && B) --> A || (A && B) --> A
#################
3. !(A || B) && A
A B | E
0 0 | 0
0 1 | 0
1 0 | 0
1 1 | 0
Simplified: 0
Algebraically (via demorgans)
!(A||B)&&A --> (!A && !B) && A --> !A && !B && A
--> (A && !A) && !B --> 0 && !B --> 0
##################
4. !(A && B) || !B
A B | E
0 0 | 1
0 1 | 1
1 0 | 1
1 1 | 0
Simplified: !A || !B
它们中的大多数也可以用代数方法来完成,但是真值表将使你的工作变得简单。
相关文章:
- 提升精神:解析布尔表达式并简化为规范范式
- C++ : 为什么必须添加布尔表达式?
- 我的作业问题:布尔表达式
- 是否可以定义以后可以计算的布尔表达式
- 布尔表达式的值是什么
- 布尔表达式的奇怪评估
- 布尔表达式是否像使用 if 或 switch 进行分支一样繁琐?
- 无限模板递归,因为没有布尔表达式优化,只有 gcc
- 是否有任何合理的场景,程序员可能希望避免布尔表达式的短路计算
- 注 961:违反 MISRA 2004 咨询规则 12.6,运算符所需的布尔表达式:"!"
- 使用提升的布尔表达式
- 在C++上给定布尔表达式的情况下分配整数值
- 布尔表达式的精神解析器
- 多个布尔表达式,而不重新插入变量
- C++ 循环和布尔表达式
- 编写布尔表达式以判断列表是否在增加
- 布尔表达式习语中的字符串文字是什么
- 布尔表达式在C++中解析和计算
- 布尔表达式中带有 strlen() 的奇怪行为
- C++:布尔表达式导致无限 while 循环