- 1、本文档共8页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
河北工业大学-离散数学实验报告
实验一 真值计算
1、实验目的
熟悉五个常用联结词合取、析取、条件和双条件的概念,掌握真值表技术。
2、实验内容与要求
定义1 设P表示一个命题,由命题联结词┐和命题P连接成┐P,称┐P为P的否定式复合命题, ┐P读“非P”。称┐为否定联结词。┐P是真,当且仅当P为假;┐P是假,当且仅当P为真。
定义2 设P和Q为两个命题,由命题联结词∧将P和Q连接成P∧Q,称P∧Q为命题P和Q的合取式复合命题,P∧Q读做“P与Q”,或“P且Q”。称∧为合取联结词。当且仅当P和Q的真值同为真,命题P∧Q的真值才为真;否则,P∧Q的真值为假。
定义3 设P和Q为两个命题,由命题联结词∨把P和Q连接成P∨Q,称P∨Q为命题P和Q的析取式复合命题,P∨Q读做“P或Q”。称∨为析取联结词。当且仅当P和Q的真值同为假,P∨Q的真值为假;否则,P∨Q的真值为真。
定义4 设P和Q为两个命题,由命题联结词→把P和Q连接成P→Q,称P→Q为命题P和Q的条件式复合命题,简称条件命题。P→Q读做“P条件Q”或者“若P则Q”。称→为条件联结词。当P的真值为真而Q的真值为假时,命题P→Q的真值为假;否则,P→Q的真值为真。
定义5 令P、Q是两个命题,由命题联结词(把P和Q连接成P ( Q,称P ( Q为命题P和Q的双条件式复合命题,简称双条件命题,P ( Q读做“P当且仅当Q”,或“P等价Q”。称(为双条件联结词。当P和Q的真值相同时,P ( Q的真值为真;否则,P ( Q的真值为假。
本实验要求从键盘输入两个命题P和Q的真值,求它们的合取、析取、条件和双条件的真值。用C语言或MATLAB实现。
#includestdio.h
int b(int p,int q)
{
if(p==1q==1)
return 1;
else
return 0;
}
int c(int p,int q)
{
if(p==0q==0)
return 0;
else
return 1;
}
int d(int p,int q)
{
if(p==1q==0)
return 0;
else
return 1;
}
int e(int p,int q)
{
if(p==q)
return 1;
else
return 0;
}
void main()
{
int p,q;
printf(请输入命题P,Q的真值:(真为1,假为0));
scanf(%d%d,p,q);
printf(它们的合取的真值:);
printf(%d\n,b(p,q));
printf(它们的析取的真值:);
printf(%d\n,c(p,q));
printf(它们的条件的真值:);
printf(%d\n,d(p,q));
printf(它们的双条件的真值:);
printf(%d\n,e(p,q));
}
实验二 关系闭包计算
1、实验目的
熟悉Warshall算法,掌握求关系的自反闭包、对称闭包和传递闭包的方法。
2、实验内容与要求
定义6 设R是A上的二元关系,R的自反(对称、传递)闭包是关系R1,则
① R1是自反的(对称的、传递的)
② R(R1
对任何自反的(对称的、传递的)关系R2,若R(R2,则R1(R2。
R的自反、对称和传递闭包分别记为r(R)、s(R)和t(R)。
定理1 令R(A(A,则
① r(R)=R∪IA
② s(R)=R∪R-1
③ t(R)=R∪R2∪R3…
Warshall算法:设R是n个元素集合上的二元关系,M是R的关系矩阵;
置新矩阵A:=M
置i:=1;
for j=1 to n do
if A[j,i]=1 then do
for k=1 to n do
A[j,k]:=A[j,k]+A[i,k]
i=i+1;
if i=n then to (3)
else stop
本实验要求从键盘输入一个关系的关系矩阵,计算其自反闭包、对称闭包和传递闭包,计算传递闭包时使用Warshall算法。用C语言或MATLAB实现。
#includestdio.h
#define n 3
void re(int r[n][n])
{
int i=0;
int j=0;
int a[n][n];
for(i=0;in;i++)
for(j=0;jn;j++)
a[i][j]=r[i][j];
for(i=0;in;i++)
a[i][i]=1;
for(i=0;in;i++)
{
for(j=0;
您可能关注的文档
- 汽车专业英语汇总.doc
- 污水处理培训教材.doc
- 汽车关键装配工序培训教材.doc
- 汽车制造工艺 期末题库.doc
- 汽车制造工艺学课后习题参考答案吉大第三版.doc
- 汽车制造工艺学习题答案4-7.docx
- 汽车发动机原理课后答案.doc
- 汽车动力匹配.doc
- 汽车发动机原理A-期末复习资料2013-2014.doc
- 汽车发动机常见故障诊断.doc
- 2025年(完整版)第二三部分答案-科研伦理与学术规范 .pdf
- 全国自考03709《马克思主义基本原理概论》考前综合模拟题(含答案).pdf
- 2025年(完整版)硬笔书法练习田字格模板-标准A4打印版 .pdf
- 2025年(完整版)硬笔书法练习田字格模板-标准A4打印版(1) .pdf
- 冬季施工方案交底.pptx
- 全国自考03709《马克思主义基本原理概论》全真模拟题(含答案).pdf
- 新课改下的初中语文教学情感教育分析.pptx
- 2025年(完整版)病原微生物第9章球菌习题与答案.pdf
- 2025年(完整版)监控系统施工方案(最详细) .pdf
- 2025年(完整版)项目对赌协议(模板) .pdf
文档评论(0)