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
#include <stdio.h>
#include <stdlib.h>
int main()
{
int p,q,a,b,c,d,e,f;
while(~scanf("%d %d",&p,&q))
{
if(p==1&&q==1)
a=1;
else
a=0;//只有p,q都为真,合取式才为真
if(p==0&&q==0)
b=0;
else
b=1;//只有p,q都为假,析取式才为假
if(p==1&&q==0)
c=0;
else
c=1;//只有p为真推出q为假,蕴涵式才为假
if(p==q)
d=1;
else
d=0;//只有p,q真值相同,等值式才为真
if(p==1&&q==1)
e=0 ;
else
e=1 ;//只有p,q都为真,与非式才为假
if(p==0&&q==0)
f=1;
else
f= 0;//只有,q都为假,或非式才为真
printf("%d %d %d %d %d %d",a,b,c,d,e,f);
printf("\n");
}
return 0;
}