1.1联结词真值运算
Time Limit: 1000 ms Memory Limit: 65536 KiB
Problem Description
已知命题变元p和q的真值,求它们的合取式(p∧q)、析取式(p∨q)、蕴涵式(p→q)、等值式(A<=>B)、与非式(p↑q)、或非式(p↓q)的真值。
Input
多组输入,每组测试数据输入两个0或1的整数p和q,1表示真值为真,0表示真值为假
Output
每组测试数据单独占一行,以空格隔开的6个0或1的整数,分别为p和q的合取式(p∧q)、析取式(p∨q)、蕴涵式(p→q)、等值式(A<=>B)、与非式(p↑q)、或非式(p↓q)的真值。
Sample Input
0 0
Sample Output
0 0 1 1 1 1
Hint
Source
xry-fhf
本题主要考的是各个联结词的关系。合取,析取是高中学习的。
合取是都真为真,有假则假。
析取是有真则真,全假为假。
蕴含式是p真q假为假,其余为真。
等值式是p,q相同为真,其余为假。
与非式是合取式为真,与非式为假,合取式为假,与非式为真。(与合取式相反)
或非式是析取式为真,或非式为假,析取式为假,或非式为真。(与析取式相反)
详情见AC代码:
#include<bits/stdc++.h>
using namespace std;
int main()
{
int n , m ;
int he , xi ;
while(~scanf("%d %d" , &n , &m))
{
if (n&&m)
{
printf("1 ");
he = 1;
}
else
{
he = 0;
printf("0 ");
}
if (n==0&&m==0)
{
xi = 0;
printf("0 ");
}
else
{
xi= 1;
printf("1 ");
}
if (n==1&&m==0)
{
printf("0 ");
}
else
{
printf("1 ");
}
if (n==m)
{
printf("1 ");
}
else
{
printf("0 ");
}
if (he)
{
printf("0 ");
}
else
{
printf("1 ");
}
if (xi)
{
printf("0\n");
}
else
{
printf("1\n");
}
}
return 0;
}