本文主要是介绍C/C++ 生成包含三个变量和两个逻辑连接词的真值表,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
推荐阅读:Python基础自学实用笔记(总和篇)-By Ryan_3610
2、题目:生成包含三个变量和两个逻辑连接词的真值表
2.1代码
#include <iostream>
#include <stdio.h>
using namespace std;
//打印表头
void printtitle(char a,char b,char c,int one,int two)
{printf("%c %c %c %c",a,b,c,a);switch(one){case 0:printf("~%c",b);break;case 1:printf("^%c",b);break;case 2:printf("\\/%c",b);break;case 3:printf("->%c",b);break;case 4:printf("<->%c",b);break;}switch(two){case 0:printf("~%c\n",c);break;case 1:printf("^%c\n",c);break;case 2:printf("\\/%c\n",c);break;case 3:printf("->%c\n",c);break;case 4:printf("<->%c\n",c);break;}
}
//真值运算
int yunsuan(int p,int q,int connective)
{if(connective==1){return p*q;}else if(connective==2){return ((p+q)/2+(p+q)%2);}else if(connective==3){if(p==0)return 1;else{if(q==1)return 1;elsereturn 0;}}else if(connective==4){if(p==q)return 1;elsereturn 0;}
}int main()
{
//输入char a,b,c;int m,n;cout<<"逻辑联结词选择:“非”请输入0,“与”请输入1,“或”请输入2,“蕴涵”请输入3,“双向蕴涵”请输入4!"<<endl;cout<<"输入第1个变量:"; cin>>a;cout<<"输入第一个逻辑连接词:"; cin>>m;cout<<"输入第2个变量:"; cin>>b;cout<<"输入第二个逻辑连接词:"; cin>>n;cout<<"输入第3个变量:"; cin>>c;
//输出表头printtitle(a,b,c,m,n);
//输出格式及运算结果int i,j,k;for (i=0;i<2;i++){for (j=0;j<2;j++){for (k=0;k<2;k++){printf("%d %d %d ",i,j,k);if(m<=n) cout<<yunsuan(yunsuan(i,j,m),k,n)<<endl;else cout<<yunsuan(i,yunsuan(j,k,n),m)<<endl;}}}
return 0;
}
2.2测试
a
1
b
4
c
2.3结果
这篇关于C/C++ 生成包含三个变量和两个逻辑连接词的真值表的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!