1676:逻辑求值
文件提交:无需freopen
内存限制:128 MB
时间限制:1.000 S
评测方式:普通裁判
命题人:
提交:3
解决:2
题目描述
逻辑表达式的定义如下:
-
单个
true
或false
都是逻辑表达式; -
如果
S
及T
是逻辑表达式,那么S and T
也是逻辑表达式; -
如果
S
及T
是逻辑表达式,那么S or T
也是逻辑表达式。
对逻辑表达式求值前,需要确定 and
与 or
运算的优先级:
-
若规定先算
and
再算or
,则以下表达式的值为
true or false and false or false ~~~~~~~~~~~~~~~ = true or false or false = true
定义这种计算顺序为合取优先;
-
若规定先算
or
再算and
,则以下表达式的值为
true or false and false or false ~~~~~~~~~~~~~ ~~~~~~~~~~~~~~ = true and false = false
定义这种计算顺序为析取优先。
给定一个逻辑表达式,请分别求出合取优先及析取优先规定下的计算结果。
输入
一串字符序列:表示给定的逻辑表达式,保证输入数据是一个合法的逻辑表达式。
- 对于 的数据,。
输出
- 第一行:表示在合取优先规定下逻辑表达式的值。
- 第二行:表示在析取优先规定下逻辑表达式的值。
样例输入-1 复制
true or false and false or false
样例输出-1 复制
true
false