- 1、本文档共30页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
真值表的C 算法实现
08届课程(设计)论文
题 目 命题公式的真值表算法 专业班级 信息与计算科学(1)班 学 号 0809030116 学生姓名 上官业云 指导教师 李圆媛 指导教师职称 讲师 学院名称 理学院
完成日期: 2010 年 09月27日
目 录
TOC \o 1-3 \h \u 目 录 I
摘 要 III
前 言 IV
第1章 课题背景 1
1.1背景 1
1.2 性质 1
1.3 意义 1
1.4 实验数据与结果 1
1.5 文献综述 2
第2章 问题的分析与算法的实现 3
2.1 问题的分析 3
2.2算法的实现 3
第3章 总 结 13
致 谢 14
参考文献 15
附 录 16
摘 要
为了解决命题公式的真值表算法问题,本文采用面向对象编程,输入命题变元,并以字符串形式读入命题公式,应用运算符重载来进行相关运算,并在C++(使用的编译工具为VS2010)下,给出了问题的具体解决方案。
关键词:命题公式;真值表;类;运算符重载;递归;字符串
前 言
本文解决了计算任意含个命题变元的命题公式的真值表的C++算法。全文共3章。
第1章介绍了问题背景、问题以及性质问题的意义。在本章中,还给出了具体的实验数据和我们查阅并借用的一些参考文献的主要内容。
第2章主要介绍了在对问题的分析后设计的算法,并编写程序,求出其具体调度方案。
第3章是本次课程设计的总结。
全文的最后是致谢、参考文献和程序的源代码。
上官业云
武汉工程大学理学院
第1章 课题背景
1.1背景
设为含有命题变元的命题公式,给一组确定的取值,称为公式关于的一组真值指派。含有个命题变元的公式有组不同的真值指派,对于每一组真值指派,公式都有一个确定的真值(一般用“0”表示假,“1”表示真)。公式与其命题变元之间的真值关系可以用真值表的方法方便的表示出来。
1.2 性质
含有个命题变元的公式有组不同的真值指派,对于每一组真值指派,公式都有一个确定的真值(一般用“0”表示假,“1”表示真)。
1.3 意义
使用计算机来完成各种复杂的真值表计算,尤其是当命题变元增多时,对应的取值成指数增长,计算量也指数增长,紧靠人很难完成。应用计算机强大的计算能力,可以又好又快的完成任意命题公式的真值表的计算。
1.4 实验数据与结果
实验时,本文主要是用编写的程序计算参考资料[1]上的相关命题公式来验证相关算法的正确性,稳定性。
由程序计算得出的命题公式的真值表:
[1]上236页给出的答案:
000 1 1 0 0 001 1 1 1 1 010 0 0 1 0 011 0 0 1 0 100 0 1 0 0 101 0 1 1 0 110 1 0 1 1 111 1 0 1 1 二者除命题变元取值顺序不一样外,最后的真值结果完全吻合,表明算法的正确性、稳定性。
1.5 文献综述
文献[1]介绍了命题变元与命题公式真值表的相关知识。
文献[2]介绍了C++程序设计基础知识。
文献[3]提供了C++面向对象的程序设计相关知识。
第2章 问题的分析与算法的实现
2.1 问题的分析
对于含有个命题变元的公式有组不同的真值指派,对于每一组真值指派,公式都有一个确定的真值(这里“0”表示假,“1”表示真)。为了枚举出所有的情形,须用重for循环,为了使程序具有通用性,的取值是不确定的。这时,使用递归的算法就较方便。
给命题变元赋值的问题解决后,还得解决计算问题,在这里,本文采用面向对象的方法,通过运算符的重载来完成相关计算。定义了类Proposition,它包括两个变量——命题变元名和命题变元的真值,和相关成员函数、需重载的运算符。
再设计计算真值的函数,考虑到命题公式中可能会出现括号,改变了运算的优先级,本文同样采用递归的算法,当遇到括号时,把括号里面的部分作为一个命题公式来计算,再把结果作为一个命题变元放到整个命题公式进行计算,而当遇到相关的运算符时,重载运算符进行计算。最后返回真值。
最后,主函数只需完成输入并存储命题变元与命题公式,调用赋值函数就行了。
由以上方法可以进行真值的运算,但程序冗余太长,再对其进行优化处理,用另一函数来代替大量重复的代码,使程序更简洁。
2.2算法的实现
定义命题变元类Proposition:
class Proposition
{
int data;char data1; //data:命题的真值(0/1) data1:命题名
public:
Proposition(){data=2;data1=A;};
friend Prop
您可能关注的文档
- 百事可乐促销策略.ppt
- 百万千瓦级超超临界国产机组汽轮机冷端参数优化与主要辅机选型.doc
- 百合花的含义.doc
- 百安居绩效管理.ppt
- 百丽广场统一租赁合同.doc
- 百年基业行动学习核心应用之二:快速提升组织领导力开发.doc
- 百事足球嘉年华挑战冠军王活动指引.ppt
- 百家讲坛之李清照讲稿.doc
- 百安居简介.ppt
- 百度和谷歌对比分析.doc
- 2025年西安电力高等专科学校单招职业适应性测试题库汇编.docx
- 2025年石河子工程职业技术学院单招职业倾向性测试题库含答案.docx
- 2025年辽宁冶金职业技术学院单招职业技能测试题库推荐.docx
- 2025年辽宁现代服务职业技术学院单招职业适应性测试题库最新.docx
- 2025年盐城幼儿师范高等专科学校单招职业适应性测试题库及参考答案.docx
- 2025年辽宁地质工程职业学院单招职业适应性测试题库审定版.docx
- 2025年荆门职业学院单招职业适应性测试题库参考答案.docx
- 2025年西安思源学院单招职业技能测试题库完整版.docx
- 2025年苏州农业职业技术学院单招职业技能测试题库及参考答案.docx
- 《学前儿童心理学》教学课件(上).pptx
最近下载
- 2025党校入党积极分子预备党员培训考试题库(含答案).docx VIP
- 2023-2024年数学竞赛AIME I II真题含答案(共4套).pdf
- 2025年湖北省高考数学模拟试卷(附答案解析).pdf VIP
- 骶神经调节术护理ppt.pptx
- 智能仓储与配送 课件 1.1 储配设施设备认知.pptx
- 建筑门窗检验规程.pdf VIP
- 2025统编版道德与法治小学一年级下册第一单元《我有新面貌》教学反思(附教材目录).docx VIP
- DCS题库附答案..docx
- 2024年广东省广州市高考英语二模试卷.docx VIP
- 2023年11月23日第八届全国十佳公诉人竞赛刑事检察策论真题及答案解析.doc VIP
文档评论(0)