离散数学实验一

离散数学实验一

ID:28474503

大小:146.99 KB

页数:7页

时间:2018-12-10

离散数学实验一_第1页
离散数学实验一_第2页
离散数学实验一_第3页
离散数学实验一_第4页
离散数学实验一_第5页
资源描述:

《离散数学实验一》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、(2012/2013学年第一学期〉课程名称离散数学实验名称真值表法求主析取范式和主合取范式实验时间2014年9月26日指导单位南京邮电大学指导教师罗卫兰学生姓名沈一州班级学号B12040920学院(系)计算机软件学院专业NIIT(软嵌)实验报告实验名称真值表法求取主析取、合取范式指导教师罗卫兰实验类型Windows+VC实验学时4实验时间9.26一、实验目的和要求眺编程实现用真值表法求任意变量的合式公式的主析取范式和主合取范式要求:1.从屏幕输入变元个数和每种情况的真值2.规范列出合式公式的真值表3.

2、给出相应主析取和主合取范式二、实验环境(实验设备)硬件:CPU:3.0Ghz内存:1.00GB软件:操作系统:WindowsXPSP3编程软件:VisualC++6.0三、实验原理及内容总体思想:建立一个全局变量n保存变元个数,全局变量p代表2的n次方即所有情况的种数,全局数组zzb[100]保存每种情况的真值,如在n=3时,zzb[O]代表qPlAnP2AnP3的真值,0为假,1为真,zzb[l]则代表1PlA-iP2AP3的真值,以此类推。在运行时,将zzb[i]中的i从十进制转化成二进制,如5变

3、成二进制就是101,代表PlAnP2AP3的真值,再根据析取和合取的相关性质求出主析取、合取范式。核心代码:将十进制数转化成二进制数,并以不同的方式显示在屏幕上,如在输入真值表时显示每种情况对应的真假,主要完成如下图所示的功能:表:3值数真个的元p1011■式资P3FTFTF公入2入输PFFTTFvoidBinaryShow(intm,intn)//m代表zzb[m]屮的m,n代表变元个数{inta,i,j,q;for(i=n;i>0;i-)//i的值:n,n-1,…,1{for(j=0,q=l;j<

4、i-l;j++){q*=2;//先求出2的i-1次方}a二m/q;//用m/(2的i-1次方)求出的值即为二进制i-1位上的值if(a==l){cout«nTm=m-q;//若i-1位是1则减去(2的i-1次方)考虑循环下一步i-2位的值}elsecout«nFn;}}显示范式时也是类似,总体思想都是将10进制变成2进制再处理。voidBinaryAnd(intm,intn){inta,i,j,q;cout«T;for(i=n;i>0;i-)for(j=0,q=l;j

5、/q;if(a==l){m=m-q;}elsecout«n]”;cout«nPr,«n-i+l;if(i!=l)cout«HAn;elsecout«T;}cout«HVn;}小细节:一幵始总会多打一个八或V,后来用cout«"b代码删除最后一个字符处理掉。生成公式的主合职范式:CnPiVnP2/nP3)八(]Pi/P2/P3)八(Pi/P2/P3)八运行结果:U!首先是选择界面:表表式式僵范范真真取取的的祈合式式主主公公的的入成式式出mi公公退如果直接选择2、3、4:>奠8乂i值表变元个数

6、囊式式真真取取的的析合式式主主公公的的入成式式出—公公退llSKrwiJl请选择:先选择1输入变元个数并逐个输入每种情况公式的真值:表:3值数真人

7、的-兀p10i1•式变P3FTFTF公入2入输PFFTTF警-如果输入0、1之外的数吋:全部输入完之后输入2显示真值表:FTT1TFF2请输入0或1!请选择,2生成公式的真值表:PlP2P3PFFF1FFT0FTF1FTT1TFF0TFT0TTF1TTT1输入3显示主析取范式:请选择:3生成公式的主析职范式:V

8、P3〉V<]piAp2Ap3>V

9、以相对有经验。去年题0难点主要在如何读取合式公式,但是今年题目改了,不用输入合式公式,直接输入真值表,于是难点就变成如何自动地输出每一种情况。我首先想到的就是把10进制数转化为2进制表示出来,但是这也有一个问题,比如变元三个的情况下,3变成了11,而非我预期的011,第一个问题即如何显示默认的0。于是我重写了算法,终于解决了这个大难题。但是好景不长,再以为结束了的时候,突然出现范式末尾总会出现额外的八或V,通过晚上查询资料得知,用小+空格可以将光标前移一

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

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

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