数据结构与算法课程设计报告--真值表的设计与实现

数据结构与算法课程设计报告--真值表的设计与实现

ID:35626914

大小:84.00 KB

页数:11页

时间:2019-04-03

数据结构与算法课程设计报告--真值表的设计与实现_第1页
数据结构与算法课程设计报告--真值表的设计与实现_第2页
数据结构与算法课程设计报告--真值表的设计与实现_第3页
数据结构与算法课程设计报告--真值表的设计与实现_第4页
数据结构与算法课程设计报告--真值表的设计与实现_第5页
资源描述:

《数据结构与算法课程设计报告--真值表的设计与实现》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、数据结构与算法课程设计报告真值表的设计与实现(注:本程序于VS2008中编译运行并测试,VC6.0中运行不保证正常运行)1、问题描述:对给出的任意一个合式公式(不超过四个命题变元),用C++语言的程序编程表示出来,并且能够计算它在各组真值指派下所应有的真值,画出其真值表。基本要求:(1)已知命题p和q的真值,求出它们的合取、析取、蕴涵和等价的真值;(2)表示出合式公式;(3)给出任意一个合式公式(不超过四个命题变元),设计程序把它表示出来,并且能够计算它在各组真值指派下所应有的真值(或是逻辑运算的结果)。提高要求:

2、构造任意合式公式的真值表2、需求分析:命题公式;真值表;类;运算符重载;递归;字符串软件的基本功能:对给出的任意一个合式公式(不超过四个命题变元),能够计算它在各组真值指派下所应有的真值,并画出其真值表。测试数据要求:1)给出命题p和q的真值,求合取、析取、蕴涵和等价的真值;2)给出任意一个合式公式(不超过四个命题变元)3)错误提示不明显需测试者核对输入公式准确性。3、详细设计:定义命题变元类Proposition:classProposition{intdata;chardata1;//data:命题的真值(0/

3、1)data1:命题名public:Proposition(){data=2;data1='A';};friendPropositionoperator!(Proposition&q);//定义否定运算符!friendPropositionoperator&(Proposition&p,Proposition&q);//定义合取运算符&friendPropositionoperator

4、(Proposition&p,Proposition&q);//定义析取运算符

5、friendPropositionoperator

6、>(Proposition&p,Proposition&q);//定义蕴含运算符>voidinput1(intx){data=x;}//输入datavoidinput2(charx){data1=x;}//输入data1intget(){returndata;}//获取真值intget1(){returndata1;}//获取命题名};Propositionoperator!(Proposition&q){q.input1(1-q.get());returnq;}Propositionoperator&(Propo

7、sition&p,Proposition&q){p.input1((p.get()+q.get())/2);returnp;}Propositionoperator

8、(Proposition&p,Proposition&q){if(p.get()+q.get()>0)p.input1(1);elsep.input1(0);returnp;}Propositionoperator>(Proposition&p,Proposition&q){if(p.get()==1&&q.get()==0)p.input1(0);e

9、lsep.input1(1);returnp;}Propositionoperator<(Proposition&p,Proposition&q){if(p.get()==q.get())p.input1(1);elsep.input1(0);returnp;}其中函数voidinput1(intx)用于输入命题变元的真值,函数voidinput2(charx)用于输入命题名,intget()与intget1()分别用于获取命题真值和命题名,运算符重载部分由[1]中的知识得出。给命题变元赋值(voidfuzhi(s

10、tringA,intN,intM,Propositiona[])):for(intj=0;j<2;j++){a[N-1].input1(j);if(N>1){fuzhi(A,N-1,M,&a[0]);}else{for(inti=0;i

11、输入的表达式并计算真值(intbds(stringA,intN,Propositiona[])):PropositionANS,Temp;chard[4]={'!','

12、','&','>'};intL;inti=0;L=strlen(&A[0]);//计算表达式长度while(i

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。