逻辑运算求助首先我用'&'表示与, '|'表示或有这样一个公式: (A&B)|(C&D)现在想解开这个括号, 就是求一个不带括号的算式, 而计算优先级是需要从左到右的, 也就是说如果结果是A&B|C&D, 那么就相

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/30 13:33:08
逻辑运算求助首先我用'&'表示与, '|'表示或有这样一个公式: (A&B)|(C&D)现在想解开这个括号, 就是求一个不带括号的算式, 而计算优先级是需要从左到右的, 也就是说如果结果是A&B|C&D, 那么就相

逻辑运算求助首先我用'&'表示与, '|'表示或有这样一个公式: (A&B)|(C&D)现在想解开这个括号, 就是求一个不带括号的算式, 而计算优先级是需要从左到右的, 也就是说如果结果是A&B|C&D, 那么就相
逻辑运算求助
首先我用'&'表示与, '|'表示或
有这样一个公式: (A&B)|(C&D)
现在想解开这个括号, 就是求一个不带括号的算式, 而计算优先级是需要从左到右的, 也就是说如果结果是A&B|C&D, 那么就相当于带括号的((A&B)|C)&D, 当然, 这个结果肯定是不对的.
求高人解答

逻辑运算求助首先我用'&'表示与, '|'表示或有这样一个公式: (A&B)|(C&D)现在想解开这个括号, 就是求一个不带括号的算式, 而计算优先级是需要从左到右的, 也就是说如果结果是A&B|C&D, 那么就相
一般来说,如果认为&和|两个运算的优先级相同的话,则你的问题是无解的,也就是说,无法将
(A&B)|(C&D)转换为不带括号的形式.
当然,有两种方式可以转换该问题,
1.定义&和|的优先级,
1.1 如果认为&的优先级高,则可以直接将上面表达式的括号去掉
1.2 如果认为|优先级高.则根据公式 (X&Y)|Z = (X|Z) & (Y|Z),上面表达式可以化为
A|C & B|C & A|D & B|D
另外一种形式是使用后缀表达式.这个可以上网搜一下,一般计算机计算时,都会先转换为后缀表达式,将括号删除.比如(2 + 1) * 3 ,其后缀表达式为:2 1 + 3 *
(A&B)|(C&D)的后缀表达式为AB&CD&|,实际上编译器在计算复杂表达式时,就是将所有表达式都转换为了后缀表达式在生成机器码的.
运用后缀表达式进行计算的具体做法:
建立一个栈S .从左到右读后缀表达式,如果读到操作数就将它压入栈S中,如果读到n元运算符(即需要参数个数为n的运算符)则取出由栈顶向下的n项按操作符运算,再将运算的结果代替原栈顶的n项,压入栈S中 .如果后缀表达式未读完,则重复上面过程,最后输出栈顶的数值则为结束.

A&B|D&C
&优先于|

逻辑运算求助首先我用'&'表示与, '|'表示或有这样一个公式: (A&B)|(C&D)现在想解开这个括号, 就是求一个不带括号的算式, 而计算优先级是需要从左到右的, 也就是说如果结果是A&B|C&D, 那么就相 计算机中的逻辑运算一般用什么表示逻辑真 在逻辑代数中,式F=A+B表示A,B做与逻辑运算么 10、&和&&的区别.&是位运算符,表示按位与运算,&&是逻辑运算 R语言 逻辑运算我有三列数 A B C,求当同时满足A>30,B>90的行数对应的C的均值,怎么样用逻辑运算求解? “首先”用英语有哪些表示方法 ”逻辑运算异或是与或非逻辑运算的组合“这句话是什么意思, 算术逻辑运算实验要用什么单元 位运算与与逻辑运算与的区别是什么? 关于逻辑运算.我的理解是 7&8的值为1(真);但是看到一个表达式:x = x&(x-1),会将x用二进制表示时最右边的一个1变为0,因为x-1将会将该位(x用二进制表示时最右边的一个1)变为0.这该如何理解 逻辑运算中异或和与或怎么计算? 计算机逻辑运算中 “ and ”为什么翻译为 “与” 而不是“和” 按位运算与逻辑运算异同点是什么 用方程解决问题时,首先要用字母表示什么 什麼是逻辑运算?什麼是逻辑运算?什麼是逻辑运算? 表示 首先 的英语单词是? 物理电学关于电压的问题这是串联与并联的性质.不过我那个等式不太理解.首先我想知道它是怎么通过欧姆定律分解来的? 已知I1+I2=I总,I1和I2能表示的,那么 I总 怎么用U和R表示呢? pascal逻辑运算符与位运算符最近看到一段pascal算法 里面用了and 和 or 运算符 因为我对pascal不熟 所以把这段算法改写成了c调试,也就是把and 和 or改写成了 && 和 || ,刚刚我才发现我弄错了 其实