【离散数学】 SDUT OJ 1.1联结词真值运算

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

#include <stdio.h>
#include <stdlib.h>
#include <math.h>

int main()
{
    int p, q;
    int He, Xi, Yun, Deng, YF, HF;
    while(~scanf("%d %d", &p, &q))
    {
        if(!p && !q)
        {
            He = 0;
            Xi = 0;
            Yun = 1;
            Deng = 1;
            YF = 1;
            HF = 1;
        }
        else if(p && !q)
        {
            He = 0;
            Xi = 1;
            Yun = 0;
            Deng = 0;
            YF = 1;
            HF = 0;
        }
        else if(!p && q)
        {
            He = 0;
            Xi = 1;
            Yun = 1;
            Deng = 0;
            YF = 1;
            HF = 0;
        }
        else if(p && q)
        {
            He = 1;
            Xi = 1;
            Yun = 1;
            Deng = 1;
            YF = 0;
            HF = 0;
        }
        printf("%d %d %d %d %d %d\n", He, Xi, Yun, Deng, YF, HF);
    }

    return 0;
}
记住基础知识很简单;
posted @ 2018-04-13 12:27  Gaojinman  阅读(314)  评论(0)    收藏  举报