编写正确的逻辑表达式
Write logical expression which is true
本文关键字:表达式 更新时间:2023-10-16
当最多两个数字 A、B、C 为非正数时,编写为真的逻辑表达式。你能回答这个问题吗?
老师说答案是!(A =< 0 && B =< 0 && C <= 0)
和A > 0 || B > 0 || C > 0
.
我还是不明白她的回答,你能帮我吗?
现在,问题指出 A、B、C 中最多有 2 个是非正的。因此,这意味着包含 3 个数字并返回 true 的条件将是 1.
!(A =< 0 && B =< 0 && C <= 0)
在这里,我们知道 A、B 或 C 中的任何一个都大于 0。因此,它将返回 true。 阿拉伯数字。
A > 0 || B > 0 || C > 0
在这里,同样的理由成立,其中至少有一个会返回为真。
你的老师应用了德摩根定律,它说:
not (A or B) = not A and not B;
和
not (A and B) = not A or not B
查看 https://en.wikipedia.org/wiki/De_Morgan%27s_laws 的完整解释
工作代码。
#include <iostream>
using namespace std;
//Function for logic
bool myFun(int a,int b,int c)
{
bool conditionFirst=!(a <= 0 && b <= 0 && c <= 0);
bool condintionSecond=(a > 0 || b > 0 || c > 0);
if(conditionFirst==true && condintionSecond==true)
return true;
else
return false;
}
int main() {
int a,b,c;
cin>>a>>b>>c;
if(myFun(a,b,c))
cout<<"True";
else
cout<<"False";
}
相关文章:
- (C++)分析树以计算返回错误值的简单算术表达式
- 在VS2010-VS2015下编译时,如何使用decltype作为较大类型表达式的LHS
- 提升精神:解析布尔表达式并简化为规范范式
- 不能在初始值设定项列表中将非常量表达式从类型 'int' 缩小到'unsigned long long'
- 使用正则表达式regex_search在字符串中查找字符串
- 如何确认我的constexpr表达式实际上已经在编译时执行
- 概念中的cv限定符需要表达式参数列表
- 为什么constexpr的性能比正常表达式差
- 对于结构,表达式必须是可修改的ivalue
- 当一个值是非常量但用常量表达式初始化时使用constexpr
- 将fold表达式与std::一起用于两个元组
- 断言中的Fold表达式在某些计算机上编译,但在其他计算机上不编译
- 标记 '","' 之前的预期主表达式
- gcc和clang在表达式是否为常量求值的问题上存在分歧
- 如何计算具有指定类型的表达式的相对精度和绝对精度
- 带有用户定义类的c++折叠表达式
- 即使使用调试编译标志,表达式也是"optimized out"
- holeMenuProgram.cpp:38:1 错误:'}'令牌之前的预期主表达式
- 在 C++ 中使用正则表达式错误时出现问题 括号表达式中的范围无效
- 这 4 个 lambda 表达式之间有什么区别?